邊凌燕,賀仁龍,姚曉輝
(中國電信股份有限公司上海研究院 上海 200122)
近年來,通信產(chǎn)業(yè)深度變革,電信運營商在整個ICT產(chǎn)業(yè)中的主導權逐步被分化。運營商要在全新的產(chǎn)業(yè)格局內(nèi)占據(jù)優(yōu)勢,必須基于自身擁有數(shù)據(jù)的規(guī)模和活性以及收集和運用數(shù)據(jù)的能力優(yōu)勢,挖掘得天獨厚的管道數(shù)據(jù)資產(chǎn)價值,在保護用戶隱私的前提下,為用戶提供高附加值的精準目標服務,激活數(shù)據(jù)資源和客戶深度洞察力的市場能量,應對越來越激烈的市場競爭。
采用 DPI(deep packet inspection,深度分組檢測)技術對移動互聯(lián)網(wǎng)的用戶上網(wǎng)行為數(shù)據(jù)進行數(shù)據(jù)精準解析、識別后,將相應用戶訪問網(wǎng)站歸類掛載至網(wǎng)頁URL分類體系,通過與分類體系內(nèi)各節(jié)點特征的映射來洞察用戶上網(wǎng)的興趣偏好,已成為運營商順應移動互聯(lián)網(wǎng)發(fā)展、遷移管道優(yōu)勢并強化數(shù)據(jù)應用的一個熱點方向。本文梳理了海量DPI用戶上網(wǎng)行為數(shù)據(jù)掛載到設定的URL分類體系的實現(xiàn)流程,重點研究介紹了網(wǎng)頁信息提取、分詞及文本分類等關鍵的文本挖掘應用技術。
DPI作為一種基于應用層的流量檢測技術,除了對IP分組4層以下內(nèi)容做分組檢測外,還增加了應用層分析,可以深入解析和讀取IP分組載荷的內(nèi)容,識別各種應用及其內(nèi)容[1]。中國電信全網(wǎng)統(tǒng)一部署的數(shù)據(jù)信息采集解析設備輸出的用戶互聯(lián)網(wǎng)訪問DPI數(shù)據(jù)信息,分為公有信息和協(xié)議特有信息兩部分。公有信息是對所有協(xié)議都做要求的信息,必備的公有信息字段包括用戶信息、終端信息、訪問協(xié)議信息、用戶上網(wǎng)行為時間屬性等信息,見表1。主要實現(xiàn)從業(yè)務應用、時間段等多維度挖掘洞察用戶上網(wǎng)行為時間、頻次及流量耗費等信息。
協(xié)議特有信息是針對 HTTP、WAP、RTSP、SMTP等 14種協(xié)議特有的協(xié)議信息,需基于公有信息的“協(xié)議類型”字段內(nèi)容進一步解析。經(jīng)實際數(shù)據(jù)探測,HTTP、WAP內(nèi)容的流量占據(jù)海量用戶上網(wǎng)行為數(shù)據(jù)總流量的80%以上,本文的研究著重圍繞該兩類協(xié)議的信息數(shù)據(jù)展開,二者協(xié)議必備特有信息中的關鍵字段 “DestinationURL”(目標網(wǎng)站URL地址)將作為后續(xù)DPI數(shù)據(jù)分析挖掘研究的關鍵輸入,見表2。
網(wǎng)頁URL分類體系作為實現(xiàn)DPI數(shù)據(jù)的結構化轉(zhuǎn)化和分類的基礎,是精準鎖定客戶興趣偏好特征的關鍵。該體系主要以用戶目的需求為主線,參照運營商本身營銷需求,綜合互聯(lián)網(wǎng)門戶、導航站點、自有業(yè)務門戶的分類粗粒度目錄,根據(jù)業(yè)務產(chǎn)品聚合情況進行較強的針對性設定。從DPI數(shù)據(jù)解析實現(xiàn)網(wǎng)頁URL分類體系的構建,流程上按規(guī)則“DestinationURL”和無規(guī)則“DestinationURL”區(qū)分考慮,如圖1所示。

