邢金彪 崔超遠 孫丙宇 宋良圖



摘要:傳統的微博廣告過濾方法忽略了微博廣告文本的數據稀疏性、語義信息和廣告背景領域特征等因素的影響。針對這些問題,提出一種基于隱含狄列克雷分配(LDA)分類特征擴展的廣告過濾方法。首先,將微博分為正常微博和廣告型微博,并分別構建LDA主題模型預測短文本對應的主題分布,將主題中的詞作為特征擴展的基礎;其次,在特征擴展時結合文本類別信息提取背景領域特征,以降低其對文本分類的影響;最后,將擴展后的特征向量作為分類器的輸入,根據支持向量機(SVM)的分類結果過濾廣告。實驗結果表明,與現有的僅基于短文本分類的過濾方法相比,其準確率平均提升4個百分點。因此,該方法能有效擴展文本特征,并降低背景領域特征的影響,更適用于數據量較大的微博廣告過濾。
關鍵詞:廣告過濾;隱含狄列克雷分配;短文本分類;支持向量機;特征擴展
中圖分類號:TP181
文獻標志碼:A
0引言
當前,微博作為一種新的傳播載體,允許任何人用電腦、手機等方式在任何時間發布任何言論,且這些言論能迅速傳播給互聯網所能觸及的任何人[1]。微博這種實時且傳播迅速的特點,使其蘊含了巨大的商業價值,越來越多的微博用戶通過自己的賬戶發布商品等廣告信息。逐漸增多的微博廣告不僅影響用戶體驗,還對微博平臺上的輿情分析等研究產生不利影響。該現象依靠現有的微博平臺提供的舉報和屏蔽功能很難進行監管。因此,如何有效過濾廣告,成為了一個亟待解決的問題。
微博廣告過濾是信息過濾的一種[2],主要指從大量的微博中把廣告刪除,保留非廣告內容。因此微博廣告過濾可歸結為短文本分類問題,將微博分為正常微博和廣告型微博。而微博文本作為短文本,其關鍵特征非常稀疏且上下文依賴性強,目前的微博廣告過濾方法不能解決短文本特征稀疏問題;且中文詞匯中存在大量同義詞,采用一般的特征提取方法,同義詞會被看作不同的特征,影響分類性能[3]。因此本文結合隱含狄列克雷分配(Latent Dirichlet Allocation, LDA)主題模型[4]實現特征擴展,解決特征稀疏及同義詞影響分類性能的問題。進一步分析發現,由于廣告涉及領域多,在特征擴展時可能會引入背景領域特征等噪聲數據,影響分類效果,因此,本文在特征擴展時引入文本類別信息,來降低其對分類效果的影響。最后將特征擴展后形成的有效特征向量作為分類器的輸入,使用支持向量機(Support Vector Machine, SVM)分類器進行分類,實現廣告過濾功能。
1相關工作
目前的微博廣告過濾方法主要有基于統計分析的方法和基于短文本分類的方法。王琳等[5]基于統計數據分析了噪聲微博和相似微博的特點,提出了一種面向微博文本流的噪聲判別和內容相似性雙重檢測的過濾方法: 通過統一資源定位符(Uniform Resource Locator, URL)鏈接、字符率、高頻詞等特征判別,過濾噪聲微博;然而,URL已不能作為微博是否為廣告的依據。因此,高俊波等[6]從微博文本內容分析,基于短文本分類方法實現廣告過濾;但該方法缺乏對文本語義的考慮。研究表明,文本的語義主題信息對文本的分類有很大的影響。如方東昊[7]將詞向量特征空間擴展為語義向量特征空間,并對文本進行分類,提升了分類性能;刁宇峰等[8]利用LDA主題模型對博客中的博文進行主題提取, 并結合主題信息進行判斷,識別Blog空間的垃圾評論。
基于短文本分類的方法則面臨微博短文本特征稀疏的問題。許多學者從特征擴展的角度進行了研究,如Xu等[9]以Wikipedia為數據源,通過對能夠表征微博主題的特征項進行語義拓展來提高主題聚類學習模型的性能;該方法雖然能降低特征的稀疏性,但也同時存在引入噪聲數據的風險。呂超鎮等[10]通過構建LDA模型,選擇較高概率的主題的主題詞對短文本進行特征擴充,形成較為有效的短文本的特征向量,并以此進行分類。
如果將微博分為正常微博和廣告型微博,每一類都涉及眾多領域(包括電商廣告、招聘廣告等),包含豐富的背景領域特征(詞匯),涉及較多的主題。所謂背景領域特征是指微博短文本中描述廣告所宣傳的領域的特征、詞匯等,具有較為明顯的領域主題特征,這些特征具有較好的類別區分能力。因此,在解決現有的微博廣告過濾方法所面臨的特征稀疏問題時,若直接通過LDA預測微博文檔主題,并盲目地利用相應的高概率主題詞進行特征擴展,會促使微博主題偏離目標類別(廣告或非廣告),影響最終的廣告過濾效果。如對于如下一條廣告博文:
“把你的名字做成項鏈,戴在胸前,心跳多久,愛你多久,良心推薦,首飾純手工,用名字定制項鏈,成就屬于你的極致浪漫,@***,快來定制你的專屬項鏈吧?!?/p>
該博文為涉及情感領域的廣告文本,包含較多的情感背景特征,若直接對其進行特征擴展,會引入更多的情感特征,在預測主題時,則會更傾向于正常微博的情感主題類別,偏離了其目標類別——廣告型微博。
2基于LDA分類特征擴展的微博廣告過濾方法
如上所述, 將廣告過濾問題歸為微博短文本分類問題,現有的廣告過濾方法仍不能解決短文本特征稀疏和微博廣告所在領域背景特征影響分類性能的問題。因此本文結合文獻[10]中特征擴展的方法,提出基于LDA分類特征擴展的微博廣告過濾方法以解決這些問題。
2.1隱含狄列克雷分配
隱含狄列克雷分配(Latent Dirichlet Allocation, LDA)是一種文檔主題生成模型[4],它包含三層結構:單詞、主題和文檔。LDA是一種非監督機器學習技術,可以用來識別大規模文檔集或語料庫中潛藏的主題信息,采用詞袋(Bag of Words, BoW)方法,將每一篇文檔視為一個詞頻向量,詞與詞之間沒有先后順序,從而將文本信息轉化為易于建模的數字信息。
對于語料庫中的每篇文檔,LDA定義了如下生成過程:
1) 對每一篇文檔,從主題分布中抽取一個主題;
2) 從被抽到的主題對應的單詞分布中抽取一個單詞;
3) 重復上述過程直至遍歷文檔中的每一個單詞。
LDA圖模型如圖1所示,其中:θ表示文本主題概率分布,φ表示主題詞概率分布,α、 β分別是θ、 φ的超參數;w表示可觀測的單詞;z表示主題;K表示主題數;M為文檔數;N為文檔中的詞數。
圖1模型中:陰影圓圈表示可觀測變量,非陰影圓圈表示潛在變量;箭頭表示兩變量間的條件依賴性;方框表示重復抽樣,重復次數在方框的右下角。主題z在文檔d上以及單詞w在主題上分別服從參數為θ和φ的多項分布,而這兩個參數又分別服從超參數為α和β的Dirichlet分布(因為Dirichlet分布是多項分布的共軛分布),所以LDA主題模型是一種概率生成模型。其中:超參數α和β需指定;w是可見的(標記為深色);z需要學習;θ和φ需要推斷,通常情況下可以用吉布斯采樣(Gibbs sampling)[11]來實現。
2.2基于LDA的分類特征擴展及背景特征影響消除
分類特征擴展是指在進行特征擴展時,按照文本所屬類別從中選取合適的特征進行擴展,以便降低背景領域特征對分類效果的影響。李文波等[12]研究發現使用LDA模型進行文本分類時,附加類別標簽能夠提升分類效果,所以在特征擴展時按分類進行是切實有效的。
圖2所描述的是本文模型的文檔集合結構,文檔集合(C)中的所有文檔被劃分為正常微博(C1)和廣告微博(C2),每一類又包含若干個隱含主題(底部小圓)。該模型多了一層文檔類別層,即將類別信息嵌入到模型中。針對每一類別的文檔集合分別構建LDA模型,并得到對應的“文檔主題”分布,作為下一步文檔特征擴展的基礎。
根據以上分析及文本集合結構,本文建立的微博廣告過濾模型如圖3所示。
如圖3所示,訓練集和測試集經過相同的預處理及特征提取操作,訓練集用于分類構建LDA模型和訓練分類器,并將生成的LDA模型用于文檔的特征擴展,兩處特征擴展的區別在于測試集在特征擴展時需要考慮消除背景領域特征的影響,而訓練集由于文檔類別已知則不需要。本文主要工作集中在分類構建LDA模型、特征擴展以及消除背景領域特征的影響。
2.2.1特征提取及加權
在構建本文方法前需要對原始數據進行預處理、特征提取等操作,并選擇合適的文本表示形式,便于分類器處理。首先,預處理主要包括去除噪聲數據(HTML標簽、特殊符號等)、分詞、去除停用詞。其中,分詞的好壞直接影響到最終的實驗效果。由于傳統的中文文本語料詞典難以涵蓋微博中出現的網絡新詞,直接使用NLPIR(Natural Language Processing and Information Retrieval sharing platform)中文分詞工具[13]進行分詞,其效果很不理想,本文也在實驗中驗證了這一點。因此本文將實驗時收集的網絡最新熱點事件、網絡用語等,用于分詞時加載,改善分詞效果。
本文采用向量空間模型(Vector Space Model,VSM)[14]對文本數據進行描述,文本空間被視為一組特征向量組成的向量空間。因此,對于給定的文檔集D={d1,d2,…,dM}(M為文檔總數),其中包含詞為V={v1,v2,…,vN}(N為詞的總數),可以表示成一個M*N的矩陣空間;權值wij表示詞j在文檔i中的權重,采用TF-IDF算法[15]、詞頻(Term Frequency, TF)、逆文檔頻率(Inverse Document Frequency, IDF)計算,計算公式如式(1)。
2.2.2特征擴展及消除背景特征影響
文檔特征提取后,利用分類構建的LDA模型預測文檔的主題分布,并選取概率最大的主題作為文檔特征擴展的基礎,對于類別未知的文檔在特征擴展時需處理背景特征的影響。將處理后的文檔作為分類器的輸入,根據分類結果區分廣告和正常微博。因此本文方法主要包含兩個階段:生成候選特征擴展詞集及消除背景領域特征影響。
1)候選特征擴展詞集生成。
對比傳統的特征擴展方法(如文獻[10]所述),本文在特征擴展時分類進行。給定如圖2所示的文檔集合結構Document={DNormal,DAd},其中DNormal表示正常微博文檔集,DAd表示廣告型微博文檔集,為兩類文檔集分別構建LDA模型,得到ModelLDA(θc,φc)(c∈{Normal,Ad})。利用已建立的LDA模型來預測待測文檔x的主題分布,并選取概率最大的主題Topicmax。
定義1候選特征擴展詞集Candidate。 Candidate={(wi,pi)|i∈N},其中(wi,pi)表示Topicmax的前Top-N個主題詞及其對應的概率值。Candidate用于存儲文檔x的候選特征擴展詞。
2)背景特征影響消除。
若待測文檔x的類別已知(如訓練集),則在特征擴展時不會使背景領域特征過分放大而影響文本分類。
若待測文檔x的類別未知(如測試集),盲目地對其特征項進行擴展,可能會放大背景領域特征的影響,使文檔在預測分類時偏離其原應正確歸屬的類別(廣告、正常)。因此首先分別利用ModelLDA(θc,φc)對待測文檔x進行預測,產生候選特征擴展集Candidatec(c∈{Normal,Ad});并將LDA用作類條件概率,根據式(2)計算類條件概率,判斷待測文檔x可能所屬的類別。
步驟5計算背景特征詞在候選特征擴展集中的比例η,當η大于等于閾值γ時,對于Comm集中的每一個特征item,修改其權重為:pitem=|pNormal-pAd|,并將Candidate中對應的權值更新;若η小于γ,則表明背景領域特征影響較小,無需修改Candidate中相應特征。最終的特征擴展候選詞集Candidate=Candidate。
步驟6將Candidate中的特征詞項擴展至文檔x的特征向量中,對于x中已存在的特征項,替換其權值,生成最終表示文檔x的有效特征向量,作為分類器的輸入。
3實驗流程及結果分析
3.1實驗數據
實驗數據源自新浪微博2015年06月—2015年07月的微博信息,人工標注后獲得有效廣告微博3315條,非廣告微博4813條,構成一個微博語料集。
3.2實驗設置
1)主題數。采用LDA模型對文本集進行主題建模時,主題數K對模型擬合文本集的性能以及最終的分類性能影響很大,對于K的取值本文采用統計語言模型中常用的困惑度(Perlexity)來進行選取[16]。困惑度是衡量一個模型好與壞的評價指標,困惑度越小,代表模型的泛化能力越強。困惑度公式[4]為:
準確率:即正常微博“保留率”,體現了過濾方法辨別廣告的準確度。
召回率:即被保留下來的正常微博數量占所有正常微博數量的比例,體現了廣告過濾模型過濾廣告的完備性。
F1值:實際上是召回率和正確率的調和平均, 當F1較高時則能說明實驗方法比較有效。
4)實驗分組。
文獻[6]中已證明基于文本內容分析的微博廣告過濾模型優于文獻[5]中基于統計分析的方法。因此本文基于文獻[6]方法設計對比實驗,每次實驗采用相同數據集。具體如下:
方法1:文獻[6]所述基于文本內容分析的方法;
方法2:在方法1基礎上增加短文本特征擴展處理;
本文方法:利用本文所描述的增加特征擴展及消除背景特征影響方法設計實驗,并根據分類后的結果設計過濾器。
3.3實驗結果及對比
1)主題數。實驗將LDA 模型的主題數設置為20~100 (間隔5),兩種類別的訓練集困惑度隨主題數變化情況如圖4所示,隨著主題數不斷增加,兩種類別訓練集的困惑度均逐漸下降,當達到55時,下降趨勢趨于平穩。而主題數越多,LDA模型估計的參數越多,計算代價越大,因此取主題數K=55。
根據實驗結果分析可知,Topic A主要表示股市相關的主題,Topic B表示娛樂相關的信息,Topic C表示服飾、百貨等相關的廣告主題,Topic D表示化妝品相關的廣告主題。此處生成的主題特征作為候選特征擴展集的基礎。
3)閾值γ對算法性能的影響。背景特征詞在候選特征集中比例的閾值γ大小的選擇對實驗結果有較大的影響。本文利用已經標注的5000條微博訓練集,以F1值作為評判標準,對該參數進行了多組實驗,實驗結果如圖5所示。
當γ取值范圍在0.1~0.3時,F1值增長較快;當γ大于0.3時,F1開始下降并趨于平穩。由于γ影響最終的實驗效果,若γ設定較小,則背景特征較少不足以對分類效果產生影響時增加了不必要的計算,且可能過濾掉重要的特征詞,影響分類性能;若γ較大,則遺漏較多的背景特征,使得實驗效果趨于僅進行特征擴展的方法2,影響對算法性能的判斷。因此通過實驗分析將閾值γ取值0.3。
4)對比實驗。
由于數據集越大LDA模型構建得越好,則特征擴展的效果越明顯,因此本文實驗通過改變數據集的大小,對比分析特征擴展及背景領域特征兩因素對實驗效果的影響。表3顯示的是三種方法的實驗結果對比。
從表3的對比結果中可以看出,當數據集較小時,三種方法的過濾效果均較差,且方法2和本文方法實驗效果相近,這是因為LDA模型未得到充分訓練,特征擴展效果不佳且分類器未訓練到較好的水平。隨著數據集的增大,分類器分類效果明顯提升,后兩種方法中的文本特征得到擴展,其準確率明顯高于方法1。然而當數據集增大到一定程度時,三種方法準確率增長趨于平緩,本文方法在準確率上仍有提升,主要原因是隨著實驗數據集的充分增大,分類構建的LDA模型能為特征擴展提供更好的候選特征擴展集,但方法2在特征擴展時也引入了較多的背景領域特征對實驗效果產生了不利影響。本文方法增加了消除背景領域特征影響的操作,使得準確率較方法2有了進一步的提升。
為驗證本文設計的廣告過濾方法的實際性能,利用已訓練好的三種方法,將新浪微博平臺2015年07月17日—2015年07月23日,每天下載的500條微博信息用于實驗,實驗結果對比如圖6所示。
圖6中,橫軸表示日期07月17日—07月23日,縱軸表示F1值。實驗結果表明本文方法明顯優于文獻[6]中僅從文本內容分析的方法(即方法1)。這主要是因為文獻[6]沒有考慮微博文本的語義信息和特征稀疏的問題,然而本文方法增加了特征擴展處理,又消除廣告背景領域特征對分類性能的影響,從而使過濾效果得到進一步的提升,實驗結果較現有過濾方法的F1值平均提升4個百分點。
4結語
本文提出了一種基于LDA分類特征擴展的廣告過濾方法,彌補了現有的僅基于短文本分類的微博廣告過濾方法在廣告文本語義信息、文本數據稀疏、廣告背景領域特征影響等方面的不足。該方法能有效地實現特征擴展,降低廣告背景領域特征的影響,且本文方法對處理數據量較大的微博數據效果更好。實驗證明本文方法優于文獻[6]中基于文本內容分析的方法,是一種有效的微博廣告過濾方法。
然而本文只針對微博文本特征進行研究,后續研究可以通過檢測用戶的所有微博信息判斷廣告用戶,實現對特殊用戶的特殊關注,以從源頭控制微博廣告的傳播。
參考文獻:
[1]張劍峰,夏云慶,姚建民.微博文本處理研究綜述[J].中文信息學報,2012,26(4):21-27. (ZHANG J F, XIA Y Q, YAO J M. A review towards microtext processing [J]. Journal of Chinese Information Processing, 2012, 26(4): 21-27.)
[2]徐小琳,闕喜戎,程時端.信息過濾技術和個性化信息服務[J].計算機工程與應用,2003,39(9):182-184. (XU X L, QUE X R, CHENG S D. Information filtering and user modeling [J]. Computer Engineering and Applications, 2003,39(9):182-184.)
[3]賀濤,曹先彬,譚輝.基于免疫的中文網絡短文本聚類算法[J].自動化學報,2009,35(7):896-902. (HE T, CAO X B, TAN H. An immune based algorithm for Chinese network short text clustering [J]. Acta Automatica Sinica, 2009, 35(7): 896-902.)
[4]BLEI D M, NG A Y, JORDAN M I. Latent Dirichlet allocation [J]. Journal of Machine Learning Research, 2003, 3: 993-1022.
[5]王琳,馮時,徐偉麗,等.一種面向微博客文本流的噪音判別與內容相似性雙重檢測的過濾方法[J].計算機應用與軟件,2012,29(8):25-29. (WANG L, FENG S, XU W L, et al. A filtering approach for spam discrimination and content similarity double detection for microblog text stream [J]. Computer Applications and Software, 2012, 29(8):25-29.)
[6]高俊波,梅波.基于文本內容分析的微博廣告過濾模型研究[J].計算機工程,2014,40(5):17-20. (GAO J B, MEI B. Research on microblog advertisement filtering model based on text content analysis [J]. Computer Engineering, 2014, 40(5): 17-20.)
[7]方東昊.基于LDA的微博短文本分類技術的研究與實現[D].沈陽:東北大學, 2011:23-28. (FANG D H. Study and implementation for microblogs short text classification based on LDA [D]. Shenyang: Northeastern University, 2011: 23-28.)
[8]刁宇峰,楊亮,林鴻飛.基于LDA模型的博客垃圾評論發現[J].中文信息學報,2011,25(1):41-47. (DIAO Y F, YANG L, LIN H F. LDA-based opinion spam discovering [J]. Journal of Chinese Information Processing, 2011, 25(1): 41-47.)
[9]XU T, OARD D W. Wikipedia-based topic clustering for microblogs[J]. Proceedings of the American Society for Information Science and Technology, 2011, 48(1): 1-10.
http://xueshu.baidu.com/s?wd=paperuri%3A%28c10c0fa9062177526c1e6ca5fc35b6c6%29&filter=sc_long_sign&tn=SE_xueshusource_2kduw22v&sc_vurl=http%3A%2F%2Fonlinelibrary.wiley.com%2Fdoi%2F10.1002%2Fmeet.2011.14504801186%2Fpdf&ie=utf-8&sc_us=3265163405836292075
[10]呂超鎮,姬東鴻,吳飛飛.基于LDA特征擴展的短文本分類[J].計算機工程與應用,2015,51(4):123-127. (LYU C Z, JI D H, WU F F. Short text classification based on expanding feature of LDA [J]. Computer Engineering and Applications, 2015, 51(4): 123-127.).
[11]GRIFFITHS T L, STEYVERS M. Finding scientific topics [J]. Proceedings of the National Academy of Sciences of the United States of America, 2004,101(S1): 5228-5235.
[12]李文波,孫樂,張大鯤.基于Labeled-LDA模型的文本分類新算法[J].計算機學報,2008,31(4):620-627. (LI W B, SUN L, ZHANG D K. Text classification based on labeled-LDA model [J]. Chinese Journal of Computers, 2008, 31(4): 620-627.)
[13]張華平.NLPIR漢語分詞系統[CP/OL]. [2015-07-17]. http://ictclas.nlpir.org/. (ZHANG H P. Chinese lexical analysis system [CP/OL]. [2015-07-17]. http://ictclas.nlpir.org/.)
[14]SALTON G, WONG A, YANG C S. A vector space model for automatic indexing [J]. Communications of the ACM, 1975, 18(11): 613-620.
[15]SALTON G, YANG C S. On the specification of term values in automatic indexing [J]. Journal of Documentation, 1973, 29(4): 351-372.
[16]CAO J, XIA T, et al. A density-based method for adaptive LDA model selection [J]. Neurocomputing, 2009, 72(7/8/9): 1775-1781.
[17]CHANG C-C, LIN C-J. LIBSVM: a library for support vector machines [J]. ACM Transactions on Intelligent Systems and Technology, 2011, 2(3): Article No. 27.