一種基于多種信息融合的微博信息過濾方法
【專利摘要】本發(fā)明提出一種基于多種信息融合的微博信息過濾方法,屬于智能信息處理【技術領域】。方法包括:步驟1,構建分布式爬蟲,抓取微博數(shù)據(jù);步驟2,對微博數(shù)據(jù)進行預處理;步驟3,對微博數(shù)據(jù)進行中文分詞,去除停用詞,獲取分詞結果,得到詞集合VOC;步驟4,從微博內(nèi)容角度提取特征;步驟5,從用戶角度提取微博特征;步驟6,從傳播路徑提取特征;步驟7,構建分類模型,篩選非垃圾微博;本發(fā)明通過結合微博信息去重和分類學習算法去除微博垃圾信息的雙重過程,實現(xiàn)微博信息過濾,既過濾掉重復微博信息,又過濾掉垃圾微博信息。
【專利說明】一種基于多種信息融合的微博信息過濾方法
【技術領域】
[0001]本發(fā)明屬于智能信息處理【技術領域】,具體涉及一種基于多種信息融合的微博信息過濾方法。
【背景技術】
[0002]微博,作為一種新的傳播載體,包含了大量用戶針對人物、事件等的微博信息,因此在網(wǎng)絡輿情發(fā)起和傳播中起著重要作用,并成為網(wǎng)絡輿情瀏覽和分析的重要數(shù)據(jù)源之一。但是,在微博空間,便捷的“轉(zhuǎn)發(fā)”操作以及快速增長的“網(wǎng)絡水軍”,使得大量相同或相似的數(shù)據(jù)在微博空間內(nèi)迅速傳播。同時,噪音微博作為一種宣傳手段也迅猛蔓延到微博空間的各個角落。對于網(wǎng)絡輿情分析而言,噪音微博通常沒有意義,相同或相似的微博也只具有一定的統(tǒng)計意義。對于微博用戶的瀏覽而言,用戶會發(fā)現(xiàn)自己看到的微博數(shù)據(jù)很多,但真正得到的有意義的信息量卻有限,浪費了時間和精力。同時,這類微博的存在也嚴重影響到了信息檢索的準確性,大大降低了分析的可信性。因此,對微博客文本信息進行過濾提純,對于減輕用戶瀏覽理解和系統(tǒng)存儲的負擔,提高文本內(nèi)容檢索、網(wǎng)絡輿情分析的效率等都具有十分重要的意義。
[0003]雖然微博的研究目前已成為一個熱點,但總體上,針對微博的文本過濾技術還處于起步階段。考慮到微博的傳播性、用戶相關性、以及其具有的時間相關性等特點,目前已有的多種針對文本內(nèi)容本身的信息過濾方法已不足以滿足微博信息過濾的要求。
【發(fā)明內(nèi)容】
[0004]本發(fā)明在分析了中文微博客文本流中噪音微博和相似微博特點的基礎上,提出了針對微博文本流的噪音判別和內(nèi)容相似性雙重檢測的過濾方法,具體是指:一種基于多種信息融合的微博信息過濾方法。
[0005]具體步驟為:
[0006]步驟一:構建分布式爬蟲,抓取微博數(shù)據(jù)。
[0007]步驟二:對微博數(shù)據(jù)進行預處理。
[0008]采用規(guī)則集對微博數(shù)據(jù)進行預處理;預處理包括去噪和去重,具體指去除微博數(shù)據(jù)中文本長度小于長度閾值L的數(shù)據(jù)、重復的微博數(shù)據(jù)、廣告內(nèi)容和自動回復數(shù)據(jù),其中一條微博數(shù)據(jù)包括微博正文和評論中的數(shù)據(jù)。
[0009]步驟三、對微博數(shù)據(jù)進行中文分詞,去除停用詞,獲取分詞結果,得到詞集合V0C。
[0010]步驟四:從微博內(nèi)容角度提取特征。微博特征包括:微博文本n-gram、通過LDA對微博文本聚類提取的主題、微博文本中是否包含鏈接和微博文本中是否包含聯(lián)系方式。
[0011]步驟五:從用戶角度提取微博特征。
[0012]微博特征包括:用戶名、用戶關注數(shù)、粉絲數(shù)、用戶平均轉(zhuǎn)發(fā)和回復次數(shù)、用戶注冊時間、用戶平均上線間隔、用戶每次上線發(fā)表文章數(shù)、用戶性別、所在地、個人說明和標簽。
[0013]步驟六:從傳播路徑提取特征。
[0014]微博特征包括:評價傳播層次、平均每層轉(zhuǎn)發(fā)次數(shù)和傳播衰減指數(shù)。
[0015]步驟七:構建分類模型,篩選非垃圾微博;
[0016]以步驟四,步驟五和步驟六得到的微博特征為基礎,構建分類模型,篩選分類,過濾掉微博垃圾。
[0017]步驟701:從微博內(nèi)容角度,微博用戶角度和微博傳播路徑3個角度選取若干特征,分別為樣本數(shù)據(jù)和測試數(shù)據(jù),將所有特征進行離散化和歸一化處理。
[0018]步驟702:運用分類器模型,得到最優(yōu)模型參數(shù);
[0019]步驟703:交叉訓練最優(yōu)模型參數(shù),使得模型針對樣本數(shù)據(jù)分類具有最高精度。
[0020]步驟704:將測試數(shù)據(jù)帶入分類器模型進行分類。
[0021 ] 本發(fā)明的優(yōu)點和積極效果在于:
[0022]I) 一種基于多種信息融合的微博信息過濾方法,通過對微博數(shù)據(jù)實時抓取后再進行過濾,實現(xiàn)了保留高質(zhì)量微博數(shù)據(jù)的目標。
[0023]2) 一種基于多種信息融合的微博信息過濾方法,通過結合微博信息去重和分類學習算法去除微博垃圾信息的雙重過程,實現(xiàn)微博信息過濾,既過濾掉重復微博信息,又過濾掉垃圾微博信息。
[0024]3) 一種基于多種信息融合的微博信息過濾方法,將微博傳播路徑特征引入分類訓練模型,使垃圾微博識別準確度更高。
[0025]4) 一種基于多種信息融合的微博信息過濾方法,通過URL、字符率、高頻詞等特征判別,過濾噪音微博;通過分段過濾和索引過濾的雙重內(nèi)容過濾,檢測和剔除相似微博。該方法能有效的對海量中文微博數(shù)據(jù)進行提純,準確地過濾掉其中的噪音微博和相似微博。
[0026]說明書附圖
[0027]圖1是本發(fā)明一種基于多種信息融合的微博信息過濾方法總體流程圖。
[0028]圖2是本發(fā)明一種基于多種信息融合的微博信息過濾方法的數(shù)據(jù)預處理過程。
[0029]圖3是本發(fā)明中關于中文分詞的流程圖。
[0030]圖4是本發(fā)明實施例中普通熱門信息的傳播路徑示例圖。
[0031 ] 圖5是本發(fā)明實施例中垃圾熱門信息的傳播路徑示例圖。
【具體實施方式】
[0032]下面將結合附圖和具體實施例對本發(fā)明作出進一步的詳細說明。
[0033]一種基于多種信息融合的微博信息過濾方法,具體涉及一種自動計算微博上垃圾息的方法。
[0034]根據(jù)所過濾信息的范圍,人工定義制作評估數(shù)據(jù)集。不同的任務框架下對垃圾信息的定義不同,同樣,本發(fā)明并不是針對某一個任務,如分類或者聚類,或者情感分析的上層應用,而是通用的,從邏輯上判斷信息是否無用。
[0035]垃圾信息的定義:
[0036]I)重復性較強:有很多和它類似的微博;
[0037]2)轉(zhuǎn)發(fā)回復數(shù)較少:對其他人來說沒有價值;
[0038]3)不是出于興趣轉(zhuǎn)發(fā):如水軍轉(zhuǎn)發(fā)和回復;
[0039]4)微博內(nèi)容蘊含的價值信息較少:如表情、一個字回復等。
[0040]同時滿足以上幾條中兩條及以上的微博,定義為垃圾信息。
[0041]本發(fā)明基于不同的信息源,分別從微博內(nèi)容、用戶信息、傳播路徑三個角度計算微博的價值信息,藉此發(fā)現(xiàn)微博的垃圾度。
[0042]從用戶角度計算微博的垃圾程度:微博上充斥著大量水軍,轉(zhuǎn)發(fā)大量廣告貼產(chǎn)生垃圾信息,而水軍公司為了方便,往往在注冊時使用用戶名后綴加上數(shù)字。同時,水軍的行為往往具有聯(lián)動性,如集中時間段的登錄行為,一段時間的“爆發(fā)”或者“消亡”,這些都不太符合常人的行為習慣。因此,從這些因素中可以分辨出來一部分水軍用戶。
[0043]從微博內(nèi)容本身計算微博的垃圾程度:廣告微博的內(nèi)容往往具有一些明顯的特征,如有“購買”等詞,帶url鏈接,有聯(lián)系人和聯(lián)系方式等,通過內(nèi)容判斷得到一部分信息。
[0044]從微博傳播路徑中計算微博的垃圾程度:正常的微博傳播和垃圾的微博傳播傳具有明顯的不同;如垃圾的微博轉(zhuǎn)發(fā)量衰減指數(shù)、熱門話題的扁平傳播,缺乏區(qū)域影響力點、傳播速度的集中性等。
[0045]綜合以上幾種信息源,建立基于特征的分類模型,預估微博的垃圾程度。
[0046]如附圖1所示,具體操作步驟如下:
[0047]步驟一:構建分布式爬蟲,抓取微博數(shù)據(jù)。
[0048]主要通過新浪api抓取新浪微博數(shù)據(jù)。
[0049]步驟二:對微博數(shù)據(jù)進行預處理。
[0050]預處理包括去噪和去重;對微博數(shù)據(jù)分別通過如附圖2所示的具體步驟實施:
[0051]步驟201:去除微博數(shù)據(jù)中文本長度小于長度閾值L的數(shù)據(jù)。
[0052]具體采用比較大小的程序自動過濾微博數(shù)據(jù)中文本長度小于長度閾值L的微博數(shù)據(jù)。長度閾值L的值根據(jù)經(jīng)驗或具體領域視情況而定,本發(fā)明L值選取5。
[0053]步驟202:去除重復的微博數(shù)據(jù)。
[0054]利用Bloom filter算法或Simhash算法對微博數(shù)據(jù)中的重復數(shù)據(jù)進行過濾。
[0055]步驟203:去除微博數(shù)據(jù)中包含的廣告內(nèi)容。
[0056]設計與廣告詞匹配的正則表達式和匹配規(guī)則庫,去除微博文本中包含的廣告內(nèi)容。
[0057]廣告詞匹配規(guī)則庫中包含了常用的廣告詞;編寫正則表達式用于匹配廣告詞匹配規(guī)則庫中的任意詞,正則表達式是根據(jù)具體模板而定的。
[0058]步驟204:去除基于網(wǎng)絡特定回復模板的自動回復數(shù)據(jù)。
[0059]基于網(wǎng)絡特定回復模板設計與網(wǎng)絡自動回復內(nèi)容匹配的正則表達式,去除微博數(shù)據(jù)中基于網(wǎng)絡特定回復模板的自動回復內(nèi)容。
[0060]步驟205:重復步驟201,再次計算微博數(shù)據(jù)中文本的長度,并去除不滿足長度規(guī)則的微博數(shù)據(jù),進行二次清洗。
[0061]步驟三、對微博數(shù)據(jù)進行中文分詞,去除停用詞,獲取分詞結果,得到詞集合V0C。
[0062]具體的分詞過程如附圖3所示:
[0063]步驟301:對微博數(shù)據(jù)進行中文分詞同時去除停用詞;
[0064]調(diào)用中文分詞器對微博數(shù)據(jù)進行分詞,同時去除停用詞;
[0065]步驟302:對微博數(shù)據(jù)中的英文詞進行形態(tài)變換,轉(zhuǎn)換到統(tǒng)一形式;
[0066]對步驟301處理之后的分詞結果中包含的英文詞進行形態(tài)變換,轉(zhuǎn)換到統(tǒng)一形式;包括將時態(tài)統(tǒng)一為一般現(xiàn)在時,將語態(tài)統(tǒng)一為主動語態(tài)。
[0067]步驟303:計算每個詞的文檔頻率df和詞頻tf ;主要是對步驟302得到的分詞結果中的每個詞,計算其文檔頻率df和詞頻tf ;
[0068]文檔頻率df:是指出現(xiàn)過該詞的文件個數(shù)除以文件集中的文件總數(shù);
[0069]詞頻tf:是指該詞在文件中出現(xiàn)的次數(shù)除以該文件的總詞語數(shù)。
[0070]步驟304:計算每個詞的特征強度ft ;針對步驟302得到的分詞結果中的每個詞,計算其特征強度ft,特征強度ft定義為:
[0071]ft = l?g(.,5 , +1)
idf + I
[0072]其中idf代表逆文檔頻率,是文檔頻率df的倒數(shù);
[0073]步驟305:提取特征強度ft大于特征強度閾值T的詞,構成詞集合V0C。
[0074]根據(jù)步驟304計算所得的特征強度ft,篩選特征強度ft大于強度閾值T的詞,將微博數(shù)據(jù)中所有的特征強度ft大于特征強度閾值T的詞組成詞集合V0C,特征強度閾值T根據(jù)具體適用場合而定。
[0075]步驟四:從微博內(nèi)容角度提取特征。
[0076]微博特征包括:微博文本n-gram、通過LDA對微博文本聚類提取的主題、微博文本中是否包含鏈接和微博文本中是否包含聯(lián)系方式。
[0077]其中微博文本中是否包含鏈接和微博文本中是否包含聯(lián)系方式的特征提取通過正則表達式匹配得到;
[0078]通過LDA對微博文本聚類提取的主題的特征提取的具體實施步驟如下:
[0079]I)對詞集合VOC中的單詞做統(tǒng)計,得到文檔d中單詞Wi出現(xiàn)的頻率,設為P(wi I d) ο
[0080]詞集合VOC中的每一條微博數(shù)據(jù)設為一個文檔d,對于任一時間區(qū)間per1d,其區(qū)間內(nèi)η個文檔d組成文檔集合D ;設每一個文檔d均含有m個單詞;每條微博數(shù)據(jù)進過中文分詞后的單詞序列設為< wl, w2,..., wm >, wi表示第i個單詞。
[0081]對每個時間區(qū)間內(nèi)的所有文檔建立文檔-主題模型,得到主題集合T并提取主題,所述的文檔-主題模型選取基于Gibbs sampling的LDA主題模型,在每個時間區(qū)間內(nèi)對當時的文檔集合D進行聚類,挖掘到隱含的主題集合T設為< ^ t2,...,tk >,提取的主題為topic ;本實施例選取k個topic, ti表示第i個topic。
[0082]2)為詞集合VOC中的每個單詞wi,隨機指定一個主題topic,作為初始主題。
[0083]3)通過Gibbs sampling公式,重新采樣每個單詞wi的所屬主題topic,并在詞集合VOC中更新直到Gibbs sampling收斂。
[0084]4)應用頻率p(wi |d),通過LDA聚類得到文檔對應主題的概率矩陣A,A是一個n*k的矩陣,其中元素au表示第i個文檔d對應第j個主題topic的概率。
[0085]步驟五:從用戶角度提取微博特征。
[0086]微博特征包括:用戶名、用戶關注數(shù)、粉絲數(shù)、用戶平均轉(zhuǎn)發(fā)和回復次數(shù)、用戶注冊時間、用戶平均上線間隔、用戶每次上線發(fā)表文章數(shù)、用戶性別、所在地、個人說明和標簽。
[0087]從用戶角度提取的微博特征在一定程度上也能判別垃圾微博數(shù)據(jù)。例如,通過觀察發(fā)現(xiàn),現(xiàn)代公司的廣告帖轉(zhuǎn)發(fā)中用戶名普遍為“中文+長串數(shù)字”,且微博內(nèi)容大多與廣告相關,因此認定為“水軍”廣告轉(zhuǎn)發(fā),不具備價值,是需要過濾的垃圾信息。
[0088]步驟六:從傳播路徑提取微博特征。
[0089]微博特征包括:評價傳播層次、平均每層轉(zhuǎn)發(fā)次數(shù)和傳播衰減指數(shù);
[0090]其中評價傳播層次的特征提取是通過統(tǒng)計被轉(zhuǎn)發(fā)的層次數(shù)和每層被轉(zhuǎn)發(fā)的次數(shù)得到;
[0091]平均每層轉(zhuǎn)發(fā)次數(shù)的特征提取通過每條微博數(shù)據(jù)下方的轉(zhuǎn)發(fā)數(shù)得到;
[0092]傳播衰減指數(shù)的特征提取通過如下公式得到:
[0093]第k’層傳播衰減指數(shù)=(傳播到第k’層的微博數(shù)量-傳播到第k’ +1層的微博數(shù)量)/傳播到第k’層的微博數(shù)量;
[0094]一般來說,垃圾熱門信息的傳播路徑和普通熱門信息的傳播路徑不一樣,普通熱門信息的傳播路徑選取奔馳汽車內(nèi)飾致癌的信息傳播圖,如附圖4所示,傳播特點是:局部熱點,多層次,衰減緩慢。
[0095]而垃圾熱門信息的傳播路徑選取如現(xiàn)代公司新車上市微博的一個轉(zhuǎn)發(fā)傳播路線圖,如附圖5所示,傳播特點是:層次較少、且每層的轉(zhuǎn)發(fā)數(shù)過于近似。
[0096]步驟七:構建分類模型,篩選非垃圾微博;
[0097]以步驟四,步驟五和步驟六得到的微博特征為基礎,建立分類模型,采用決策樹算法、K-臨近算法或SVM(支持向量機)算法,對微博數(shù)據(jù)進行分類,從而將正常微博數(shù)據(jù)與垃圾微博數(shù)據(jù)區(qū)別出來,過濾掉垃圾微博數(shù)據(jù);具體過程如下:
[0098]步驟701:從微博內(nèi)容角度,微博用戶角度和微博傳播路徑3個角度選取若干特征,分別為樣本數(shù)據(jù)和測試數(shù)據(jù),將所有特征進行離散化和歸一化處理。
[0099]本實施例中選取特征如下:
[0100]1.從微博內(nèi)容角度通過步驟四提取的特征包括:
[0101]微博文本Ι-gram、微博文本2-gram、微博文檔d對應每個主題topic的概率分別作為一個特征、微博文本中是否包含鏈接和微博文本中是否包含聯(lián)系方式共計4+k個特征;
[0102]對以上特征進行離散化和歸一化處理,具體如下:
[0103]a)對于特征“微博文本Ι-gram”:設所有微博數(shù)據(jù)的此特征值組成集合FealJiFeal根據(jù)數(shù)值大小進行k-means聚類,聚類類別值范圍為3-10 ;能實現(xiàn)聚類的方法,如層次聚類,som聚類方法均落入本發(fā)明的保護范圍之內(nèi)。
[0104]本實施例中優(yōu)選聚為9類,將特征離散為9個特征< Fl1, Fl2,...,Fl9 >,對于任意一條微博數(shù)據(jù),若其特征“微博文本Ι-gram”的值落在第i’類(i’ = 1,2,…,9),則將特征標記為Flr = I ;否則Flr = O。
[0105]b)對于特征“微博文本2-gram”的處理與對于特征“微博文本Ι-gram”的處理類似,將特征離散為9個特征< F2” F22,...,F(xiàn)29 > ;
[0106]若其特征“微博文本2-gram”的值落在第i’類(i’ = I, 2,…,9),則將特征標記為 F2r = I ;否則 F2r = O。
[0107]c)對于特征“微博文檔d對應每個主題topic的概率”,將特征離散設為k個特征<F31,F32,...,F3k>, (j = 1,2, - ,k)根據(jù)步驟四得到的文檔對應主題的概率矩陣A,對任意一條微博數(shù)據(jù),其第i個文檔d對應k個主題topic的概率為< an, ai2,...,aik >,對an, ai2,...,aik從大到小進行排序,若元素au落在前Top名,本實施例中Top = 4,則F3」=1,否則F3」=O。
[0108]d)對于特征“是否包含鏈接”,將特征離散設為9個特征< F4,F(xiàn)42,...,F(xiàn)49 >,若包含鏈接,則Ft = I ;否則Ft = O。
[0109]e)對于特征“是否包含聯(lián)系方式”,將特征離散設為9個特征< FS1, F52,...,F(xiàn)59>,若包含聯(lián)系方式,則FSi, = I ;否則F5r = O。
[0110]2.從微博用戶角度通過步驟五提取的特征包括:用戶關注數(shù)、粉絲數(shù)、用戶平均轉(zhuǎn)發(fā)數(shù)、用戶平均回復次數(shù)、用戶注冊時間、用戶平均上線間隔、用戶每次上線發(fā)表文章數(shù)、用戶性別、所在地、個人說明字數(shù)長度和標簽個數(shù);
[0111]對以上特征進行離散化和歸一化處理的具體步驟如下:
[0112]al)對于特征“用戶關注數(shù)”,將特征離散為9個特征CFe1Je2,...,F(xiàn)69>,對于任意一條微博數(shù)據(jù),若其特征“用戶關注數(shù)”的值落在第i’類α’ = 1,2,…,9),則將特征標記為F6r = I ;否則F6r = O。
[0113]bl)對于特征“粉絲數(shù)”,將特征離散為9個特征< F7i,F(xiàn)72,...,F(xiàn)79 >,將特征“用戶平均轉(zhuǎn)發(fā)數(shù)”離散為9個特征< FSpFS2,...,FS9 >,將特征“用戶平均回復次數(shù)”離散為9個特征< F9” F92,...,F(xiàn)99 >、將特征“用戶注冊時間”離散為9個特征< FlO1, FlO2,FlO9 >,將特征“用戶平均上線間隔”離散為9個特征< Fll1, Fll2,...,F(xiàn)ll9 >,將特征“用戶每次上線發(fā)表文章數(shù)”離散為9個特征<>,將特征“個人說明字數(shù)長度”離散為9個特征
<F15” F152,...,F(xiàn)159 >,將特征“標簽個數(shù)”離散為 9 個特征< F16” F162,...,F(xiàn)169 >,處理與特征“用戶關注數(shù)”類似,均對于任意一條微博數(shù)據(jù),若其特征“粉絲數(shù)”、“用戶平均轉(zhuǎn)發(fā)數(shù)”、“用戶平均回復次數(shù)”、“用戶注冊時間”、“用戶平均上線間隔”、“用戶每次上線發(fā)表文章數(shù)”、“個人說明字數(shù)長度”、“標簽個數(shù)”的值落在第i’類α’ = 1,2,…,9),則將特征標記分別為 F7r = I ;F8r = I ;F9r = I ;F10r = I ;Fllr = I ;F12r = I ;F15r = I ;F16r =I ;F7r = I ;否則為 0。
[0114]cl)對于特征“用戶性別”,設為F13,若用戶性別為男,則F13 = I ;否則用戶性別為女,則F13 = O。
[0115]dl)對于特征“所在地”,對所有所在地進行編號,設不同所在地總數(shù)為P,則將該特征離散為P個特征< FHpFH2,...,F(xiàn)14p>,對于任意一條微博數(shù)據(jù),若其特征“所在地”對應的編號為i,則FHi = I ;否則FHi = O。
[0116]3.從微博傳播特征角度通過步驟六提取的特征包括:評價傳播層次、平均每層轉(zhuǎn)發(fā)次數(shù)和傳播衰減指數(shù)。
[0117]對于特征“評價傳播層次”和“平均每層轉(zhuǎn)發(fā)次數(shù)”的處理與特征“用戶關注數(shù)”類似:將特征“評價傳播層次”和“平均每層轉(zhuǎn)發(fā)次數(shù)”分別離散為9個特征,設為
<F17” F172,...,F(xiàn)179 >和< F18” F182,...,F(xiàn)189 >,對于任意一條微博數(shù)據(jù),若其特征“評價傳播層次”和“平均每層轉(zhuǎn)發(fā)次數(shù)”的值落在第i’類(i’ = 1,2,…,9),則將特征標記為 F17r = I 和 F18r = I ;否則 F17r = O 和 F18r = O。
[0118]對于特征“傳播衰減指數(shù)”,設第k’層傳播的衰減指數(shù)為F19k,,其處理與特征“用戶關注數(shù)”類似:將第k’層的特征離散為9個特征,設為< F19,’” F19k’2,F(xiàn)19k,9 >,對于任意一條微博數(shù)據(jù),若其特征“第k’層傳播衰減指數(shù)”的值落在第i"類a" =k’i,k’2^..,k’ 9),則將特征標記為FWi,, = I ;否則FWi,, = O。
[0119]步驟701對從微博內(nèi)容角度,微博用戶角度和微博傳播路徑3個角度選取的若干特征離散化和歸一化處理后,得到的是關于特征值為I和O的向量值;
[0120]步驟702:運用分類器模型,得到最優(yōu)模型參數(shù)。
[0121]分類器模型優(yōu)選svm分類器模型;基于高斯徑向基函數(shù)(Radial BasisFunct1n)作為核函數(shù):
[0122]^(|| X - xc ||) = exp j- ^ ^ 2 丨丨 j
[0123]c為懲罰因子,xc為核函數(shù)中心,X是需要判斷的樣本點,σ為函數(shù)的寬度參數(shù);
[0124]將步驟701得到的關于特征值為I和O的向量值帶入SVM分類器模型,并經(jīng)過高斯徑向基函數(shù)運算后得到最優(yōu)模型參數(shù)C和O。
[0125]現(xiàn)有技術中能實現(xiàn)分類功能的分類器模型均在本發(fā)明的保護范圍之內(nèi)。
[0126]步驟703:交叉訓練最優(yōu)模型參數(shù)c和σ,使得模型針對樣本數(shù)據(jù)分類具有最高精度。
[0127]運用現(xiàn)有的算法庫對步驟702得到的最優(yōu)模型參數(shù)c和σ進行交叉訓練,使得模型針對樣本數(shù)據(jù)分類具有最高精度。
[0128]步驟704:將測試數(shù)據(jù)帶入分類器模型進行分類。
[0129]對于步驟701中任意一條微博,按照步驟4,步驟5,步驟6提取的測試特征,代入703得到的具有最優(yōu)模型參數(shù)c和σ的分類器模型,得出分類器判別結果,從而判定正常微博與垃圾微博。
【權利要求】
1.一種基于多種信息融合的微博信息過濾方法,其特征在于,包括如下步驟: 步驟一:構建分布式爬蟲,抓取微博數(shù)據(jù); 步驟二:對微博數(shù)據(jù)進行預處理; 采用規(guī)則集對微博數(shù)據(jù)進行預處理;預處理包括去噪和去重,具體指去除微博數(shù)據(jù)中文本長度小于長度閾值L的數(shù)據(jù)、重復的微博數(shù)據(jù)、廣告內(nèi)容和自動回復數(shù)據(jù),其中一條微博數(shù)據(jù)包括微博正文和評論中的數(shù)據(jù); 步驟三、對微博數(shù)據(jù)進行中文分詞,去除停用詞,獲取分詞結果,得到詞集合VOC ; 步驟四:從微博內(nèi)容角度提取特征; 微博特征包括:微博文本n-gram、通過LDA對微博文本聚類提取的主題、微博文本中是否包含鏈接和微博文本中是否包含聯(lián)系方式; 步驟五:從用戶角度提取微博特征; 微博特征包括:用戶名、用戶關注數(shù)、粉絲數(shù)、用戶平均轉(zhuǎn)發(fā)和回復次數(shù)、用戶注冊時間、用戶平均上線間隔、用戶每次上線發(fā)表文章數(shù)、用戶性別、所在地、個人說明和標簽;步驟六:從傳播路徑提取特征; 微博特征包括:評價傳播層次、平均每層轉(zhuǎn)發(fā)次數(shù)和傳播衰減指數(shù); 步驟七:構建分類模型,篩選非垃圾微博; 以步驟四,步驟五和步驟六得到的微博特征為基礎,構建分類模型,篩選分類,過濾掉微博垃圾;具體如下: 步驟701:從微博內(nèi)容角度,微博用戶角度和微博傳播路徑3個角度選取若干特征,分別為樣本數(shù)據(jù)和測試數(shù)據(jù),將所有特征進行離散化和歸一化處理; 步驟702:運用分類器模型,得到最優(yōu)模型參數(shù); 步驟703:交叉訓練最優(yōu)模型參數(shù),使得模型針對樣本數(shù)據(jù)分類具有最高精度; 步驟704:將測試數(shù)據(jù)帶入分類器模型進行分類。
2.根據(jù)權利要求1所述的一種基于多種信息融合的微博信息過濾方法,其特征在于,所述的步驟三具體如下: 步驟301:對微博數(shù)據(jù)進行中文分詞同時去除停用詞; 步驟302:對微博數(shù)據(jù)中的英文詞進行形態(tài)變換,轉(zhuǎn)換到統(tǒng)一形式;包括將時態(tài)統(tǒng)一為一般現(xiàn)在時,將語態(tài)統(tǒng)一為主動語態(tài); 步驟303:計算每個詞的文檔頻率df和詞頻tf ; 文檔頻率df:是指出現(xiàn)過該詞的文件個數(shù)除以文件集中的文件總數(shù); 詞頻tf:是指該詞在文件中出現(xiàn)的次數(shù)除以該文件的總詞語數(shù); 步驟304:計算每個詞的特征強度ft ;特征強度ft定義為: /i = log(—+ 1)
/(7/ +1 其中idf代表逆文檔頻率,是文檔頻率df的倒數(shù); 步驟305:提取特征強度ft大于特征強度閾值T的詞,構成詞集合V0C。
3.根據(jù)權利要求1所述的一種基于多種信息融合的微博信息過濾方法,其特征在于,所述的步驟四中,所述的微博文本中是否包含鏈接、微博文本中是否包含聯(lián)系方式,其特征提取均通過正則表達式匹配得到; 所述的通過LDA對微博文本聚類提取的主題,其特征提取的具體實施步驟如下: 1)對詞集合VOC中的單詞做統(tǒng)計,得到文檔d中單詞Wi出現(xiàn)的頻率,設為p(wid); 詞集合VOC中的每一條微博數(shù)據(jù)設為一個文檔d,對于任一時間區(qū)間per1d,其區(qū)間內(nèi)η個文檔d組成文檔集合D ;設每一個文檔d均含有m個單詞;每條微博數(shù)據(jù)進過中文分詞后的單詞序列設為< wl, w2,..., wm >, wi表示第i個單詞; 對每個時間區(qū)間內(nèi)的所有文檔建立文檔-主題模型,得到主題集合T并提取主題,所述的文檔-主題模型選取基于Gibbs sampling的LDA主題模型,在每個時間區(qū)間內(nèi)對當時的文檔集合D進行聚類,挖掘到隱含的主題集合T設為< ^ t2,...,tk >,提取的主題為topic ;選取 k 個 topic, ti 表不第 i 個 topic ; 2)為詞集合VOC中的每個單詞wi,隨機指定一個主題topic,作為初始主題; 3)通過Gibbssampling公式,重新采樣每個單詞wi的所屬主題topic,并在詞集合VOC中更新直到Gibbs sampling收斂; 4)應用頻率P(wi I d),通過LDA聚類得到文檔對應主題的概率矩陣A,A是一個n*k的矩陣,其中元素au表示第i個文檔d對應第j個主題topic的概率。
4.根據(jù)權利要求1所述的一種基于多種信息融合的微博信息過濾方法,其特征在于,所述的步驟六中: 所述的評價傳播層次的特征提取是通過統(tǒng)計被轉(zhuǎn)發(fā)的層次數(shù)和每層被轉(zhuǎn)發(fā)的次數(shù)得到; 所述的平均每層轉(zhuǎn)發(fā)次數(shù)的特征提取通過每條微博數(shù)據(jù)下方的轉(zhuǎn)發(fā)數(shù)得到; 所述的傳播衰減指數(shù)的特征提取通過如下公式得到: 第k’層傳播衰減指數(shù)=(傳播到第k’層的微博數(shù)量-傳播到第k’+l層的微博數(shù)量)/傳播到第k’層的微博數(shù)量。
5.根據(jù)權利要求1所述的一種基于多種信息融合的微博信息過濾方法,其特征在于,所述的步驟701中, 所述的從微博內(nèi)容角度通過步驟四提取的特征包括: 微博文本Ι-gram、微博文本2-gram、微博文檔d對應每個主題topic的概率分別作為一個特征、微博文本中是否包含鏈接和微博文本中是否包含聯(lián)系方式共計4+k個特征; 對以上特征進行離散化和歸一化處理,具體如下: a)對于特征“微博文本Ι-gram”:設所有微博數(shù)據(jù)的此特征值組成集合FealJfFeal根據(jù)數(shù)值大小進行k-means聚類,并將特征離散化,對于任意一條微博數(shù)據(jù),若其特征“微博文本Ι-gram”的值落在范圍內(nèi),則將特征標記為I ;否則為O ; b)對于特征“微博文本2-gram”,設所有微博數(shù)據(jù)的此特征值組成集合Fea2,對Fea2根據(jù)數(shù)值大小進行k-means聚類,并將特征離散化,對于任意一條微博數(shù)據(jù),若其特征“微博文本2-gram”的值落在范圍內(nèi),則將特征標記為I ;否則為O ; c)對于特征“微博文檔d對應每個主題topic的概率”,將特征離散設為k個特征,根據(jù)步驟四得到的文檔對應主題的概率矩陣A,對任意一條微博數(shù)據(jù),其第i個文檔d對應k個主題topic的概率為< an, ai2,...,aik >,對an, ai2,...,aik從大到小進行排序,若元素Bij落在前Top名,則將特征標記為I ;否則為O ; d)對于特征“是否包含鏈接”,將此特征離散化,若包含鏈接,則將特征標記為I;否則為O ; e)對于特征“是否包含聯(lián)系方式”,將此特征離散化,若包含聯(lián)系方式,則將特征標記為I ;否則為O ; 所述的從微博用戶角度通過步驟五提取的特征包括:用戶關注數(shù)、粉絲數(shù)、用戶平均轉(zhuǎn)發(fā)數(shù)、用戶平均回復次數(shù)、用戶注冊時間、用戶平均上線間隔、用戶每次上線發(fā)表文章數(shù)、用戶性別、所在地、個人說明字數(shù)長度和標簽個數(shù); 對以上特征進行離散化和歸一化處理的具體步驟如下: al)對于特征“用戶關注數(shù)”,“粉絲數(shù)”,“用戶平均轉(zhuǎn)發(fā)數(shù)”,“用戶平均回復次數(shù)”,“用戶注冊時間”,“用戶平均上線間隔”,“用戶每次上線發(fā)表文章數(shù)”,“個人說明字數(shù)長度”和“標簽個數(shù)”的處理相同,將特征分別離散化,若其特征“用戶關注數(shù)”,“粉絲數(shù)”,“用戶平均轉(zhuǎn)發(fā)數(shù)”,“用戶平均回復次數(shù)”,“用戶注冊時間”,“用戶平均上線間隔”,“用戶每次上線發(fā)表文章數(shù)”,“個人說明字數(shù)長度”和“標簽個數(shù)”的值均落在范圍內(nèi),則將特征分別標記為I ;否則為O ; bl)對于特征“用戶性別”,若用戶性別為男,將特征標記為I ;否則為O ; Cl)對于特征“所在地”,對總數(shù)為P的所有所在地進行編號,將該特征離散為P個特征后,將特征離散化,若其特征“所在地”的值落在范圍內(nèi),則將特征標記為I ;否則為O ; 所述的從微博傳播特征角度通過步驟六提取的特征包括:評價傳播層次、平均每層轉(zhuǎn)發(fā)次數(shù)和傳播衰減指數(shù); 對于特征“評價傳播層次”,“傳播衰減指數(shù)”,和“平均每層轉(zhuǎn)發(fā)次數(shù)”的處理:將特征分別離散化,若其特征“評價傳播層次”,“傳播衰減指數(shù)”,和“平均每層轉(zhuǎn)發(fā)次數(shù)”的值落在范圍內(nèi),則將特征標記為I ;否則為O。
【文檔編號】G06F17/30GK104239539SQ201410487114
【公開日】2014年12月24日 申請日期:2014年9月22日 優(yōu)先權日:2013年9月22日
【發(fā)明者】閆碧瑩, 余雷, 袁偉, 鄧攀, 趙鑫 申請人:中科嘉速(北京)并行軟件有限公司