表1 協(xié)議公有信息必選字段

表2 HTTP、WAP特有信息必備字段

圖1 DPI數(shù)據(jù)構建網(wǎng)頁URL分類體系方案
針對規(guī)則URL,處理方式通常借助網(wǎng)站本身URL或頻道編碼特征,建立與已有URL分類體系的映射關系,通過廣度爬蟲收集URL并進行分類自動掛載,本文不再贅述。
無規(guī)則URL多指沒有多級域名或目錄或所有欄目使用數(shù)字編碼的網(wǎng)站地址。一般經(jīng)由爬蟲進行網(wǎng)頁原始內(nèi)容的解析和信息提取,通過文本分詞、特征選擇等步驟來實現(xiàn)網(wǎng)頁文本特征向量的標定及文本分類,將未知網(wǎng)頁映射掛載到給定的URL類別目錄。
以上規(guī)則或無規(guī)則URL分類流程在系統(tǒng)自動實現(xiàn)失敗的情況下,在維護流程上都加入人工識別環(huán)節(jié),以補充自動分類器的判定不足,從而保證分類體系不斷完善和及時更新,同時也可以隨著用戶偏好關注度及企業(yè)運營需求進行動態(tài)調(diào)整,以豐富長效穩(wěn)定的URL分類體系。
對無規(guī)則URL進行網(wǎng)頁爬取后得到的頁面源文件采用超文本設計,其往往存在許多噪聲,如廣告、注釋、導航、推薦、版權等無關信息,如果不進行過濾會直接影響后續(xù)網(wǎng)頁分類結果。因此在做下一步挖掘分析前,網(wǎng)頁內(nèi)容提取的預處理工作顯得很必要。
[2]詳細介紹和對比了幾種常見的網(wǎng)頁內(nèi)容提取技術。
·基于 DOM(document object model)樹:依據(jù)專門適用于HTML的文檔對象模型DOM樹,解析HTML標簽的層次關系成樹狀結構,通過遍歷樹節(jié)點的各個對象,識別網(wǎng)頁正文信息。
·基于文本及標簽分布:參考文本及標簽的分布狀況編寫行號與行塊文本長度的分布函數(shù),依據(jù)函數(shù)的驟升驟降,區(qū)分網(wǎng)頁正文與非正文內(nèi)容。但該方法過分依賴正文在源碼中的位置分布,較易引起誤提取。
·基于視覺窗:利用導航在頂部、廣告在側(cè)邊的布局常規(guī)特征,文字顏色、分隔邊框、段落間距等視覺信號幫助定位網(wǎng)頁正文信息。該方法準確率相對不高。
·基于標記窗:先對網(wǎng)頁標題進行分詞,再取每個標簽對之間的文本內(nèi)容進行分詞,并計算兩者的相似度,設定閾值是否為提取的標準。其缺點是絕對依賴于標題的準確性。
基于DOM樹網(wǎng)頁內(nèi)容提取技術的HTMLParser作為SourceForge.net社區(qū)的開源項目,是目前業(yè)內(nèi)應用最廣泛的網(wǎng)頁解析工具。它由純Java語言編寫而不依賴于其他Java庫,不僅擴展便利且可以兼容Nutch架構,進而超高速地實現(xiàn)無規(guī)則URL經(jīng)后者爬蟲抓取后的實時解析。其解析過程如圖2所示,本文以某新聞網(wǎng)頁為例說明,首先利用HTMLParser將網(wǎng)頁文檔轉(zhuǎn)化為DOM_1樹,樹的每個節(jié)點對應一個網(wǎng)頁標簽對象,進一步通過過濾樹內(nèi)大量的噪音信息,包括主題無關節(jié)點 (通常是圖片img、對象object、腳本 script、表單 form 等),無效節(jié)點(通常是無內(nèi)容空節(jié)點),得到只含文本標簽和結構標簽的DOM_2樹。通過抓取同一站點下的兩個網(wǎng)頁,利用同一站點網(wǎng)頁模板相關性,去除DOM_2樹重復內(nèi)容頁面信息,得到不一致文本內(nèi)容包含的網(wǎng)頁主題信息的DOM_3樹,即最終DOM樹,可以基于該樹的終節(jié)點實現(xiàn)對于HTML網(wǎng)頁內(nèi)容的文本轉(zhuǎn)化。

