基于近鄰傳播的文本數據流聚類算法
【技術領域】
[0001] 本發(fā)明涉及一種基于近鄰傳播的文本數據流聚類算法。
【背景技術】
[0002] 隨著大數據時代的到來,網絡上產生了大量非結構化數據。面對這些實時產生、 數據量龐大、結構復雜的非結構化數據,人們迫切需要從中提取有價值的信息和知識。文 本數據流聚類技術是分析這些非結構化數據的常用方法,它在新聞過濾、話題檢測及跟蹤 (TDT)、用戶特征推薦等方面取得了很好的應用效果,迅速成為當前的研宄熱點。由于文本 數據具有高維稀疏特征,如何提高聚類算法的效率和準確率至關重要。2005年Shi Zhong 提出OSKM算法,該算法是k-means算法的擴展,其將不斷流入的數據流分成小份,每一份都 可以在內存中高效地得到處理。隨后,在這些數據上進行k-means迭代,得到聚類結果。
[0003] 該算法還有以下缺點:每次聚類都需要預先確定聚類個數,不能隨著類別的變 化對聚類個數進行變化。當前有研宄將語義平滑模型擴展到文本數據流中。但基于語義 的方法要花費很多的人力建立語料庫,算法的時間、空間復雜度較高。也有研宄提出一種 CluStream算法,該方法引入衰減函數,給予每篇文檔權重,權重隨時間進行衰減。算法對類 球形簇能取得較好的聚類結果,但較難聚成任意形狀的簇。還有研宄提出一種HPStream算 法,該算法采用高維投影技術選擇子空間進行聚類,同時使用衰減函數表示演化信息,但先 驗參數一一平均聚類維數難以確定。以上的改進研宄在一定程度上適應了流式聚類等問題 但在聚類結果的精確度和魯棒性方面仍然未得到很好地解決,需要進一步的改進完善。
【發(fā)明內容】
[0004] 本發(fā)明為了克服現有技術存在的不足之處,提出一種基于近鄰傳播的文本數據流 聚類算法,以期不需要預先指定聚類個數,就能提高算法的準確率和魯棒性,從而滿足解決 實際問題的需要。
[0005] 本發(fā)明為解決技術問題采用如下技術方案:
[0006] 本發(fā)明一種基于近鄰傳播的文本數據流聚類算法的特點是按如下步驟進行:
[0007] 步驟1、對所述文本數據集進行降維處理,獲得相應的文本向量集;
[0008] 步驟1. 1、利用TF-IDF法對所述文本數據集進行處理,獲得所述文本數據集中的 每個關鍵字和其頻率的對應關系,記為< key, value〉;
[0009] 步驟I. 2、對所述文本數據集按照字典順序進行排序,并根據所述排序建立索引; [0010] 步驟1. 3、將所述索引與所述關鍵字建立對應關系,從而使得每個關鍵字和其 頻率的對應關系< key, value >轉換為每個索引與其頻率的對應關系,記為文本向量集 < index,value > ;
[0011] 步驟2、獲得所有時刻的聚類中心:
[0012] 步驟2. 1定義時刻t、最大時刻1:_;并初始化t = 0 ;
[0013] 步驟2. 2、在t時刻從文本向量集< index, value >中獲取η文本向量, 記為#)=[<),對蚪)丨;<0表示t時刻的第i個文本向量;并有 ,V(/, =< index^.valiie)^ > ; I < / < /?;
[0014] 步驟2. 3、將所述t時刻的η個文本向量Νω的權重記為 胃⑴,FiVf ,…,胃廣…,)^#};奶#表示t時刻的第i個文本向量TVf1的權重; 并初始化_^=1;
[0015] 步驟2. 4、利用式(1)獲得t時刻的第i個文本向量ivf1與第j個文本向量#P的 歸一化的余弦相似度cos (t) (i,j),1彡j彡η :
[0016] cosi,](i,j) = (I)
[0017] 步驟2. 5、利用式(2)獲得t時刻的第i個文本向量TVf1與第j個文本向量Af的 相似度矩陣S(t) (i,j):
【主權項】
1. 一種基于近鄰傳播的文本數據流聚類算法,其特征是按如下步驟進行: 步驟1、對所述文本數據集進行降維處理,獲得相應的文本向量集; 步驟1. 1、利用TF-IDF法對所述文本數據集進行處理,獲得所述文本數據集中的每個 關鍵字和其頻率的對應關系,記為<key,value〉; 步驟1. 2、對所述文本數據集按照字典順序進行排序,并根據所述排序建立索引; 步驟1.3、將所述索引與所述關鍵字建立對應關系,從而使得每個關鍵字和其頻 率的對應關系<key,value>轉換為每個索引與其頻率的對應關系,記為文本向量集 <index,value> ; 步驟2、獲得所有時刻的聚類中心: 步驟2. 1定義時刻t、最大時刻1:_;并初始化t= 0 ; 步驟2. 2、在t時刻從文本向量集<index,value>中獲取n文本向量,記 為
;iVp表示t時刻的第i個文本向量;并有
步驟2. 3、將所述t時刻的n個文本向量N(t)的權重記為
表示t時刻的第i個文本向量丨的權重; 并初始化_,(/)=1; 步驟2. 4、利用式(1)獲得t時刻的第i個文本向量iVf1與第j個文本向量的歸一 化的余弦相似度cos(t) (i,j),1彡j彡n
步驟2. 5、利用式(2)獲得t時刻的第i個文本向量iV^與第j個文本向量A/f的相似 度矩陣S(t) (i,j):
式(2)中,s(t)為t時刻的參數,表示當i辛j時所獲得的t時刻的所有相似度矩陣S(t) (i,j)的中值的一半; 步驟2.6、將所述〖時刻的參數^)賦值給八?算法中第1個參考度/^,采用八? 算法對所述t時刻的n個文本向量N(t)進行聚類,獲得t時刻的mt個聚類中心,記為
表示t時刻的第vt個聚類中心;并初始化=1 + /; Y表示吸引因子;YG [〇, 1] ;1彡mt<n; 步驟2. 7、將t+1賦值給t;并判斷t= 1:_是否成立,若成立,則執(zhí)行步 驟2. 11 ;否則從所述文本向量集<index,value>中獲得t時刻的n文本向量
步驟2. 8、將所述t-1時刻的mg個聚類中心C(w)加入到所述t時刻的n文本向量N(t) 中,從而獲得更新的n+niH個文本向量
步驟2. 9、將所述更新的n+mH個文本向量N(t)'作為所述t時刻的文本向量N(t),并返 回步驟2. 3-步驟2. 6順序執(zhí)行;從而獲得t時刻的mt個聚類中心C(t); 步驟2. 10;返回步2. 7順序執(zhí)行; 步驟2. 11 ;從而獲得所有時刻的聚類中心;并完成所述聚類算法。
2.根據權利要求1所述的基于近鄰傳播的文本數據流聚類算法,其特征是,所述步驟 2. 4是按如下過程獲得t時刻的第i個文本向量與第j個文本向量的歸一化的余弦 相似度cos(t) (i,j): 步驟2. 4. 1、將t時刻的第i個文本向量Af>的索引和其對應的頻率分別 存入數組.
中,將t時刻的第j個文本向量的索引/mfe#和其對應的頻 率分別存入數組
中; 步驟2. 4. 2、定義變量ia、jb和sum;并初始化ia= 0 ;jb= 0;sum= 0 步驟2. 4. 3、判斷
是否成立,若成立,則執(zhí)行步 驟2. 4. 4 ;否則,執(zhí)行步驟2. 4. 10 ; 步驟2. 4. 4、判斷
是否成立,若成立,則執(zhí)行步驟2. 4. 5 ;否則執(zhí)行步 驟 2. 4. 7 ; 步驟2. 4. 5、將
I的值賦值給sum; 步驟2. 4. 6、將ia+1賦值給ia;將jb+1賦值給jb;并返回步驟2. 4. 3執(zhí)行; 步驟2. 4. 7、判斷
是否成立,若成立,則執(zhí)行步驟2. 4. 8 ;否則執(zhí)行步 驟 2. 4. 9 ; 步驟2. 4. 8、將jb+1賦值給jb;并返回步驟2. 4. 3執(zhí)行; 步驟2. 4. 9、將ia+1賦值給ia;并返回步驟2. 4. 3執(zhí)行; 步驟 2. 4. 10、將sum賦值給cos(t) (i,j)。
【專利摘要】本發(fā)明公開了一種基于近鄰傳播的文本數據流聚類算法,其特征是按如下步驟進行:1對文本數據集進行降維處理,獲得相應的文本向量集;2獲得所有時刻的聚類中心,并完成聚類算法。本發(fā)明不需要預先指定聚類個數,就能提高算法的準確率和魯棒性,從而滿足解決實際問題的需要。
【IPC分類】G06F17-30
【公開號】CN104778280
【申請?zhí)枴緾N201510221327
【發(fā)明人】倪麗萍, 李一鳴, 倪志偉, 伍章俊
【申請人】合肥工業(yè)大學
【公開日】2015年7月15日
【申請日】2015年5月4日