張志平
(北京語言大學應用語言研究所,北京100083)
文本分類就是在給定的分類體系下,根據文檔的內容或屬性,將其歸到一個或多個類別的過程。隨著信息存儲技術和通信技術的迅猛發展,文字信息的數量在急劇增加,而信息用戶往往只需要其中的很少一部分。如果能由計算機直接對文檔信息進行過濾、分類,把用戶真正感興趣的部分提交給用戶,就能使用戶從繁瑣的文檔處理工作中解放出來,并能極大地提高信息的利用率。
“中文新聞信息分類與代碼”(下文稱新聞分類體系)是科技部2003年11月確定的國家“十五”重大科技攻關專項“中文新聞信息技術標準”的內容之一。在2005年9月29日通過了國家標準的審查,形成了標準報批稿。該體系的制定及推廣的目的是便于實現新聞行業之間、新聞行業和廣大用戶之間的新聞信息交換、存儲、處理和共享,為中文新聞信息分類的規范化、標準化,為中文新聞信息資源的進一步開發和整合提供良好的條件。
目前,新聞分類體系在行業內還沒有被使用,究其原因,主要是體系中類目眾多,不利于人工操作,而又沒有基于該體系的自動分類軟件。筆者的目的是探索基于新聞分類體系的文本自動分類。
新聞分類體系是一個多層次的分類體系,其類目表(classification schedules)包括主類表(classification schedules of main entries)和復分表(subdivision schedules)兩部分。主類表包含一級類表、簡表和詳表[1]。
一級類目表又稱基本大類表,由23個類目組成 ,分別為:“政治” 、“外交、國際關系” 、“社會、勞動、災難事故”、“財政、金融”、“農業、農村”、“能源、水務 、水利”、“交通運輸、郵政 、物流” 、“服務業 、旅游業” 、“教育” 、“文化、娛樂休閑” 、“傳媒業” 、“ 體育”、“法律、司法”、“軍事”、“經濟”、“基本建設、建筑業、房地產”、“礦業、工業” 、“信息產業”、“商業 、外貿 、海關” 、“環境 、氣象” 、“ 科學技術” 、“ 文學、藝術” 、“醫藥、衛生”。
簡表包含291個二級類目;詳表最多分為5個層級類目,各級類目的分類層次和下位類數量存在差異;主類表有類目3 148個(不包含復分表的類目)。
主類表的每一類由代碼、類目名稱、說明三部分構成。如表1所示。

表1 主類表的部分內容
主類表代碼采用層次編碼,每層為2位阿拉伯數字順序碼,自2層4位至5層10位,各層順序碼之間加分隔符號“.”。類目名稱是分類體系中代碼對應的名稱,方便于對代碼的理解。說明是對類目的內容說明,以便對類目的理解和幫助對文本的準確歸類,大部分類目都有內容說明。
自動文本分類的過程包括三部分內容,分別是文本表示、特征項選擇、分類算法。
文本是語言的符號串,采用人類的自然語言表示。計算機沒有類似人類的智能,還不能像人類那樣理解文本。計算機無法理解文本,而又需要計算機幫助人處理文本,所以需要考慮選用什么樣的文本特征和用怎樣的數學形式組織語言要素來表征文本,以便計算機能夠處理文本。
文本表示現在比較常用的模型是向量空間模型[1](VSM :Vector Space Model)。向量空間模型是Salton提出的。該方法基于詞袋假設,即文本中詞條出現的先后次序是無關緊要的。將文本空間看作由一組詞條組成的向量空間,文本中每個不同的詞條表示向量空間中的獨立一維。
一個文本表示成向量空間的形式為:D(t1,t2,…,tn),D為文本,ti(i=1,2,…,n)為文本中的一個詞條。對于其中的每一個詞條ti,在文本中的重要性不同,用權重wi反映詞條ti能夠代表文本D 能力的大小,能夠體現詞條在文本中的重要程度。這樣文本D的向量可以表示為D(w1,w2,…,wn)。
權重的計算方法有布爾權重和TF(Text Frequency)權重。
布爾權重,當某詞條出現在文本中,則該詞條對應的權重為1,否則其權重為0。
TF權重,簡單處理時以詞條在文檔中出現的次數作為權重。考慮到文本中出現的詞條總數,對次數進行歸一化處理,即