圖2 HTMLParser解析網(wǎng)頁過程示意
如何快速有效地識別和去除網(wǎng)頁文檔中的噪音信息,是提高網(wǎng)頁內(nèi)容提取準確率和效率的一個關鍵。對于缺失標簽、標簽錯亂等問題,HTMLParser還能在HTML文檔轉(zhuǎn)換為DOM樹的過程中自行修正,在此不再詳述。
文本分詞作為文本挖掘的基礎,主要是依據(jù)分詞算法將提取后的網(wǎng)頁內(nèi)容漢字序列切分成一個一個單獨的詞,達到電腦自動識別語句含義的效果。
自20世紀80年代初,中文信息處理領域提出自動分詞以來,很多高校科研機構都在該領域內(nèi)取得了突破性的進展,研發(fā)了很多實用的分詞系統(tǒng),代表性的有:清華大學的SEG分詞系統(tǒng)、北京大學計算語言所分詞系統(tǒng)、復旦大學分詞系統(tǒng)、微軟研究院的多國語言處理平臺NLPWin及中國科學院ICTCLAS分詞系統(tǒng),具體系統(tǒng)評價可參考文獻[3,4]。
上述分詞系統(tǒng)實現(xiàn)的分詞原理大多包括以下3種。
·基于字符串匹配(詞典)的分詞:按照一定的策略將待切分的漢字序列與機器詞典庫中的詞條進行匹配。按照掃描方向的不同,分詞方法可以分為正向匹配、逆向匹配以及雙向匹配;按照不同長度優(yōu)先匹配的情況,可以分為最大(最長)匹配和最小(最短)匹配。相關統(tǒng)計結果表明,單純使用正向最大匹配的錯誤率為1/169,單純使用逆向最大匹配的錯誤率為1/245,建議使用逆向匹配的切分精度略高于正向匹配[5]。
·基于理解的分詞:主要利用專家系統(tǒng)、神經(jīng)網(wǎng)絡等人工智能系統(tǒng),分詞的同時進行語義與句法的分析處理歧義現(xiàn)象。該類方法需要通過大量語料庫的訓練集學習后,在推理機中構建知識庫。
·基于統(tǒng)計的分詞:計算詞內(nèi)漢字共現(xiàn)概率表達緊密程度,當緊密度高于閾值時,認定為詞,該方法比較適用于專業(yè)文本分詞。
分詞技術的主要困難點在于歧義消除(不同的分詞方法呈現(xiàn)不同的語義)和新生詞匯識別問題。本文推薦利用詞典分詞與統(tǒng)計分詞結合的方式,不僅具有詞典匹配的快速分詞效率,統(tǒng)計歧義詞或新生詞內(nèi)的漢字共現(xiàn)頻率將有助于進一步提高分詞精度,如圖3所示。
分詞處理后的結果,通過構建正則表達式等方法,去除常用感嘆詞、副詞及虛詞等停用詞,余下的則用來表征網(wǎng)頁文本特征向量,如式(1)所示:

