孫亮
(蘭州文理學(xué)院 數(shù)字媒體學(xué)院,甘肅 蘭州 730000)
互聯(lián)網(wǎng)技術(shù)和 IT 領(lǐng)域的飛速發(fā)展,致使我們已經(jīng)進(jìn)入信息化的潮流時(shí)代。文本分類算法一直以來都是自然語言處理范疇的鉆研熱門[1]。文本分類算法在僅僅只有機(jī)器學(xué)習(xí)的背景下已經(jīng)比較成熟了,并有較好的模型成果展示[2]。隨著自媒體時(shí)代的發(fā)展,新聞多且雜亂,文本分類算法在新聞分類系統(tǒng)的應(yīng)用研究則更具有重要意義。國內(nèi)外學(xué)者相繼對(duì)各類分類模型和算法進(jìn)行構(gòu)建與改進(jìn)并加以優(yōu)化。例如K 最近鄰方法、神經(jīng)網(wǎng)絡(luò)、樸素貝葉斯方法、決策樹方式等,被接連不斷地改進(jìn)與改良。在實(shí)際應(yīng)用方面,文本分類有效解決了文本資源獲取速度慢且存儲(chǔ)結(jié)構(gòu)十分混亂的問題,文本分類技術(shù)整合已有的信息資源,讓使用者可以快捷方便、高速準(zhǔn)確地找到自身需要的文本資源。
文本分類一直在原始語言處理范疇中處于研究熱點(diǎn)的地位[3]。信息檢索領(lǐng)域的經(jīng)典研究課題一直是文本分類如何在海量搜集的網(wǎng)絡(luò)文本信息中迅速準(zhǔn)確地篩選定位出所需要的信息[4]。一般包含新聞內(nèi)容數(shù)據(jù)的爬取、預(yù)處理新聞樣本、提取具有代表性的詞句、選擇分類算法或分類器。在這幾個(gè)步驟中,特征的選擇和核心分類算法或分類器的選用關(guān)乎整個(gè)系統(tǒng)的準(zhǔn)確性,也決定著文本分類結(jié)果的優(yōu)良性。
K-最近鄰分類算法是基于類比的學(xué)習(xí)算法當(dāng)中的一種[5]。對(duì)某個(gè)待分類的測試文本,經(jīng)由算法計(jì)算此文本與其他訓(xùn)練集文本之間的距離,找到在其附近的K個(gè)訓(xùn)練集文本,致使將要分類的文本分為最為普通常見的K類訓(xùn)練集文本。點(diǎn)x=(x1,x2,…,xn)和點(diǎn)y=(y1,y2,…,yn)之間的距離計(jì)算方式如公式(1)所示:
(1)
該方法優(yōu)點(diǎn)明顯,簡單有效,但因?yàn)槠湓谟?xùn)練過程中,具有線性的時(shí)間復(fù)雜度、空間復(fù)雜度,所以當(dāng)數(shù)據(jù)計(jì)算有相當(dāng)龐大的度量時(shí),訓(xùn)練集文本的計(jì)算速度有限,消耗的時(shí)間過長。在文本訓(xùn)練樣本分布極不均勻時(shí),數(shù)據(jù)較少的類別會(huì)被忽略,最終導(dǎo)致文本分類系統(tǒng)的誤判。
決策樹有著類似于流程圖一般的樹結(jié)構(gòu)[6],其分類過程大致分為三個(gè)過程:一是參照已知的訓(xùn)練集的訓(xùn)練結(jié)果,構(gòu)建相應(yīng)的判定樹;二是對(duì)該樹進(jìn)行剪枝操作;三是制訂分類規(guī)則。為了讓該樹中有作用的分支節(jié)點(diǎn)依然存在,降低無用詞對(duì)訓(xùn)練集的影響,剪枝操作不可避免,重要性顯而易見,且這個(gè)操作對(duì)順序的先后沒有要求。最后,簡單提取過程進(jìn)行中所需要的分類規(guī)則。有價(jià)值的信息內(nèi)容存在于該路線上的每個(gè)節(jié)點(diǎn),而所謂的葉節(jié)點(diǎn)指的是預(yù)測信息,即為分類結(jié)果。決策樹算法體現(xiàn)了分而治之的思想,構(gòu)建過程采用遞歸策略完成。決策樹生成的算法通俗易懂,且分類準(zhǔn)確率高,修剪枝丫的策略也可以減少噪聲詞的影響。但是,伴隨著數(shù)據(jù)規(guī)模的逐漸增加,計(jì)算量也會(huì)增加,其效率也就會(huì)不盡如人意了。
文本分詞的目的是用空格作為分隔符,一個(gè)詞一個(gè)詞地分割原始文本。對(duì)于切分詞的算法主要有三種:一類是基于字符串匹配,這種算法通常有正向和反向最大兩類順序;另一類是基于句法的語義分析;還有一類是基于統(tǒng)計(jì)的詞頻計(jì)算。中文文本分詞是處理自然語言的首要步驟,況且與其他語言書寫不一樣的是,中文在詞與詞之間的界限十分模糊,分詞時(shí)不好辨別,處理起來相對(duì)困難。英文單詞的詞與詞之間使用空格間隔開來,界限不容易混淆,所以在進(jìn)行中文文本分詞的過程中,最關(guān)鍵的一步是將文本內(nèi)的單詞按照中文的語法含義進(jìn)行分割,而切分下來的詞,其質(zhì)量的高低將會(huì)直接影響后面分類系統(tǒng)結(jié)果的準(zhǔn)確率。jieba分詞技術(shù)是當(dāng)前國內(nèi)最流行的開源的中文分詞工具,它支持多種分詞功能。本系統(tǒng)采用的是自定義詞典添加。jieba分詞工具包含精確模式、完整模式和搜索引擎模式三種分詞模式。具體分詞界面和主要模塊如表1所示:
表1 分詞模式表
樸素貝葉斯算法可以用來進(jìn)行新聞文本的分類。貝葉斯理論的核心是統(tǒng)計(jì)概率后,在某一類別中數(shù)值較大,則認(rèn)定其從屬于這一相應(yīng)的類別,即選擇概率最高的決策。這也是樸素貝葉斯決策理論的核心。用到的貝葉斯準(zhǔn)則公式如(2)所示:
(2)
在經(jīng)過公式中的先驗(yàn)概率和條件概率的計(jì)算后,直接在產(chǎn)生后驗(yàn)概率中使用其計(jì)算結(jié)果,所得到的結(jié)論就是分類結(jié)果,其計(jì)算出的后驗(yàn)概率的數(shù)值最大,符合樸素貝葉斯決策的核心思想如公式(3)所示:
y=arg maxP(Y=c)∏jP(Xj=xj|Y=c)
(3)
由于此新聞分類系統(tǒng)面向應(yīng)用,因此需具有很重要的分類效率,所以將系統(tǒng)分為樣本集的文本處理和分類階段,盡量在處理過程中計(jì)算所需要的數(shù)據(jù),并利用文件數(shù)據(jù)庫保存數(shù)據(jù),這樣新聞分類系統(tǒng)在分類的階段時(shí),會(huì)最大程度上節(jié)省概率計(jì)算的時(shí)間,提高分類的速度,更快地得到分類的結(jié)果。
通過對(duì)樸素貝葉斯分類過程的一般了解,繪制了與之相關(guān)的流程圖,樸素貝葉斯算法在文本分類中的整體操作過程如圖1所示:
圖1 總體運(yùn)算流程
新聞分類系統(tǒng)中預(yù)處理模塊的執(zhí)行過程具體描述如下:
(1)獲取經(jīng)過深度學(xué)習(xí)技術(shù)處理后的文本訓(xùn)練樣本,處理后的樣本已經(jīng)被分類成功,是極具代表性的分類新聞,將其一起進(jìn)行訓(xùn)練,其進(jìn)度結(jié)果按照50個(gè)文本訓(xùn)練樣本為一次顯示;
(2)去掉“騰訊科技”“騰訊金融”“新華網(wǎng)”等詞,添加jieba分詞技術(shù)自帶的自定義詞典,然后根據(jù)詞典利用jieba分詞技術(shù)進(jìn)行分詞,自定義詞典龐大的數(shù)據(jù)量,可以使分詞結(jié)果更加準(zhǔn)確、完整;
(3)從配置文件中讀取現(xiàn)成的停用詞表,在已經(jīng)處理好分詞的新聞文本訓(xùn)練樣本中進(jìn)行過濾刪除表中的停用詞,得到更加純粹的文本訓(xùn)練樣本,并計(jì)算提取詞語的詞頻;
(4)計(jì)算去除停用詞后留下的獨(dú)立詞語列表中的各個(gè)詞語的詞頻,輸出詞語列表及其統(tǒng)計(jì)結(jié)果。汽車類的特征詞及詞頻集合如圖2所示:
圖2 剩余詞語列表結(jié)論
(5)記錄某一類文本訓(xùn)練樣本中的特有的詞的數(shù)目,即特征詞,以及所有文本訓(xùn)練樣本中的所有詞的數(shù)目,統(tǒng)計(jì)詞頻結(jié)果如圖3所示:
圖3 統(tǒng)計(jì)結(jié)果
從圖3中可以看出,在原始文本數(shù)據(jù)被預(yù)處理之后,該模塊會(huì)最終導(dǎo)致其表示為文件樣本中獨(dú)立的詞語集合。然后,可以通過根據(jù)停用詞表中包含的停用,在已經(jīng)分詞結(jié)束的基礎(chǔ)上去除停用詞,簡單粗暴地計(jì)算所有文本樣本的非重復(fù)詞和所有文本訓(xùn)練樣本中的詞語,分別得到所有類別的詞頻和所有文本訓(xùn)練樣本的單詞數(shù)。
新聞分類系統(tǒng)中特征概率計(jì)算模塊的執(zhí)行過程中,統(tǒng)計(jì)量的計(jì)算采用概率=詞頻/(所
有文本訓(xùn)練樣本的所有單詞的詞頻+所有文本訓(xùn)練樣本的所有單詞個(gè)數(shù))這一公式,根據(jù)對(duì)應(yīng)公式計(jì)算詞頻的概率,并對(duì)標(biāo)特征詞的概率進(jìn)行由高到低的排序,將其寫入到文件數(shù)據(jù)庫中進(jìn)行保存,以便測試文本樣本分類時(shí)獲取。若有詞未被記錄在之前預(yù)處理模塊得到的文件數(shù)據(jù)庫中,我們就認(rèn)為這是個(gè)噪聲詞,將其舍棄或者將詞頻記位1,再根據(jù)公式去計(jì)算得出概率。根據(jù)文本分類研究,知道新聞分類的基本單元是特征詞。應(yīng)該選擇代表性強(qiáng)、含有豐富信息的詞語作為整個(gè)新聞的特色詞。獲取的這些特征詞既要充分反映新聞內(nèi)容和新聞?lì)悇e信息,又要區(qū)別于其他訓(xùn)練文本,得到分類結(jié)果就會(huì)準(zhǔn)確又高效。在本研究開發(fā)的系統(tǒng)中,采用樸素貝葉斯公式對(duì)其進(jìn)行了公式化的統(tǒng)計(jì)概率,用以計(jì)算特征詞和類別之間的依賴關(guān)系,從而得到分類結(jié)果。
以下為財(cái)經(jīng)類新聞的特征詞的概率結(jié)果如圖4所示:
圖4 計(jì)算結(jié)果
為了方便觀察分析,對(duì)7大類新聞文本訓(xùn)練樣本利用公式進(jìn)行詞頻概率的計(jì)算,將得到統(tǒng)計(jì)值由大到小的排序,得出了圖4的結(jié)果。特征概率計(jì)算模塊是以分詞后的新聞測試文本為輸入,采用的是樸素貝葉斯概率統(tǒng)計(jì)的公式。從圖4可以看出這些詞幾乎全是與財(cái)經(jīng)相關(guān)的特征詞,說明了用部分樸素貝葉斯算法計(jì)算得出的概率值大的特征詞與財(cái)經(jīng)類之間的關(guān)聯(lián)性越強(qiáng),會(huì)使其進(jìn)行分類的結(jié)果更加準(zhǔn)確,說明所采用的特征提取和概率計(jì)算的方法是有效的。
樸素貝葉斯分類模塊包括兩部分:樣本處理以及分類。首先是計(jì)算特征詞集合的詞頻概率,把相應(yīng)特征詞先驗(yàn)概率數(shù)據(jù)寫入文件數(shù)據(jù)庫,在文本預(yù)處理和特征提取模塊階段可以直接使用數(shù)據(jù),并使用樸素貝葉斯算法進(jìn)行分類。在新聞樣本的處理階段,對(duì)文本樣本進(jìn)行上述的兩個(gè)模塊的處理后,計(jì)算出每個(gè)詞的詞頻和概率,將其結(jié)果寫入兩個(gè)文件數(shù)據(jù)庫中,便于之后測試文本時(shí)進(jìn)行調(diào)用。當(dāng)新聞測試文本被分類時(shí),可以直接從文件數(shù)據(jù)庫中讀取之前保存的數(shù)據(jù),然后采用樸素貝葉斯公式,計(jì)算所有詞概率的總和,數(shù)值最大所對(duì)應(yīng)的類別,就是相應(yīng)新聞測試文本的屬于的類別,這個(gè)結(jié)論作為新聞分類的結(jié)果。最后,將測試得到的分類結(jié)果寫入文件數(shù)據(jù)庫,并加以保存。結(jié)果全部寫入文件數(shù)據(jù)庫保存。在分類階段時(shí)再把數(shù)據(jù)從數(shù)據(jù)庫讀入內(nèi)存,這樣就可以使分類的效率很高。
本研究在探索了國內(nèi)外文本分類技術(shù)的近況以及相關(guān)算法的基礎(chǔ)上,采用了樸素貝葉斯分類算法,完成了一個(gè)簡單快速的新聞分類系統(tǒng)。此系統(tǒng)主要分為文本預(yù)處理模塊、特征提取計(jì)算概率模塊、新聞分類模塊以及測試分類數(shù)據(jù)模塊。在此系統(tǒng)中,可以根據(jù)所含新聞內(nèi)容而設(shè)定的類別,如財(cái)經(jīng)、科技、汽車、房產(chǎn)、體育、娛樂等,完成文本處理過程,經(jīng)過樸素貝葉斯分類算法的核心處理,用于分類未知的新聞,并將其歸類到同樣的類別之下。相對(duì)人工分類而言,本系統(tǒng)更加方便,快捷,可以把結(jié)果保存在文件數(shù)據(jù)庫中,不易丟失,又便于下一次的分類提取,它還可以避免人為主觀錯(cuò)誤判斷造成的分類錯(cuò)誤和數(shù)據(jù)缺乏。與常用的分類系統(tǒng)相比,該系統(tǒng)在選取新聞文本訓(xùn)練樣本上采用了已經(jīng)經(jīng)過深度學(xué)習(xí)模型處理后的分類樣本,然后基于樸素貝葉斯分類算法進(jìn)行概率計(jì)算,在一定程度上提高了新聞文本分類的準(zhǔn)確性,具有更好的分類效果。