中文網頁自動分類新演算法

來源:互聯網
上載者:User
張俐 李星 陸大
 
  摘 要: 為了有效地組織網際網路上極其豐富的資訊資源,通過分析中文和中文網頁的特點,提出了一種新的中文網頁的自動分類演算法。這種演算法主要利用字間的相關資訊、詞頻以及頁面的標記資訊等,提取網頁特徵,並計算可調的詞頻加權參數,然後通過本類和非本類訓練,建立專家資料庫。實驗表明,該演算法可以獲得80%以上的網頁分類準確率。
  關鍵詞: 文本分類; 搜尋引擎; 超文本描述語言 (HTML)
  分類號:TP 391; O 235 文獻標識碼: A
  文章編號: 1000-0054(2000)01-0039-04
 
  New automatic categorization algorithm for Chinese homepages
 
  ZHANG Li LI Xing LU Dajin
  (Department of Electronic Engineering,Tsinghua University, Beijing 100084, China)
 
  Abstract:Current abundant resources can be accessed on the Internet, but there is no effective method to organize the information. Through analysising of the characteristics of Chinese text and Chinese homepages, a new automatic categorization method for Chinese homepages was presented. This method correlates the Chinese characters, the term frequency, and the hypertext markup language (HTML) tag information in the homepage to calculate an adjustable term frequency weighting parameter. An expert database is built using both in-set and out-set sample training. Experiments show that the method's recognition rate is about 80%.
  Key words:text categorization; search engine; hypertext markup languagel (HTML)▲
 
    隨著網際網路在全世界的普及和發展,WWW網頁已經成為網際網路上最重要的資訊資源。WWW網頁採用超文本描述語言(HTML)格式,每一個網頁可以被引用為連結,也可以指向任何其它網頁。為了網頁資訊的有效組織和檢索,人們開發了網路資訊搜尋器。網路資訊搜尋器以給定的超連結(URL)為入口,按照HTTP協議,依次與WWW伺服器建立串連,擷取網頁(1所示)。
 
 
 
  圖1 搜尋器
 
    為了協助網際網路使用者查詢感興趣的資訊,國內外研究開發了一些網路搜尋引擎,如國外的Alta Vista, Infoseek, Lycos等,國內的網路指南針[1]、網易、天網等。但是,目前中文搜尋引擎存在以下問題: 1) 中文檢索採用基於字或詞的方法,由於中文切詞有時存在不確定因素,導致中文的查全率和查准率不高; 2) 搜尋引擎的分類資訊資源主要依靠人工維護,不便資訊更新。因此,研究中文網頁的自動分類,一方面,可以將網頁按類分別建立相應的資料庫,對分類資料庫進行查詢,提高中文查全率和查准率; 另一方面,可以建立自動的分類資訊資源,為使用者提供分類資訊目錄。
    在英文文本自動分類演算法[2~5]的基礎上,結合中文網頁的特點,採用非參數線上訓練方法,提出了一種新的中文網頁分類演算法。實驗證明,這種演算法對中文網頁的自動分類具有較好的效果。
 
  1 英文的文本自動分類演算法
 
    文本自動分類就是用大量的帶有類標識的文本,對分類準則或模型參數進行訓練; 然後,用訓練得到的結果對未知類別的文本進行識別。
    目前,英文的文本自動分類方法有兩大類[6]: 一類是參數方法[7],另一類是非參數方法[2~5,8,9]。參數方法是假定文本的機率分布模型,通過訓練,得到具體參數的估計值。非參數方法是不假定任何機率分布形式,通過準則函數直接訓練,得到各類的權重向量,然後對待識別樣本進行判別。由於分類文本的機率分布模型很難準確地定義,非參數的分類方法應用較廣。
 
  2 中文網頁自動分類演算法
 
    中文分類與英文不同。英文分類演算法大多以單詞為關鍵詞,利用空格等作為分隔字元,提取文章特徵; 但中文一般是一串無分隔字元的字串,詞之間沒有明顯的分隔標誌,而且切詞比較難,不能直接採用英文分類方法。
    另外,與一般的純文字檔案不同,WWW網頁是HTML格式的超文本,頁面中有〈title〉、 〈meta〉等標記,以及描述此頁面的標題(title)、頁面描述(description)、關鍵詞(keywords)、超連結(URL)等。這些包含重要的分類資訊。
    提出的中文網頁分類演算法是一種非參數線上訓練演算法。其基本思想是根據中文字間的相關性等資訊提取中文網頁的關鍵詞,每個關鍵詞對文章分類的作用包括正權重和負權重。通過訓練,計算每個關鍵詞的正、負權重,形成本類的專家庫。識別時,首先提取文章中的關鍵詞,然後從專家庫讀取相應的正、負權重,利用判別準則,進行判別。
 
  2.1 訓練演算法
    對於中文而言,中文字間的相關性包含重要的分類資訊。如果以單字作為關鍵詞,不考慮字間的相關性,就會丟失文章的某些有用資訊,影響分類結果。但是,如果考慮所有的前後字間的相關性,簡單將前後相連的字定義為關鍵詞,訓練量非常大。因此,訓練時採用中文詞典,對文章進行切詞,將詞典中出現的詞作為關鍵詞。這樣,既保留了必要的字間相關資訊,同時也減少了訓練量。
    設帶有類標識的訓練樣本庫T, T={tl,l=1,2,… L}。訓練樣本庫T共有N類樣本。設訓練樣本tl的類標識為cl, cl ∈{0,1},其中, cl=1,表示該樣本屬於第n類, cl=0,表示該樣本不屬於第n類。
    下面對第n類進行訓練。設第n類的專家庫為Pooln,訓練初始時, Pooln=φ。對每個訓練樣本tl∈T, l=1,2,… L做以下處理:
    設詞典為Dict,對訓練樣本tl進行切詞,提取詞典Dict中出現的中文詞,構成關鍵詞集合
 
    (1)
 
  關鍵詞對判斷tl是否屬於第n類有兩種貢獻: 屬於第n類和不屬於第n類,定義前者為1,後者為0。因此,構成關鍵詞訓練集合
 
    (2)
 
  設1的權重為正權重的權重為負權重,對關鍵詞訓練集合中的關鍵詞權重進行初始化
 
    (3)
 
    歸一化關鍵詞的權重,設為的歸一化值,則
 
    (4)
 
    當不考慮詞頻資訊時,判別準則為
 
    (5)
 
    選取參數θc∈(0,1),計算式(5): 如果yl>θc,判為n類,否則,判為非n類。
    由於文章中關鍵詞出現的頻率也在一定程度上反映了文章的主題,在對中文切詞過程中,可以統計每個關鍵詞出現的次數。設訓練樣本tl的關鍵詞w的詞頻為。這裡為中文網頁的文本部分的詞頻。
    考慮網頁的特點,它與普通的中文文本不同之處在於WWW網頁除純文字資訊以外,還有其他描述資訊,如標題、頁面描述、關鍵詞和超連結等。這些描述資訊中出現的關鍵詞包含網頁的重要訊息,對分類有較大的作用。因此,從網頁中提取這些資訊,引入加權的詞頻參數,對自動分類比較重要。
    設訓練樣本tl的關鍵詞在標題、頁面描述、關鍵詞、超連結中的詞頻分別為和。總詞頻為
 
    (6)
 
  其中: a, b, c, d是大於零的可調參數。
    考慮關鍵詞詞頻和網頁的頁面標記,見式(6),準則式(5)可寫為
 
    (7)
 
  當時,式(7)與式(5)相同;當a=b=c=d=0時,,此時,忽略網頁的標記資訊,只考慮網頁的文本部分的詞頻。
    根據式(7),更新關鍵詞權重。設參數β∈(0,1)為衰減係數,進行本類樣本訓練(cl=1)時,
 
    (8)
 
    設為關鍵詞的整體權重,令,如果只用本類樣本進行訓練,某些對分類無意義的關鍵詞,如“他們”,“沒有”等的正權重很高,即,使得很大。因此,在訓練時,加入非本類樣本訓練,以降低對各類貢獻比較平均的關鍵詞的整體權重。
    非本類樣本訓練(cl=0)時,
 
    (9)
 
    歸一化關鍵詞權重,使得更新前後權重之和不變。設S0, S1分別為更新權重前、後的關鍵詞正、負權重之和,即
 
    (10)
    (11)
 
  則,歸一化的權重為
 
    (12)
 
    用本次訓練的結果更新專家庫,即
 
    (13)
 
  2.2 識別演算法
    設有N類專家庫P={Pooln,n=1,…,N},其中, Pooln是按上述的訓練演算法得到的第n類的專家庫,待識別樣本集R={rm,m=1,…,M}。
    識別步驟與訓練基本相同,只是不做(8)式以後的各步。對每個待識別樣本rm,根據(7)式,計算rm對第n類的值ymn,得到集合Ym={ymn,n=1,…,N}。如果ymj=maxYm則將rm判為第j類。
 
  3 實驗結果與分析
 
    定義分類識別率: 有N類待識別樣本,根據2.2的演算法進行分類。對某一類的樣本,識別率為
 
    (14)
 
    從網路搜尋器收集的大量中文網頁中,選用了包括足球類、電腦類、醫學類、雜誌類的樣本共16 200篇。實驗過程中,可調參數: β=0.5, θc=0.5, a=1, b=1, c=1, d=1。詞典: 二字詞32 826個, 三字詞7 195個, 四字詞16 699個, 五字詞以上2 469個。
 
  3.1 字間相關性對識別效能的影響
    採用無詞頻參數(即式(6)中, ),並且只用足球類樣本對足球類進行訓練,即訓練時省略式(9)。識別結果如表1所示。
    從表1可以看出,對中文網頁,忽略字間的相關資訊,用單字作關鍵詞,識別率較低。考慮兩個字的相關性,識別率比單字有較大提高。如果保留二字詞和三字詞或用詞典中所有的詞作關鍵詞,識別率更高。因此,在訓練時,保留必要的字間相關資訊對網頁的分類非常重要。
 
  表1 足球類識別結果
 
 
  方法 p×100
  單字 62.2
  二字詞 88.8
  二至三字詞 89.8
  二至四字詞 90.8
  二至五字詞 90.8
  整個詞典 91.4
 
   
  3.2 本類和非本類樣本訓練對自動分類的影響
    用足球類和醫學類樣本分別對各自的本類進行訓練; 然後,用其他類樣本分別對足球和醫學類進行非本類訓練。忽略關鍵詞的詞頻參數(即式(6)中,)。識別結果如表2所示。
 
  表2 足球類和醫學類識別正確率p
 
 
  方 法 p×100
  足球類 醫學類
  只用本類訓練  79.0 51.6
  加入非本類訓練 85.9 70.0
 
 
    由表2可以看出,通過加入非本類樣本訓練,可以較大程度地提高識別正確率。
  3.3 詞頻對演算法的影響
    採用詞典提取關鍵詞,用醫學類樣本對醫學類進行訓練,並且不採用非本類訓練,即省略式(9)。比較加入詞頻參數,以及網頁的標題等資訊的識別結果,如表3所示。
 
  表3 醫學類識別結果
 
 
  方 法 p×100
  不考慮詞頻參數 50.6
  文本詞頻 51.6
  詞頻+標題 52.6
  詞頻+描述 52.6
  詞頻+關鍵詞 51.8
  詞頻+超連結 52.2
  詞頻+所有描述資訊 53.6
 
 
    由表3可以看出,通過詞頻和頁面描述資訊進行加權調整,在訓練和識別時,加大那些在網頁文本部分出現頻率高的詞以及標題、描述、關鍵詞、超連結中的詞的權重,可以提高識別率。
  4 結 論
 
    針對互連網的搜尋引擎在資訊資源群組織方面的不足,提出了中文網頁自動分類的訓練與識別演算法。該演算法利用詞典提取關鍵詞,以保留必要的字間相關資訊,並對詞頻和網頁描述資訊進行加權。在訓練過程中,採用本類和非本類樣本訓練。實驗表明,這種演算法可達到80%以上的識別率。■
 
  基金項目:國家自然科學基金項目(69625103)
  作者簡介:張俐 (1972-), 女(漢), 河北, 博士研究生 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.