其中tji是文檔j中出現(xiàn)的第 i個詞,wji是詞tji在文檔中的權值,一般可以定義為tji在文檔中出現(xiàn)的頻率函數(shù)。但這樣得到的文檔特征向量維度依然十分龐大。由于高維文本向量應用文本自動分類幾乎很難實現(xiàn),所以必須先經(jīng)過降維處理,也就是特征選擇。
經(jīng)特征選擇降維后的文本特征集應該包含兩個特點[6]:完全性和區(qū)分性。完全性,全面體現(xiàn)目標文本內(nèi)容與主題;區(qū)分性,有效區(qū)分目標文本與其他文本。目前,國內(nèi)外學者研究了眾多的特征選擇方法,其中最為常見的算法有TFIDF(term frequency-inverse document frequency)、信息增益(IG)、互信息(MI)、統(tǒng)計法 CHI等。
參考文獻[7]的研究表明:信息增益主要通過特征在文本中的出現(xiàn)與否來度量,在遇到當類分布和特征項分布高度不平衡的情況時,由特征的不出現(xiàn)概率來評定該特征的信息增益,會導致該算法的特征提取表現(xiàn)不佳。通過學習參考文獻[8,9],了解到互信息容易受到詞條邊緣概率密度的影響,如果兩詞條擁有相同的條件概率,頻度低的反而有更高的相關信息量,其表現(xiàn)為過于傾向低頻詞,尤其當選擇的訓練文本和測試文本中有過多低頻詞時將直接影響后續(xù)分類效果。統(tǒng)計法CHI把特征與類別間的獨立性類比為x2分布,往往偏重于考慮特征詞在所有文檔中出現(xiàn)的文檔頻數(shù),對于少量文檔中高頻出現(xiàn)對分類貢獻極大的特征容易被忽略[7]。上述算法的理論基礎不同,基于大量真實數(shù)據(jù)的實驗證明,各個算法各有利弊,不存在任何一種算法在所有的數(shù)據(jù)集上都是最優(yōu)的[10~13]。本文考慮網(wǎng)頁文本數(shù)據(jù)集海量的特性,推薦應用最為廣泛且計算實現(xiàn)最為簡便的特征加權技術TFIDF算法。
TFIDF實際表示是 TF×IDF,其中TF表示詞頻(term frequency),即詞在該文本中出現(xiàn)的次數(shù);IDF表示反文檔頻率(inverse document frequency),計算式如式(2)所示,表示詞在整體語料庫文本集中普遍重要性的度量。

其中,N為網(wǎng)頁文本語料庫全部文本數(shù)量,n為包含詞t的文本數(shù)量。
TFIDF算法的主要依據(jù)是某一文本內(nèi)的高頻詞以及該詞在整個語料庫文本集合中的低頻率,可以產(chǎn)生出高權重的TFIDF。因此,TFIDF傾向于字詞的重要性隨著它在文件中出現(xiàn)的次數(shù)成正比增加,但同時會隨著它在語料庫中出現(xiàn)的頻率成反比下降,容易過濾掉常見的詞語,保留重要的詞語,適合用來作為分類的文本關鍵特征向量表示。

圖3 詞典分詞與統(tǒng)計分詞結合的分詞機制
文本分類環(huán)節(jié)主要基于網(wǎng)頁文本的特征向量將每個網(wǎng)頁文本歸入預先定義的URL類別節(jié)點中。目前常見的文本分類器有以下幾類:概率分類器,典型的如Naive Bayes;決策樹分類器,包括 ID3、C4.5、C5;神經(jīng)網(wǎng)絡分類器,如感知器法、logistic回歸、多層神經(jīng)網(wǎng)絡等;基于樣本的分類器,即惰性學習器,典型的有KNN;支持向量機SVM分類器[14]。不同的分類算法性能具備差異:其中Bayes、KNN以及決策樹的方法雖然效率較高,但其分類能力較弱。神經(jīng)網(wǎng)絡的最大缺點是過擬合,而防止過擬合很難實現(xiàn),參見參考文獻[15]。通過學習參考文獻[16,17]發(fā)現(xiàn),SVM分類即便在樣本分布不均衡的情況下,依然具備解決文本分類問題的出眾性能,有效回避過擬合及冗余特征等問題,是進行網(wǎng)頁文本分類的首選算法,本節(jié)進行重點介紹。
SVM實現(xiàn)分類的主要途徑,是通過選擇非線性映射(核函數(shù))將輸入的文本向量映射到一個高維特征空間,在這個高維空間尋找最優(yōu)的分類超平面,使各個樣本間實現(xiàn)最大區(qū)分。但由于SVM最初就是一種典型的兩類分類器,要解決的網(wǎng)頁文本分類是個多類問題,利用SVM算法,以多個超平面把空間劃分為多個區(qū)域,每個區(qū)域?qū)粋€類別,一次性求解的方法計算量實在太大,大到無法實用的地步。
筆者建議采用DAG SVM方法,也稱為有向無環(huán)圖算法,實現(xiàn)網(wǎng)頁文本分類。以5個類別的左向有向無環(huán)算法為例:第一個分類器首先區(qū)分“1類對5類”的歸屬判定,如果歸屬5類,分類器往左走,進入“2類對5類”的分類器,如果判定還是歸屬5類,繼續(xù)往左走,依次往下,直到得到最終分類結果,如圖4所示。這樣最終調(diào)用4個分類器(如果類別數(shù)為K,則只調(diào)用K-1個),可以得到分類結果。該方法的好處是每個優(yōu)化問題的規(guī)模比較小且分類效率高。
DAG SVM算法的缺點在于如果上一個節(jié)點分類器出現(xiàn)錯誤,那么后面的分類器無法糾正錯誤,存在錯誤向下累積的現(xiàn)象。所以在分類器節(jié)點的布置上,筆者建議把差別大的排在前面,也就是把分類器按兩類分類的正確率從高到低排列,也可以考慮在每個兩類分類器上都輸出分類置信度,作為每個兩類分類器結果準確度的參考依據(jù)。