式中:f i表示第i個詞條在文本D中出現的次數;wi表示第i個詞條在文檔D中的歸一化權重。
在有些研究[2]中,TF權重計算還考慮到詞條出現在文本中位置,如詞條出現在標題和正文中計算給定不同的值。
對于英語文本,其中詞條之間有空格作為分割符,所以很容易獲得詞條。而漢語文本中漢字連續書寫,區分詞條是比較困難的。表示漢語文本時,以往的研究使用特征項。特征項可以是字[3]、詞[4]、詞組[5]、n-gram、關鍵短語[6]、概念詞[7,8]。本文特征項使用主題詞,主題詞包含詞和詞組。
目前,特征項獲得常用方法是利用機器學習的方法在訓練語料上自動統計得到。機器學習自動選擇特征項采用的算法有:文檔頻率(Document Frequency)、信息增益(Information Gain)、互信息(Mutual information)、χ2統計(Chi-square Statistic)等[9]。機器學習的前提是需要人工標注訓練語料。
新聞分類體系總類目有3 148條,為每個類目標注訓練語料,工作量比較大;另外采用人工的方法,類目多也不容易記憶,標注標準樣本的速度慢,工作效率低,所以訓練樣本很難一次性獲得。在實際應用中,我們不可能等到獲得全部的訓練語料后再進行學習。因此,特征項的獲得需要我們采取新的辦法。
由于訓練語料不易獲得,所以用機器學習的方法獲得新聞分類體系的主題詞表不可實現。不過我們可以利用分類體系本身的資源獲得主題詞,如,類目名稱和類目說明。
利用分類體系本身獲得主題詞,應該有一定的約束條件,我們規定以下幾點:
1)類目名稱表示單一內容時,類目名稱整體作為一個主題詞,如表1中的“經濟體制”、“個人所得稅”、“財產稅”等;類目名稱表示多個內容時,需要把類目名稱分開,作為多個主題詞,如下表“經濟體制與所有制”分為“經濟體制”和“所有制”。類目說明中的主題詞同理。
2)類目說明中的主題詞作為對應類目的主題詞,如類目“財產稅”的說明為:“房產稅、城市房地產稅、遺產稅、贈與稅等入此”,則“房產稅”、“城市房地產稅”、“遺產稅”、“贈與稅”作為“財產稅”類目的主題詞;“個稅”為“個人所得稅”類目的主題詞。
3)子級和父級都有的主題詞,向上合并,次數為累加之和。但當子級只有一個主題詞時,不合并。如表1中的“11.03”和“11.03.01”是父級與子級的關系,并且都有主題詞“經濟體制”,但“11.03.01”只有一個主題詞,所以不合并。
4)兄弟級都有的主題詞,向上合并,次數為累加之和。但當其中一個類目只有主題詞時,該類目不合并。
5)考慮到分類體系的復雜性,目前文本分類只使用主類表,不考慮復分表。
依據上述的條件從分類體系提供的類目信息和類目說明中獲得初始主題詞詞表,得到的主題詞總計有12 053個。每個一級類目下得到的主題數統計如表2所示。

表2 主題詞統計數據
這里我們只統計每個一級類目下得到的特征項,沒有在第二級以及更深層的級別上統計。這些都可以很容易做到,因為我們得到的特征項是帶有類別的信息。如:特征項“素質教育”的類別信息為“31031103”,表示特征項“素質教育”只屬于一個類目,在新聞分類體系中類目層次如下:
31教育
31.03教育管理
31.03.11學生
31.03.11.03學生教育
經典的分類算法有:貝葉斯方法、K-近鄰方法、支持向量機(SVM)、決策樹方法、中心向量法等。
類中心方法是一種非常簡單的分類算法,她是通過比較待分類文本的向量和類中心向量的相似程度,作為文本類別歸屬的判斷依據。該方法分類速度快,并且具有較好的分類準確性。計算兩向量相似度的方法有:
1)歐幾里德距離

式中:d值越小,表示距離越近,向量相似度越高。
2)向量夾角

式中,cos值越高,表示夾角越小,向量相似度越高。向量夾角是計算向量相似度比較常用的方法。上述公式中的x,y都是n維向量。
文本表示采用向量空間模型,權重計算采用TF權重;文本分類算法采用中心向量法,計算向量相似度采用向量余弦夾角值;語料選用動態流通語料庫中2008年的語料。
因為沒有新聞分類體系相對應的標準測試語料,所以我們采用人工的方式分析并判斷分類的正誤。人工分析的依據是分類體系中的類目名稱以及與其對應的類目說明。因為人工判斷比較慢、工作量大,所以我們采用抽樣調查。對自動標注為“12財政、金融”的語料進行了抽樣分析,隨機抽取北京青年報、北京日報、人民日報各25個樣本。
對選取的樣本分類結果分析,得到的統計如表3所示。

