劉鑫昊,譚慶平,曾 平,唐國(guó)斐
(國(guó)防科學(xué)技術(shù)大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,湖南 長(zhǎng)沙 410073)
幾種基于MOOC的文本分類算法的比較與實(shí)現(xiàn)
劉鑫昊,譚慶平,曾平,唐國(guó)斐
(國(guó)防科學(xué)技術(shù)大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,湖南 長(zhǎng)沙410073)
機(jī)器學(xué)習(xí)是人工智能的主要內(nèi)容之一,文本分類正是機(jī)器學(xué)習(xí)中典型的監(jiān)督學(xué)習(xí)場(chǎng)景。而機(jī)器學(xué)習(xí)在在線教育平臺(tái)中的應(yīng)用正是現(xiàn)階段的發(fā)展趨勢(shì)。首先介紹了文本分類的背景及意義,文本分類系統(tǒng)中的文本預(yù)處理部分,介紹了信息增益算法、主要成分分析等相關(guān)技術(shù);文本分類的分類算法部分,主要介紹了AdaBoost技術(shù)。在遵循文本分類流程的基礎(chǔ)上,設(shè)計(jì)了一個(gè)3模塊文本分類系統(tǒng):一、中文分詞及去停止詞模塊;二、文本向量化及特征降維模塊;三、分類器模塊。文本分類系統(tǒng)的具體實(shí)現(xiàn)上,全部采用開(kāi)源工具完成,使用Ansj實(shí)現(xiàn)模塊一,Weka實(shí)現(xiàn)模塊二、三。按照文本分類流程,利用文本分類系統(tǒng)進(jìn)行了實(shí)驗(yàn),并對(duì)實(shí)驗(yàn)中得到的數(shù)據(jù)進(jìn)行了分析和總結(jié)。為了提升最后的分類效果,在特征降維這一步中,添加了IG-LSA(信息增益(IG)-潛在語(yǔ)義分析(LSA))的混合降維方法。
文本分類,機(jī)器學(xué)習(xí),特征選擇,特征抽取
本文著錄格式:劉鑫昊,譚慶平,曾平,等. 幾種基于MOOC的文本分類算法的比較與實(shí)現(xiàn)[J]. 軟件,2016,37(9):27-33
在當(dāng)今的信息時(shí)代,Internet已經(jīng)大規(guī)模普及,借助互聯(lián)網(wǎng)技術(shù)的發(fā)展,每天我們所生活的這個(gè)世界都會(huì)出現(xiàn)大量的信息,信息的增長(zhǎng)速度絕對(duì)是前人無(wú)法想像的,而這其中,各種電子文檔、電子郵件和網(wǎng)頁(yè)一方面豐富著網(wǎng)絡(luò),另一方面也對(duì)信息管理提出了更高的要求。在這樣的條件下,本文致力于處理MOOC在線教育平臺(tái)中課程、課件以及相關(guān)論壇中的討論信息,對(duì)先關(guān)信息進(jìn)行處理、分析,以便于得到有用的信息,對(duì)老師和學(xué)生提出改進(jìn)性的建議,便于MOOC在線教育平臺(tái)更好的發(fā)展。而利用機(jī)器完成自動(dòng)文本分類,時(shí)間和資源開(kāi)銷得到有效控制的情況下,文本分類效果也能滿足人們對(duì)分類的需求。除此之外,文本分類技術(shù)在信息過(guò)濾、信息檢索、文本數(shù)據(jù)庫(kù)、數(shù)字化圖書(shū)館、搜索引擎等諸多領(lǐng)域也都得到了廣泛的應(yīng)用。
本文對(duì)文本分類[1]算法進(jìn)行了研究,文本分類的主要流程如圖1.1所示,本文設(shè)計(jì)實(shí)現(xiàn)了一個(gè)多分類文本分類系統(tǒng),采用不同特征抽取,結(jié)合不同分類算法進(jìn)行實(shí)驗(yàn),分析對(duì)比了實(shí)驗(yàn)結(jié)果,給出了結(jié)論,給出一種最具有時(shí)效性的,能夠短期內(nèi)滿足需求的解決方法——分類器組合。
圖1 .1 文本分類流程
文章重點(diǎn)介紹了文本預(yù)處理、分類器選擇、分類器優(yōu)化以及實(shí)驗(yàn)四個(gè)部分,介紹了中文分詞[2]、去停止詞,文本表示(即轉(zhuǎn)換為更適合機(jī)器學(xué)習(xí)的向量空間模型( VSM)),以及為了降低特征維度所采用的幾個(gè)特征提取算法:信息增益IG,潛在語(yǔ)義分析LSA,主成分分析PCA。以及屬Booosting類算法的Addaboost算法。最后進(jìn)行全文總結(jié)。
在進(jìn)行文本分類時(shí),由于文本文件中的文本內(nèi)容以字符串的形式存儲(chǔ),無(wú)法直接被計(jì)算機(jī)處理用于文本分類,所以,必須對(duì)所用文本數(shù)據(jù)進(jìn)行處理,轉(zhuǎn)換為計(jì)算機(jī)能直接處理,適用于文本分類的形式,而這一過(guò)程,稱之為文本預(yù)處理。主要包括中文分詞、去停止詞、詞頻統(tǒng)計(jì)等。這里重點(diǎn)介紹信息增益、潛在語(yǔ)義分析和主要成分分析。
2.1信息增益
信息增益(information gain)[3,4]是特征選擇時(shí)常用的一個(gè)評(píng)估算法,在信息增益中,重要性的衡量標(biāo)準(zhǔn)就是特征能夠?yàn)榉诸愊到y(tǒng)帶來(lái)信息的多少,一個(gè)特征帶來(lái)的信息越多,信息量越大,該特征越重要。
信息增益是針對(duì)一個(gè)個(gè)特征而言的,計(jì)算信息增益,就是看一個(gè)系統(tǒng)中,存在特征ti和不存在特征ti時(shí)系統(tǒng)的信息量各是多少,其差值就是就是特征ti帶給系統(tǒng)的信息量,即增益。存在特征ti時(shí)系統(tǒng)的信息量可直接由熵值計(jì)算公式得出。而系統(tǒng)不含特征ti的熵值無(wú)法直接得到,所以采用固定ti的方法得到,即將特征ti固定為每一個(gè)可能取值Xi,算出此時(shí)熵值,然后根據(jù)概率Pi取均值。
2.2潛在語(yǔ)義分析
潛在語(yǔ)義分析LSA[5](Latent Semantic Analysis)屬于特征抽取類算法,它首先利用統(tǒng)計(jì)計(jì)算的方法,先行分析數(shù)據(jù)集,進(jìn)而提取出詞與詞之間潛存的語(yǔ)義結(jié)構(gòu),并使用這種潛在的語(yǔ)義結(jié)構(gòu),表示詞和文本,以消除詞之間的相關(guān)性和簡(jiǎn)化文本向量,最終實(shí)現(xiàn)降維的目的。
潛在語(yǔ)義分析的基礎(chǔ)是奇異值分解SVD[6](Singular Value Decomposition),利用SVD把高維的向量空間模型(VSM)表示的文本映射到低維的潛在語(yǔ)義空間中。SVD是線性代數(shù)中一種重要的矩陣分解,是矩陣分析中正規(guī)矩陣酉對(duì)角化的推廣。在信號(hào)處理、統(tǒng)計(jì)學(xué)等領(lǐng)域有重要應(yīng)用。
假設(shè)M是一個(gè)m×n階矩陣,其中的元素全部屬于域K,也就是實(shí)數(shù)域或復(fù)數(shù)域。如此存在一個(gè)分解使得:
X:m×m階酉矩陣;Y:半正定m×n階對(duì)角矩陣;Z*:Z的共軛轉(zhuǎn)置,是n×n階酉矩陣。這樣的分解稱作M的奇異值分解。Y對(duì)角線上的元素Yi,i即為M的奇異值。常見(jiàn)做法是由大到小排列奇異值。如此由M唯一確定Y(X、Z仍不能確定)。
2.3主要成分分析
主成分分析PCA(Principal Component Analysis),是一種特征提取常用的方法。主成分分析將多個(gè)變量通過(guò)線性變換以選出較少個(gè)數(shù)重要變量。主成分分析PCA主要方法是通過(guò)對(duì)協(xié)方差矩陣進(jìn)行特征分解[7],以得出數(shù)據(jù)的主成分(即特征向量)與它們的權(quán)值(特征值[8])。
在很多情況下,特征與特征之間具有一定的相關(guān)關(guān)系,當(dāng)兩個(gè)特征之間有一定相關(guān)關(guān)系時(shí),可以理解為這兩個(gè)特征代表的類別的信息有一定的重疊。主成分分析PCA對(duì)于原有特征集,重新構(gòu)建盡可能少特征的新特征集,并且使得新特征集中的這些新特征是兩兩不相關(guān)的,而且這些新特征在反映類別的信息方面盡可能保持原有的信息。
主成分分析作為一種分析、簡(jiǎn)化數(shù)據(jù)集的技術(shù),經(jīng)常用于減少數(shù)據(jù)集的維數(shù),同時(shí)保持?jǐn)?shù)據(jù)集中的對(duì)方差貢獻(xiàn)最大的特征。這是通過(guò)保留低階主成分,忽略高階主成分做到的。這樣低階成分往往能夠保留住數(shù)據(jù)的最重要方面。但是,這也不是一定的,要視具體應(yīng)用而定。由于主成分分析依賴所給數(shù)據(jù),所以數(shù)據(jù)的準(zhǔn)確性對(duì)分析結(jié)果影響很大。
主成分分析PCA是最簡(jiǎn)單的以特征量分析多元統(tǒng)計(jì)分布的方法。其結(jié)果可以理解為對(duì)原數(shù)據(jù)中的方差做出解釋:哪一個(gè)方向上的數(shù)據(jù)值對(duì)方差的影響最大?換而言之,PCA 提供了一種降低數(shù)據(jù)維度的有效辦法;如果分析者在原數(shù)據(jù)中除掉最小的特征值所對(duì)應(yīng)的成分,那么所得的低維度數(shù)據(jù)必定是最優(yōu)化的(這樣降低維度也必定是失去信息量最少的方法)。
目前很多分類算法被研究者從不同角度提出,判斷不同分類算法的好壞可以由準(zhǔn)確率、速度、健壯性、可伸縮性、可解釋性等幾個(gè)標(biāo)準(zhǔn)來(lái)衡量。經(jīng)典的分類算法在不同的領(lǐng)域取得成功,比如貝葉斯算法、決策樹(shù)算法、支持向量機(jī)算法等。針對(duì)MOOC在線教育平臺(tái)的數(shù)據(jù)處理中,通過(guò)實(shí)驗(yàn)發(fā)現(xiàn),相比于其他算法,Adaboost算法在處理這些數(shù)據(jù)上有一定的優(yōu)勢(shì)。因此這里具體介紹一下Adaboost算法。
Adaboost[9]是英文“Adaptive Boosting”(自適應(yīng)增強(qiáng))的縮寫(xiě),是一個(gè)能提高文本分類算法效果的一種迭代算法,Adaboost屬于Boosting類算法[10]的代表算法,Adaboost本身并不分類,而是旨在由弱分類器構(gòu)成強(qiáng)分類器。Boosting方法是一種在弱分類算法基礎(chǔ)上提高準(zhǔn)確度的方法,它是一種框架算法,首先對(duì)樣本集S操作獲得樣本子集S1,然后用弱分類算法在樣本子集S1上訓(xùn)練生成的基分類器C1。將弱分類算法生成的基分類器C1放于Boosting框架中,通過(guò)Boosting框架對(duì)訓(xùn)練樣本集的操作,得到新的訓(xùn)練樣本子集S2,用該樣本子集S2去訓(xùn)練生成基分類器C2每得到一個(gè)樣本集Si就用該基分類算法在該樣本集Si上產(chǎn)生一個(gè)基分類器Ci,這樣在給定訓(xùn)練輪數(shù)n后,就可產(chǎn)生n個(gè)基分類器,然后Boosting框架算法將這n個(gè)基分類器進(jìn)行加權(quán)融合,產(chǎn)生一個(gè)最后的結(jié)果分類器,在這n個(gè)基分類器中,每個(gè)單個(gè)的分類器C1的識(shí)別率不一定很高,但集合后的強(qiáng)分類器有很高的識(shí)別率,這樣便提高了弱分類算法的識(shí)別率。在產(chǎn)生單個(gè)的基分類器時(shí)可用相同的分類算法,也可用不同的分類算法,這些算法一般是不穩(wěn)定的弱分類算法,如神經(jīng)網(wǎng)絡(luò)(BP),決策樹(shù)(C4.5)等。
圖1 Boosting算法流程
圖1中,矩形代表過(guò)程,平行四邊形代表數(shù)據(jù)??倲?shù)據(jù)集S根據(jù)分發(fā)權(quán)值Di得到子數(shù)據(jù)集Si,經(jīng)過(guò)訓(xùn)練得到基分類器Ci,得到下一個(gè)基分類器Ci+1對(duì)應(yīng)的數(shù)據(jù)集分發(fā)權(quán)重Di+1。最終將所有基分類器整合,得到一個(gè)強(qiáng)分類器C。實(shí)際使用中,由于事先很難知道弱分類算法分類正確率的下限,所以Boosting算法在解決實(shí)際問(wèn)題時(shí)有重大缺陷。AdaBoost解決了這一問(wèn)題,文章以DSAE(降噪稀疏自動(dòng)編碼器)為弱分類器基本原型,調(diào)整層數(shù)以及激勵(lì)函數(shù)種類構(gòu)造不同條件下的弱分類器,使用NLPIR分詞系統(tǒng)提取文本特征,TF-IDF作為詞語(yǔ)的權(quán)值,根據(jù)該權(quán)值來(lái)選擇特征次,并統(tǒng)計(jì)詞頻作為文本特征訓(xùn)練集。AdaBoost方法使用的弱分類器只要不是隨機(jī)概率0.5,最終模型都會(huì)得到提高,因?yàn)榧词故褂玫娜醴诸惼鳒?zhǔn)確率小于0.5,只要權(quán)值Wi取負(fù)數(shù),最終模型也會(huì)提高準(zhǔn)確率。
AdaBoost每一輪利用前一個(gè)分類器分錯(cuò)的樣本Si,訓(xùn)練一個(gè)新的弱分類器Ci,直到的錯(cuò)誤率小于某一個(gè)閾值。每一個(gè)訓(xùn)練樣本最終都會(huì)被賦予一個(gè)相應(yīng)權(quán)重Di,對(duì)應(yīng)被其中某分類器選入訓(xùn)練集的概率。已經(jīng)被準(zhǔn)確地分類的樣本點(diǎn),會(huì)有更低概率被選入下一個(gè)訓(xùn)練集中;反之,概率就提高。如此通過(guò)不斷迭代的方式,AdaBoost方法最終能“聚焦”于那些弱分類器較難分樣本上。在具體實(shí)現(xiàn)時(shí),最初每個(gè)樣本的權(quán)重都一樣,每次迭代,根據(jù)權(quán)重選取樣本點(diǎn),進(jìn)而訓(xùn)練分類器Ci正確分類樣本的權(quán)重。更新過(guò)權(quán)重的樣本集又用于下一輪迭代,不斷跌待下去直到達(dá)到制定閾值。
這里的實(shí)驗(yàn)主要分為三個(gè)部分,分別是分詞及去停止詞模塊、特征降維模塊和分類器模塊。
4.1分詞及去停止詞模塊
分詞及去停止詞模塊承擔(dān)對(duì)中文文本的分詞及去停止詞兩個(gè)操作,輸入為語(yǔ)料庫(kù)中的文檔,輸出為已完成中文分詞及去停止詞的文檔。
中文分詞采用漢語(yǔ)詞法分析系統(tǒng)ICTCLAS (Institute of Computing Technology,Chinese Lexical Analysis System)的java實(shí)現(xiàn),工具Ansj。ICTCLAS由中國(guó)科學(xué)院計(jì)算技術(shù)研究所發(fā)布,無(wú)論是準(zhǔn)確率還是處理速度都較同類算法有很大的優(yōu)勢(shì)。是目前最好的中文分詞開(kāi)源系統(tǒng)。分詞系統(tǒng)中的分詞數(shù)據(jù)結(jié)構(gòu)采用tire樹(shù)結(jié)構(gòu),也就是詞典樹(shù),一種哈希樹(shù)變種。常見(jiàn)應(yīng)用于統(tǒng)計(jì)和排序大量的字符串(不僅限字符串),所以也常被搜索引擎系統(tǒng)用于文本的詞頻統(tǒng)計(jì)。
4.2特征降維模塊
文本向量化及降維模塊將原始的多文檔形式的語(yǔ)料庫(kù)轉(zhuǎn)換為單一文件,內(nèi)部結(jié)構(gòu)為VSM[11],然后在此基礎(chǔ)上實(shí)現(xiàn)特征提取。輸入為包含多文檔的文件夾,各類文檔文件存放于類同名子文件夾中。輸出為單文件。模塊功能的具體實(shí)現(xiàn)由調(diào)用Weka完成,先將文件夾轉(zhuǎn)化為單文件,然后統(tǒng)計(jì)計(jì)算生成詞的TF-IDF值,并以此作為VSM的權(quán)值把的數(shù)據(jù)向量化,轉(zhuǎn)化為VSM,最后得到單文件的ARFF(Weka定義及使用的機(jī)器學(xué)習(xí)用文件格式)文件,而其中SMO優(yōu)化算法(Sequential minimal optimization)[12],由Microsoft Research的John C.Platt在1998年提出,并稱為最快的二次規(guī)劃優(yōu)化算法,特別針對(duì)線性SVM和數(shù)據(jù)稀疏性能更優(yōu)。
降維使用的算法方面, 特征選擇和特征抽取算法都會(huì)采用,特征選擇算法方面,考慮到以詞作為特征,選擇了信息增益IG算法[13],因?yàn)槠鋵?duì)詞特征的評(píng)估比較適合;特征提取算法方面,主題模型類算法選擇了潛在語(yǔ)義分析LSA,非主題模型類算法采用了主成分分析PCA,這兩個(gè)算法都能適用于文本分類的任務(wù)。
一般情況下,特征選擇和特征抽取兩者在一個(gè)分類任務(wù)里只有一種會(huì)被采用,兩種方法各有自己特點(diǎn)、優(yōu)劣,但是很少有直接兩者一起使用的。所以,本次實(shí)驗(yàn),增加了一個(gè)特征選擇和特征抽取兩者混合使用進(jìn)行降維的方法,稱之為IG-LSA,具體為先使用IG進(jìn)行初步降維,然后使用LSA進(jìn)一步降維這樣混合的兩步降維方法。先使用IG進(jìn)行初步降維后特征集的平均熵值較之前能得到提高,這樣的特征集再使用LSA進(jìn)行在此降維,理論上,得到的數(shù)據(jù)集相較僅使用LSA得到的數(shù)據(jù)集在分類器上能有更好的表現(xiàn)。
4.3分類器部分
分類器模塊實(shí)現(xiàn)訓(xùn)練分類器及測(cè)試分類器的功能。訓(xùn)練部分,輸入為已經(jīng)過(guò)降維處理的數(shù)據(jù)集,選擇目標(biāo)分類算法后利用訓(xùn)練數(shù)據(jù)即可獲得一個(gè)對(duì)應(yīng)的分類器;測(cè)試部分,輸入測(cè)試數(shù)據(jù),并用訓(xùn)練所得的分類器進(jìn)行測(cè)試,輸出測(cè)試結(jié)果。
訓(xùn)練及測(cè)試的具體實(shí)現(xiàn)由Weka[14]提供的強(qiáng)大機(jī)器學(xué)習(xí)算法集合提供,文本分類可用算法眾多,綜合考慮各算法的優(yōu)缺點(diǎn)后,選擇了樸素貝葉斯[15]、決策樹(shù)算法[16],由于支持向量機(jī)在分類問(wèn)題上表現(xiàn)優(yōu)異,是最好的分類器之一,所以選擇了SVM作為第3種分類算法,考慮到樸素貝葉斯以與決策樹(shù)并不穩(wěn)定,所以將樸素貝葉斯、決策樹(shù)與優(yōu)化后的AdaBoost算法結(jié)合進(jìn)行了對(duì)比實(shí)驗(yàn)。
5.1數(shù)據(jù)集
中文語(yǔ)料庫(kù)選擇:《Coursera研究數(shù)據(jù)集》。 選取文本類別及數(shù)量見(jiàn)表1,文本皆存放在所屬類同名子文件夾內(nèi),5個(gè)子文件夾存放于resource文件夾內(nèi)。經(jīng)過(guò)轉(zhuǎn)化后得到了可用于文本分類的“vsm.arff”,統(tǒng)計(jì)信息見(jiàn)表2。
表1 實(shí)驗(yàn)用語(yǔ)料
表2 vsm.arff統(tǒng)計(jì)信息
對(duì)vsm.arff進(jìn)行特征提取,采用的特征提取算法及保留特征集大小見(jiàn)表3. 最后得到的數(shù)據(jù)見(jiàn)表4,共80個(gè)數(shù)據(jù)集。
表3 特征抽取情況
表4 特征抽取后得到的數(shù)據(jù)集
IG50代表對(duì)vsm.arff使用IG,保留50個(gè)特征,得到IG50.arff;
IG-LSA,IG-PCA設(shè)定為使用IG時(shí)保留特征量為1000,然后使用LSA,PCA進(jìn)一步降維;
IG1000LSA5代表對(duì)vsm.arff使用IG保留1000個(gè)特征,然后使用LSA得5個(gè)特征,得到IG1000L SA50.arff;
5.2評(píng)估標(biāo)準(zhǔn)
P(Precision):準(zhǔn)確率,分類后,在某一特定類中,分對(duì)文本數(shù)/實(shí)際分到該類文本總數(shù)。
R(Recall):召回率,分類后,在某一特定類中,分對(duì)文本數(shù)/應(yīng)分到該類文本總數(shù)。
F-Measure又稱為F-Score,信息檢索時(shí)常用的評(píng)價(jià)標(biāo)準(zhǔn),計(jì)算公式為:
其中β是參數(shù),P是精確率(Precision),R是召回率(Recall)。當(dāng)參數(shù)β=1時(shí),就是最常見(jiàn)的F-1:
5.3實(shí)驗(yàn)結(jié)果
5.3.1樸素貝葉斯分類器實(shí)驗(yàn)結(jié)果
由F-1數(shù)據(jù)圖2可以看出,當(dāng)使用樸素貝葉斯分類器時(shí),隨著保留的特征數(shù)量下降,IG得到的數(shù)據(jù)集在樸素貝葉斯分類器上的表現(xiàn)也隨之下降,其他三種方法LSA、IG-LSA和IG-PCA則隨著保留特征數(shù)量的下降F-1值逐漸上升,但是使用IG總體準(zhǔn)確率依舊較其他三種特征抽取方法更高,僅當(dāng)特征保留數(shù)降至20,IG方法的F-1值被其他三種方法所超過(guò)。
表5 樸素貝葉斯分類器
圖2 樸素貝葉斯分類器F-1折線圖
5.3.2決策樹(shù)分類器實(shí)驗(yàn)結(jié)果
圖3,決策樹(shù)分類器F-1值折線圖中,IG方法F-1值隨特征保留量減少而下降,且特下降幅度逐漸增大。LSA、IG-LSA、IG-PCA三種方法則隨著特征保留量的下降,F(xiàn)-1值呈輕微穩(wěn)定上升趨勢(shì)。特征保留量小于50時(shí),IG方法表現(xiàn)降至4種方法最差一位。
表6 決策樹(shù)分類器
圖3 決策樹(shù)分類器F-1折線圖
5.3.3支持向量機(jī)分類器實(shí)驗(yàn)結(jié)果
從圖4可以看到,支持向量機(jī)分類器的實(shí)驗(yàn)部分,使用IG-LSA得到的數(shù)據(jù)集在分類器中的表現(xiàn)十分優(yōu)秀,F(xiàn)-1值已達(dá)99%以上。LSA和IG-PCA兩種方法最終實(shí)驗(yàn)結(jié)果F-1值也能達(dá)到92.7%~94.4%。從數(shù)據(jù)來(lái)看,隨著特征保留量減少,4種方法的表現(xiàn)都隨之下降。IG-LSA下降幅度極低,LSA和IG-PCA兩種方法較小,從94%左右下降到92%左右。IG方法下降較大,且下降幅度逐漸增大。
表7 支持向量機(jī)分類器
圖4 支持向量機(jī)分類器F-1折線圖
使用SMO已有相當(dāng)高的準(zhǔn)確率,所以AdaBoost實(shí)驗(yàn)部分只結(jié)合樸素貝葉斯和決策樹(shù)進(jìn)行實(shí)驗(yàn)。
5.3.4Adaboost-樸素貝葉斯分類器實(shí)驗(yàn)結(jié)果
圖5中,IG1,IG-LSA1折線為Adaboost-樸素貝葉斯分類器實(shí)驗(yàn)結(jié)果,IG2,IG-LSA2折線為樸素貝葉斯分類器實(shí)驗(yàn)結(jié)果。從圖中可以看出,使用IG時(shí),僅當(dāng)特征量為200時(shí),使用AdaBoost對(duì)樸素貝葉斯分類算法有提高作用,當(dāng)特征保留量更小時(shí),使用AdaBoost沒(méi)有提高作用。使用IG-LSA時(shí),AdaBoost對(duì)樸素貝葉斯分類算法提升很大,不過(guò)提升幅度逐漸減少。
表8 Adaboost-樸素貝葉斯分類器
圖5 Adaboost算法對(duì)比實(shí)驗(yàn)F-1實(shí)驗(yàn)圖
5.3.5Adaboost-決策樹(shù)分類器實(shí)驗(yàn)結(jié)果
圖6中,IG1,IG-LSA1折線為Adaboost-決策樹(shù)分類算法實(shí)驗(yàn)結(jié)果,IG2,IG-LSA2 折線為決策樹(shù)分類算法實(shí)驗(yàn)結(jié)果。從圖中可以看出,使用IG時(shí),使用改進(jìn)后的AdaBoost對(duì)決策樹(shù)分類算法有提高作用,但是隨著特征維數(shù)降低而減少。使用IG-LSA時(shí),使用改進(jìn)后的AdaBoost對(duì)決策樹(shù)算法有較大的穩(wěn)定提升。
表9 Adaboost-決策樹(shù)分類器
圖6 Adaboost-決策樹(shù)對(duì)比實(shí)驗(yàn)F-1折線圖
從5個(gè)分類實(shí)驗(yàn)的F-1值折線圖可以看出,使用IG時(shí),所有分類器的表現(xiàn)都隨著特征保留量的下降而下降,而使用特征抽取類算法如LSA,IG-PCA,IG-LSA時(shí),隨著特征保留量的下降,各分類器上的表現(xiàn)呈上升或保持原有水平。實(shí)驗(yàn)結(jié)果表明,當(dāng)直接使用詞作為特征時(shí),分類表現(xiàn)與特征保留量呈正相關(guān)關(guān)系,若計(jì)算機(jī)處理能力能夠接受的情況下,使用特征選擇降維時(shí)應(yīng)盡可能保留多的特征。
使用AdaBoost技術(shù)對(duì)分類算法的表現(xiàn)有一定的提升,當(dāng)使用IG作為降維算法,提升幅度與特征數(shù)呈正相關(guān),當(dāng)特征數(shù)降至一定程度后,AdaBoost技術(shù)帶來(lái)的提升可以基本忽略不計(jì);但是使用IGLSA作為降維算法時(shí),AdaBoost技術(shù)對(duì)分類算法能帶來(lái)穩(wěn)定的提升,且提升程度較高。
實(shí)驗(yàn)結(jié)果可以看到,IG-LSA的混合降維方法,無(wú)論相比IG還是LSA,得到的數(shù)據(jù)集在分類器上的表現(xiàn)都比較優(yōu)秀。詞與詞之間往往是存在聯(lián)系的,而特征抽取方法旨在消除這種聯(lián)系,重構(gòu)出詞與詞之間沒(méi)有聯(lián)系的新特征集。而在特征保留量較多時(shí),LSA,IG-PCA,IG-LSA在分類器上的表現(xiàn)反而較低。這說(shuō)明,當(dāng)特征保留量較多時(shí),LSA,IG-PCA,IG-LSA方法構(gòu)建出的新特征集含有較多無(wú)法完全消除詞與詞之間聯(lián)系的新特征,這些多余的特征不僅不能幫助提高分類表現(xiàn),反而拖累了分類的結(jié)果。
對(duì)比IG-LS與LSA算法,可以看到IG-LSA數(shù)據(jù)集在分類器上的表現(xiàn)遠(yuǎn)好于LSA數(shù)據(jù)集,而LSA數(shù)據(jù)集相比IG數(shù)據(jù)集在分類器上的表現(xiàn)各有優(yōu)劣。LSA基于統(tǒng)計(jì)分析原數(shù)據(jù)集以構(gòu)建新特征集,但是即使去掉了停止詞,原數(shù)據(jù)集的特征集中往往依舊包含不少對(duì)分類沒(méi)有貢獻(xiàn)或貢獻(xiàn)很低的詞特征,整體的平均貢獻(xiàn)度不高,對(duì)含有不少低貢獻(xiàn)詞特征的特征集進(jìn)行統(tǒng)計(jì)分析重構(gòu)出的新數(shù)據(jù)集往往達(dá)不到理想的分類效果。但是先使用信息增益對(duì)詞特征進(jìn)行篩選,得到只保留對(duì)分類貢獻(xiàn)較大的1000個(gè)詞特征的新數(shù)據(jù)集IG1000,這樣新的數(shù)據(jù)集中保留的詞特征平均貢獻(xiàn)度更高。對(duì)新數(shù)據(jù)集IG1000進(jìn)行統(tǒng)計(jì)分析重構(gòu)出的新特征集,在分類器上的表現(xiàn)相對(duì)LSA和IG方法都提高很多。
[1] Su Jinshu, ZhangBofeng, Xu Xin. Advances in Machine Learning Based Text Categorization [J]. Journal of Software, 2006, 17(9): 1848-1859.
[2] Long Shuquan, Zhao Wenzheng, Tang Hua. Overview on Chinese Segmentation Algorithm[J].Computer Knowledge and Technology, 2009, 5(10): 2605-2607.
[3] F. Sebastiani. Machine learning in automated text categorization[J] ACM Computing Surveys, 34(1): 1-47, 2002.
[4] 李玲, 劉華文, 徐曉丹,等. 基于信息增益的多標(biāo)簽特征選擇算法[J]. 計(jì)算機(jī)科學(xué), 2015, 42(07): 52-56.
[5] Evangelopoulos N E. Latent semantic analysis[J]. Annual Review of Information Science & Technology, 2013, 4(6): 683-692.
[6] Lange K. Singular Value Decomposition[M]. Wiley StatsRef: Statistics Reference Online. John Wiley & Sons, Ltd, 2010: 129-142.
[7] DNA AI,LAN Laboratory. Wiley Interdisciplinary Reviews: Computational Statistics[M]. 2010.
[8] PJA Shaw. Multivariate statistics for the environmental sciences[J]. 2003.
[9] AdaBoost[M].Encyclopedia of Biometrics. Springer US, 2009: 9-9.
[10] Dong Lehong, Geng Guohua, Zhou Mingquan. Design of auto text categorization classfier based on Boosting algorithm[J]. Computer Application, 2007, 27(2): 384-386.
[11] Li Yanmei, Guo Qinglin, Tang Qi. Similarity computing of document based on VSM[C]. Application Research of Computers. 2007.
[12] Platt J C. Sequential Minimal Optimization: A Fast Algorithm for Training Support Vector Machines[C]. Advances in Kernel Methods-support Vector Learning. 1998: págs. 212-223.
[13] Zhang Yufang, Chen Xiaoli, Xiong Zhongyang. Improved approach to weighting terms using information gain[J]. Computer Engineering and Applications, 2007(35): 159-161.
[14] Frank E, Hall M, Holmes G, et al. Weka-A Machine Learning Workbench for Data Mining[M]. Data Mining and Knowledge Discovery Handbook. 2009: 1269-1277.
[15] White, Myles. J. Machine learning for hackers[M].
[16] Yang Xuebing, Zhang Jun. Decision Tree and Its Key Techniques[J]. Computer Technology and Development, 2007, 17(1): 43-45.
Comparision and Implementation of Serveral MOOC-Based Text Classification
LIU Xin-hao, TAN Qing-ping, ZENG Ping, TANG Guo-fei
(Academy of Computer Science and Technology, National University of Defense Technology, Changsha Hunan, ZipCode 41000, China)
Machine learning is one of the main content of artificial intelligence, text classification is a typical supervised learning scene. The development trend of machine learning in online education platform is the stage of the application. This paper firstly introduces the background and significance of text classificatio, The text preprocessing part, include the introductions of the text preprocessing part. mentioned Information Gain, Principal Componet Anlysis and anyother technology. The classification algorithm part, include the introductions of AdaBoost technology. Designed a text classification system consists of three module: module one, Chinese segmentation and stop word removal module; module two, text to vector and feature dimension reduction module; module three, classifier module. Completed the implementation of text classification system by using open source tools, Ansj and Weka. According to the text classification process, carried out experiments by using text classification system, and the experimental data obtained are analyzed and summarized. In order to improve the performance of classification, in feature dimension reduction step, added IG-LSA (information gain-latent semantic analysis) method.
Text classification; Machine learning; Feature selection; Feature extraction
TP181
A
10.3969/j.issn.1003-6970.2016.09.007
國(guó)家自然課基金項(xiàng)目(61930007);國(guó)家“八六三”高技術(shù)研究發(fā)展計(jì)劃基金項(xiàng)目(2015BA3005)。