圖4 有向無環(huán)圖SVM過程說明
移動互聯(lián)網(wǎng)時代,電信運營商要在競爭日趨激烈的產(chǎn)業(yè)鏈上,取得更好的發(fā)展,就必須更好地適應市場和客戶的需求。通過對DPI數(shù)據(jù)的深入文本挖掘,實現(xiàn)網(wǎng)頁URL分類體系的自動映射掛載,從而獲取用戶行為特征分類,將為運營商全面洞察客戶、構建客戶全息視圖提供依據(jù),助力企業(yè)精準營銷。
參考文獻
1 羅憶祖.DPI技術力助運營商精細化運營.郵電設計技術,2009(3)
2 于靜.基于頁面主體提取的Web信息抽取技術研究.南京郵電大學碩士學位論文,2013
3 馮書曉,徐新,楊春梅.國內(nèi)外中文分詞技術研究新進展.情報雜志,2002(11):29~30
4 郭瞳康.基于詞典的中文分詞技術研究.哈爾濱理工大學碩士學位論文,2010
5 李原.中文文本分類中分詞和特征選擇方法研究.吉林大學碩士學位論文,2011
6 薛為民,陸玉昌.文本挖掘技術研究.北京聯(lián)合大學學報(自然科學版),2005,19(4):59~63
7 宋江.文本分類的特征選擇方法研究.南京航空航天大學碩士學位論文,2010
8 王法波.文本分類的特征選擇和分類方法研究.山東大學碩士學位論文,2011
9 Liu H,Motoda H.Feature Extraction,Construction and Selection:A Data Mining Perspective.USA:Kluwer Academic,1998
10 Jain A,Zongker D.Feature selection:evaluation,application and small sample performance.IEEE Transactions on Pattern Analysis and Machine Intelligence,1997,19(2):153~158
11 Gorvan A.Principal Manifolds for Data Visualisation and Dimension Reduction.New York:Springer,2007
12 Verleysen M,Lee J A.Rank-based quality assessment of nonlinear dimensionality reduction.Proceedings of the 16th European Symposium on Artificial Neural Networks,Bruges,Belgium,2008:49~54
13 Deerwester S.Indexing by latent semantic analysis.Journal of American Society for Information Science,1990,41(6):391~407
14 陳燃燃.基于SVM算法的Web分類研究與實現(xiàn).北京郵電大學碩士學位論文,2009
15 Vapnik V N.The Nature of Statistical Learning Theory.New York:Springer,1995
16 Joachims T.Text categorization with support vector machines:learning with many relevant features.Proceedings of the 10th European Conference on Machine Learning,Chemnitz,Germany,1998:137~142
17 Joachims T.Transductive inference for text classification using support vector machines.Proceedings of the 16th International Conference on Machine Learning,Bled,Slovenia,1999:200~209