表3 分類結果統計數據
“完全正確”是指標注的所有的層級類目都與文本內容相符;“部分正確”是指一級類目與內容相符,從一級類目后的某一層類目與文本內容不符;“錯誤”是指標注結果的一級類目與文本內容不符;“無法確定”是分類體系中沒有與文本內容對應的類目或者是目前沒有找到與其對應的類目。
“無法確定”分類結果的文本有如下的情況:
1)一個文本中存在多個內容,并且各個報道內容之間互不相關。例如文本來源:北京青年報,article5be9.txt,該文本包含了三部分內容,分別為“‘2007最具責任感企業'評選結果揭曉”、“基金經理人首次出版‘投資筆記'”、“中國電信與金融界聯手展開緊密合作”。
2)分類體系中沒有與文本內容對應的類目或者是目前沒有找到與其對應的類目。人民日報中的“說新年”的文本,其主要表達了“時間的短暫,新年開始應該為新的一年做好計劃”,另外一篇文本是報道“2007年院士評選”。對上述兩篇報道沒有找到合適的類目。
為了更好的了解分類的效果,對分類結果按層級統計,如表4所示。

表4 分類結果按層級統計數據
從二級類目開始,分類正確和錯誤的文本數總數在減少,因為有些類目的最深層級沒有達到5層;上一級分類錯誤,在下一級的統計時,不再計數。
分類結果的正確率如表5。正確率是指分類正確的文本數與所有的文本數的比值。

表5 分類結果正確率統計數據
總結分類錯誤的文本,錯誤的原因主要有:
1)主題詞太少。北京青年報中標注結果完全錯誤的9個文本,其中有5個文本標注只依據1個主題詞。
2)新聞文本存在多主題。抽樣調查的樣本中有兩個文本報道的內容是關于同一個事件——“塞浦路斯馬耳他加入歐元區”。北京日報該文本的內容包括“塞浦路斯馬耳他加入歐元區的時間、地點。以及歐元與塞浦路斯鎊的換算比價,歐元與馬耳他里拉的換算比價”。標注的層級類目為“11經濟11.15區域經濟 11.15.01國際區域經濟 11.15.01.01國際區域經濟合作”。人民日報報道的內容包含北京日報的報道內容,另外還增加了“塞浦路斯領導人演講發表了加入歐元區的意義、塞浦路斯舉行的慶祝活動、歐盟輪值主席國也發表了加入歐元區的意義”。人民日報的文本標注為“12財政、金融12.01財政12.01.11稅務12.01.11.05稅制12.01.11.05.03中央與地方共享稅”是不正確的。
3)某些文本利用主題詞確定的類別和人工判斷類別之間存在差異。如在標題為“公交司售人員踏雪‘串'胡同,為給乘客制作詳細的指路圖冊”的文本。
人工判斷文本的內容屬于“城市公共交通服務”,依據體系中的說明“城市公共交通服務入13.03.13城市交通建設”,可以得到人工確定的類別。利用主題詞得到的類目為“12財政、金融12.03金融12.03.04金融市場12.03.04.02貨幣市場12.03.04.02.02銀行間債券市場”,錯誤的原因主要是文中介紹了公交車經過站點附近的金融和商業點。
本文實現了基于新聞分類體系的自動文本分類,分類結果的一級正確率達到了72%。雖然分類的正確率比基于其他分類體系的文本分類正確率低,但為我們進一步研究基于新聞分類體系的自動分類提供了研究的基礎。
從表2可看到,利用分類體系類目名稱和說明獲得的主題詞分布不均勻。“礦業、工業”類得到的主題詞最多,有2 229個;“法律、司法”類獲得的主題詞最少,只有113個。得到的主題詞總計12 053個。獲得的初始主題詞表為我們進一步擴充主題詞提供了參考的資源。
文中對分類結果錯誤的文本做了比較詳細的分析,為進一步完善分類體系提供參考。
[1] Salton G.Developmentsin Automatic Text Retrieval[J].Science,1991,253:974-979.
[2] 劉華.基于關鍵短語的文本內容標引研究[D].北京:北京語言大學博士論文.2005.
[3] 方鷙飛,林鴻飛,楊志豪,等.中文文本體裁的自動分類機制[J].中文信息學報,2006,20(2):24-32.
[4] 張永奎,李紅娟.基于類別關鍵詞的突發事件新聞文本分類方法[J].計算機應用,2008,28(1):139-140.
[5] 徐昉,宗成慶,王霞.中文Base NP識別:錯誤驅動的組合分類器方法[J].中文信息學報,2007,21(1):115-119.
[6] 劉華.基于關鍵短語的文本分類研究[J].中文信息學報,2007,21(4):34-41.
[7] 廖莎莎,江銘虎.中文文本分類中基于概念屏蔽層的特征提取方法[J].中文信息學報,20(3):22-28.
[8] 孫景廣,蔡東風,呂德新,等.基于知網的中文問題自動分類[J].中文信息學報,21(1):90-95.
[9] Yang Yi Ming,Pederson J.A Comparative Study on Feature Selection in Text Categorization[C].The 14th International Conference on Machine Learningk,Nashville:M organ Kaufmann,1997:412-420.