李昌兵,段祺俊,紀(jì)聰輝,張婷婷
(重慶郵電大學(xué) a.經(jīng)濟(jì)管理學(xué)院;b.計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,重慶 400065)
隨著社交網(wǎng)絡(luò)以及電子商務(wù)的興起,產(chǎn)生了海量的短文本數(shù)據(jù)。這些短文本直接反映出人們對(duì)不同事件的情感和看法,對(duì)短文本信息的挖掘和對(duì)短文本的分類成為了熱點(diǎn)話題。對(duì)短文本的分類研究是自然語言處理的一個(gè)重要分支,在搜索引擎、自動(dòng)問答、輿情分析和情感分析等方面有重要意義[1]。
由于短文本內(nèi)容短小、口語化嚴(yán)重且噪聲大的問題,導(dǎo)致在情感分類的過程中特征極性不顯著[2],對(duì)短文本內(nèi)容精準(zhǔn)分類的關(guān)鍵是對(duì)短文本重要內(nèi)容的提取。一般通過引入外部語料庫和文本自身的內(nèi)容特征等方式實(shí)現(xiàn)。通過外部語料庫拓展方法的有效性嚴(yán)重依賴于語料庫的質(zhì)量,計(jì)算緩慢、效率低下[3]。而基于短文本自身內(nèi)容特征的方式是充分挖掘文本語義、詞頻等關(guān)鍵信息來獲取文本的重要特征,對(duì)文本特征提取有較高要求。
本文提出了一種融合卡方統(tǒng)計(jì)和TF-IWF算法的特征提取和短文本分類方法,旨在解決TFIDF算法計(jì)算特征值權(quán)重范圍小的問題,提升短文本分類的準(zhǔn)確率。
相比較于長文本,短文本的內(nèi)容稀疏、信息單元難以準(zhǔn)確采集,將傳統(tǒng)的文本分類方法如支持向量機(jī)、樸素貝葉斯分類等直接應(yīng)用于短文本分類難以取得好的效果[4-5]。針對(duì)此問題,研究者提出了一系列對(duì)短文本進(jìn)行特征提取的辦法,由此達(dá)到提升短文本分類精準(zhǔn)率的目的。一部分研究者通過引入外部語料庫來彌補(bǔ)短文本語料集信息密度低的缺點(diǎn),另一部分研究者通過創(chuàng)造、改進(jìn)提取短文本關(guān)鍵信息的方法使提取的短文本特征更具代表性。
外部語料庫通常指維基百科、知網(wǎng)等含有大量文本內(nèi)容及語言材料的知識(shí)庫,這些外部語料庫可以給予短文本集信息補(bǔ)充,從而增加信息量。范云杰等[6]結(jié)合統(tǒng)計(jì)學(xué)知識(shí)和類別信息,通過外部知識(shí)庫維基百科來建立語義集合。Hu Xia等[7]把短文本特征種子詞融入建立的層次結(jié)構(gòu)模型,再借助外部語料庫來拓展獲取基于種子詞特征的語義信息。丁連紅等[8]通過知識(shí)圖譜計(jì)算推理短文本拓展信息,并將其運(yùn)用于短文本特征。王盛等[9]通過外部數(shù)據(jù)庫計(jì)算短文本中詞語的上下位關(guān)系,再把這種關(guān)系利用于待測(cè)文本的特征,由此提升分類效果?;谕獠空Z料庫的短文本內(nèi)容拓展方法非常依賴外部語料庫的質(zhì)量。對(duì)于一些涉及專業(yè)領(lǐng)域、用詞前衛(wèi)的文本內(nèi)容難以起到好的作用,由此考慮借助短文本自身的特征挖掘方法。
在不借用外部語料庫的前提下,分析短文本內(nèi)容、挖掘短文本潛在的語義關(guān)系來構(gòu)建基于文本的特征集,如何精確的構(gòu)建這種特征集合是目前研究的熱點(diǎn)。張群等[10]基于Word2Vec訓(xùn)練詞向量從粒度層面對(duì)短文本進(jìn)行建模,再訓(xùn)練LDA主題模型完成特征提取的過程。郭東亮等[11]使用Word2vec的Skip-gram模型獲得短文特征,接著送入CNNs中進(jìn)一步提取高層次特征,最后通過K-max池化操作后放入Softmax分類器得出分類模型。于政[12]綜合現(xiàn)有詞向量模型,提出了基于編碼isA關(guān)系的詞向量模型,再將其推廣到長文本領(lǐng)域,構(gòu)建了短文本集長文本的語義向量表示法。TF-IDF算法[13]計(jì)算訓(xùn)練文本詞語的權(quán)重,將權(quán)重最大的若干詞語作為特征詞,再通過其權(quán)重構(gòu)建短文本特征組。TF-IDF的優(yōu)點(diǎn)是算法簡(jiǎn)單易實(shí)施,但是存在特征詞提取不準(zhǔn)確、特征詞權(quán)重方差較小,導(dǎo)致文本之間區(qū)分度低、分類效果不佳的問題。因此,本文對(duì)原有算法進(jìn)行改進(jìn),提出融合卡方統(tǒng)計(jì)和TF-IWF算法的特征提取和短文本分類方法來解決上述問題。TF-IWF算法在計(jì)算文本詞條權(quán)重時(shí)更加注重特征詞之間的數(shù)量差異引起的特征詞權(quán)重的差異。
卡方統(tǒng)計(jì)方法(CHI Square,CHI)通常是計(jì)算數(shù)據(jù)的分布和假設(shè)分布之間的差異,在此用作衡量某個(gè)詞條和其所在類別之間的關(guān)聯(lián)程度。如果卡方值越大,詞條與類別的關(guān)聯(lián)程度越大,詞條體現(xiàn)類別的能力越強(qiáng);卡方值越小,則二者關(guān)聯(lián)程度越小,詞條體現(xiàn)類別的能力越?。?4]。特征詞與類別關(guān)系如表1所示。
表1 特征詞與類別關(guān)系
基于特征詞t的計(jì)算方法如式(1)~(4)所示:
根據(jù)卡方檢測(cè)公式計(jì)算特征詞t與類別的關(guān)聯(lián)度如式(5)所示:
同理求出D12、D21、D22,代入并求解特征詞t和ci的χ2值如式(6)所示:
由式(6)可知,詞語t與類別ci具有較低相關(guān)性時(shí),χ2值越接近0。特征詞t與ci類別具有較強(qiáng)相關(guān)性時(shí),χ2值越大。
卡方統(tǒng)計(jì)方選取特征詞步驟:
①在ci類 別 中 列 出 所 有 詞 語ti,1、ti,2、ti,3、…、ti,j。
②計(jì)算每個(gè)詞語tk與類別ci的Ai,k、Bi,k、Ci,k、Di,k。
③計(jì)算詞語tk和類別ci的χ2(tk,ci)值。
④取χ2值最大的m個(gè)詞語作為特征詞。
2.2.1 TF-IDF算法
TF-IDF(term frequency-inverse document frequency)是用來衡量一個(gè)詞條能體現(xiàn)其所在文本多大的程度的算法。
詞頻(term frequency,TF)是衡量某個(gè)詞ti在文檔dj中出現(xiàn)的頻繁與否指標(biāo),出現(xiàn)的越頻繁則詞頻值越高,如式(7)所示:
式中:ni,j表示此ti在文檔dj中出現(xiàn)的次數(shù);表示文檔dj中所有k個(gè)詞條出現(xiàn)的總數(shù)。
逆文檔頻率(inverse document frequency,IDF)是指包含詞ti的文檔數(shù)占文檔總數(shù)D的比重的對(duì)數(shù)。IDF的作用是避免高頻但對(duì)文檔作用小的詞匯獲得較高的權(quán)重。如式(8)所示:
TF-IDF值由tfij值和IDFi值相乘得到,用si,j表示,其計(jì)算公式為
2.2.2 改進(jìn)的TF-IDF算法——TF-IWF介紹
逆文檔頻率(inverse document frequency,IDF)只關(guān)注了文檔個(gè)數(shù)之間的差異,忽視了詞條在不同文檔中數(shù)量的差異導(dǎo)致的詞條逆文檔頻率權(quán)重的差異。
TF-IWF(term frequency-inverse word frequency)是用來評(píng)估一個(gè)詞能體現(xiàn)出所在語料多大程度的算法。
詞頻(term frequency,TF)是衡量某個(gè)詞ti在文檔dj中出現(xiàn)的頻繁與否指標(biāo),出現(xiàn)的越頻繁則詞頻值越高,如式(10)所示:
式中:ni,j表示詞條ti在文檔dj中出現(xiàn)的次數(shù);表示文本dj中所有詞條出現(xiàn)的總次數(shù)。
逆特征頻率(inverse word frequency,IWF)是指詞的總數(shù)占總文檔數(shù)D的比重的倒數(shù)。IWF的作用是避免高頻但對(duì)文檔作用小的詞匯獲得較高的權(quán)重。如式(11)所示:
TF-IWF值由tfij值和IWFi值相乘得到,用wi,j表示,如式(12)所示:
TF-IWF用來過濾常見的詞條,給更能體現(xiàn)語料的詞條賦予更大的權(quán)重。如果一個(gè)文本內(nèi)部的高頻詞條在文本集合中呈現(xiàn)低頻狀態(tài),則該詞條的TF-IWF值有高的權(quán)重值。
本文特征提取和短文本分類的流程如圖1所示。
圖1 融合卡方統(tǒng)計(jì)和TF-IWF算法的特征提取和短文本分類流程
首先進(jìn)行數(shù)據(jù)清洗,對(duì)待訓(xùn)練文本進(jìn)行預(yù)處理,包括分詞、去停用詞等。接著提取特征,計(jì)算所有出現(xiàn)在文本中的詞條和其所在類別的卡方值,根據(jù)卡方值的大小按順序排列各類中的詞條。下一步是計(jì)算特征詞的權(quán)重,按照上文描述的TFIWF算法分類計(jì)算已經(jīng)提取的特征詞條的權(quán)重。最后進(jìn)入分類器分類,與其他分類系統(tǒng)相比,SVM是一類根據(jù)監(jiān)督學(xué)習(xí)的方式來實(shí)現(xiàn)數(shù)據(jù)二分類的線性分類器[15-17],故選擇SVM分類器作為分類模型。由短文本特征向量及其類別的標(biāo)簽訓(xùn)練SVM分類器。測(cè)試過程中對(duì)待測(cè)文本進(jìn)行特征提取,再通過訓(xùn)練完畢的分類器預(yù)測(cè)待測(cè)試文本的所屬類別。
1)實(shí)驗(yàn)平臺(tái)
硬件平臺(tái)基于Windows 7操作系統(tǒng),內(nèi)存為8 GB。算法部分均使用Python3.6語言進(jìn)行編寫,使用的Python模塊包括自然語言處理庫:Gensim 3.6.0;機(jī)器學(xué)習(xí)庫:Sklearn 0.20.2;數(shù)學(xué)計(jì)算庫:Numpy 1.15.4;進(jìn)度處理庫tqdm4.43.0。
2)實(shí)驗(yàn)數(shù)據(jù)集
收集了飛豬網(wǎng)上的酒店評(píng)論數(shù)據(jù)共10 000條,其中好評(píng)7 000條,差評(píng)3 000條。各類別80%的文本用于訓(xùn)練,20%的數(shù)據(jù)用于測(cè)試。訓(xùn)練集與測(cè)試集中的數(shù)據(jù)相互獨(dú)立且不存在重復(fù)文本。所有數(shù)據(jù)經(jīng)過預(yù)處理:去除英文文本、去表情符號(hào)、去重、去停用詞等,并用結(jié)巴分詞對(duì)數(shù)據(jù)進(jìn)行分詞處理。實(shí)驗(yàn)所使用數(shù)據(jù)集如表2所示。
表2 實(shí)驗(yàn)數(shù)據(jù)集
1)基于卡方統(tǒng)計(jì)的特征選擇模型參數(shù)設(shè)置
通過Python模擬不同的由卡方統(tǒng)計(jì)所得到特征數(shù)與文本分類效果的關(guān)系如圖2所示,因此選擇準(zhǔn)確率收斂于最大值時(shí)的特征數(shù)400作為卡方統(tǒng)計(jì)得到的特征個(gè)數(shù)。
2)SVM文本分類器參數(shù)設(shè)置
SVM分類器參數(shù)設(shè)置如表3所示。
圖2 特征數(shù)與測(cè)試集準(zhǔn)確率的關(guān)系曲線
表3 SVM分類器參數(shù)
準(zhǔn)確率(precision)、召回率(recall)、和F1評(píng)分3項(xiàng)評(píng)價(jià)指標(biāo)是分類實(shí)驗(yàn)中常用的指標(biāo)。其中TP表示屬于正類、預(yù)測(cè)也為正類的樣本數(shù)量;FN表示屬于正類、預(yù)測(cè)為反類的樣本數(shù)量;FP表示屬于反類、預(yù)測(cè)為正類的樣本數(shù)量;TN表示屬于反類、預(yù)測(cè)也為反類的樣本數(shù)量。
準(zhǔn)確率是指分類結(jié)果中被分類正確的樣本數(shù)量占所有分類樣本數(shù)的比例,如式(13)所示。
召回率是指分類結(jié)果中被正確分類的樣本數(shù)量與該類的實(shí)際文本數(shù)的比例,如式(14)所示。
F1評(píng)分是融合準(zhǔn)確率和召回率的一種綜合性的評(píng)價(jià)標(biāo)準(zhǔn),如式(15)所示。
3.4.1 基于特征選擇的有效性驗(yàn)證
為驗(yàn)證基于卡方統(tǒng)計(jì)的特征選擇的有效性,共設(shè)置2組實(shí)驗(yàn):第一組實(shí)驗(yàn)使用融合卡方統(tǒng)計(jì)和TF-IDF特征提取的短文本分類方法,第二組基于TF-IDF特征提取的短文本分類方法,2組實(shí)驗(yàn)均使用SVM模型進(jìn)行分類,結(jié)果如表4所示。
表4 基于特征選擇的對(duì)比驗(yàn)證
融合卡方統(tǒng)計(jì)與TF-IDF的特征提取算法與基于TF-IDF的特征提取算法相比,實(shí)驗(yàn)各項(xiàng)指標(biāo)明顯提升。說明卡方統(tǒng)計(jì)提取特征詞更加精準(zhǔn),卡方特征選擇相比于TF-IDF進(jìn)行特征選擇是一種更好的特征選擇方法。
3.4.2 基于特征提取的有效性驗(yàn)證
為驗(yàn)證融合卡方統(tǒng)計(jì)和TF-IWF算法的特征提取的有效性,共進(jìn)行3組實(shí)驗(yàn):第1組實(shí)驗(yàn)使用Word2vec方法進(jìn)行特征提?。坏?組實(shí)驗(yàn)使用融合卡方統(tǒng)計(jì)和TF-IDF算法的特征提取與短文本分類方法;第3組實(shí)驗(yàn)使用融合卡方統(tǒng)計(jì)和TFIWF算法的特征提取及短文本分類方法。3組實(shí)驗(yàn)均使用SVM分類器模型進(jìn)行分類,結(jié)果如表5所示。
表5 基于特征提取的對(duì)比驗(yàn)證
實(shí)驗(yàn)結(jié)果顯示,與基于未進(jìn)行任何改進(jìn)的TFIDF模型的文本分類方法相比,融合卡方統(tǒng)計(jì)和TF-IWF模型在正向文本的召回率上下降0.6%;其他分類指標(biāo):平均準(zhǔn)確率提升2.8%、平均召回率提升4.5%、平均F1值提升3.7%;融合卡方統(tǒng)計(jì)和TF-IWF模型相比于Word2vector模型在各類分類指標(biāo)下均有提升。說明融合卡方統(tǒng)計(jì)和TFIWF的模型在短文本特征的選擇上更具有代表性,特征權(quán)重的計(jì)算更接近真實(shí)比重,提高了提取文本關(guān)鍵特征的能力。
3.4.3 基于TF-IWF算法的特征提取與短文本分類方法與其他分類方法對(duì)比
為對(duì)融合卡方統(tǒng)計(jì)和TF-IWF算法的特征提取與短文本分類方法的分類效果做出綜合判斷,將該方法與其他文本分類方法進(jìn)行對(duì)比。向量空間模型(vector space model,VSM)作為傳統(tǒng)的文本向量表征方法把文本內(nèi)容簡(jiǎn)化為向量運(yùn)算;支持向量機(jī)(support vector machine,SVM)是經(jīng)典的按監(jiān)督學(xué)習(xí)的方式對(duì)數(shù)據(jù)進(jìn)行二項(xiàng)分類的分類器;而K近鄰分類算法(K-nearest neighbor,KNN)[18]作為經(jīng)典的機(jī)器學(xué)習(xí)分類算法具有操作簡(jiǎn)單、可解釋性強(qiáng)的特性。因此,使用SVM分類器對(duì)VSM模型[19]所表征的文本向量進(jìn)行分類,實(shí)驗(yàn)結(jié)果如表6所示。
表6 基于分類方法的有效性驗(yàn)證
由表6可知,融合卡方統(tǒng)計(jì)和TF-IWF算法的特征提取與短文本分類方法相對(duì)于基于VSM模型的短文本分類方法在分類各項(xiàng)傳統(tǒng)指標(biāo)上均有較大程度的提升。
針對(duì)文本分類中傳統(tǒng)的特征提取算法得到特征表征的能力不強(qiáng)的問題,提出了融合卡方統(tǒng)計(jì)和TF-IWF的特征提取算法,該算法在一定程度上解決了TF-IDF權(quán)值分布集中導(dǎo)致文本區(qū)分度低的問題,并構(gòu)建了融合卡方統(tǒng)計(jì)和TF-IWF算法的短文本分類模型,實(shí)驗(yàn)結(jié)果表明:該模型文本特征提取的能力有所增強(qiáng),分類準(zhǔn)確率得到提升。