李峰 柯偉揚 盛磊
摘 ?要: 政策文本(Policy Text)是指因政策活動而產(chǎn)生的記錄文獻,當(dāng)前多數(shù)的政策文本分類方法存在特征維度高、缺乏上下文信息這兩個缺點?;诖耍疚牟捎肈oc2vec算法,通過詞向量化解決特征維度高的問題,采用CBOW方法獲取詞語上下文信息。本文采用的方法經(jīng)過實驗測試,結(jié)果顯示該方法對提高政策文本的分類準(zhǔn)確率有著顯著作用。
關(guān)鍵詞: 政策文本;文本分類;Doc2vec
中圖分類號: F224-39 ? ?文獻標(biāo)識碼: A ? ?DOI:10.3969/j.issn.1003-6970.2019.08.018
本文著錄格式:李峰,柯偉揚,盛磊,等. Doc2vec在政策文本分類中的應(yīng)用研究[J]. 軟件,2019,40(8):7678
【Abstract】: Policy text refers to documentation produced by policy activities. Most current classification methods of policy text have two defects: high feature dimension and lacking context information. Based on this, the paper solves problem of high feature dimension through word vectorization with Doc2vec algorithm, and obtain word context information with CBOW method. Experimental results show that method adopted in the paper has significant effect on improving classification accuracy of policy texts.
【Key words】: Policy text; Text classification; Doc2vec
0 ?引言
政策文本是指因政策活動而產(chǎn)生的記錄文獻,既包括政府或國家或地區(qū)的各級權(quán)力或行政機關(guān)以文件形式頒布的法律、法規(guī)、部門規(guī)章等官方文獻,也包括政策制定者或政策領(lǐng)導(dǎo)人在制定過程中形成的研究、咨詢、聽證或決議等公文檔案。目前政策文本分類[1]主要分為兩類:人工分類和機器分類。其中,人工分類費時費力,且分類準(zhǔn)確率不高;機器分類是通過訓(xùn)練一個適當(dāng)?shù)囊?guī)則或分類器,從而對政策文本進行預(yù)測分類。
對于文本分類,很多專家學(xué)者都進行了深入的研究。文獻[2]在文檔主題生成模型(LDA)的基礎(chǔ)上提出了新的文本分類模型,利用主題模型對當(dāng)前高維的文本進行降維并獲取特征,同時使用SoftMax回歸算法解決文本多分類的問題,有效降低新聞文本特征維度并且取得很好的分類效果;文獻[3]提出了一種基于粗糙集和相關(guān)性分析的K近鄰(KNN)分類算法,將訓(xùn)練集文本向量空間分成確定集和不確定集2個部分,確定集直接進行類別判斷,不確定集通過KNN分類算法進行文字相關(guān)性分析確定類別,大大提高了文本分類的效率和準(zhǔn)確性,且滿足處理大量文本數(shù)據(jù)的要求;文獻[4]提出了一種基于加權(quán)的KNN算法和蜂群算法的組合算法,利用文本向量之間的距離的倒數(shù)進行計算權(quán)重,在一定程度上提高了分類準(zhǔn)確度;文獻[5]提出了一種使用N-Gram方法進行特征擴展的短文本分類方法,針對短文本特征的稀疏性,從訓(xùn)練集中選取單詞序列使用N-Gram進行特征擴展,再使用樸素貝葉斯(Na?ve Bayes, NB)算法進行訓(xùn)練,結(jié)果表明這種算法顯著提高了分類性能;文獻[6]介紹了一種耦合矩陣分解和邏輯回歸的方法對高維數(shù)據(jù)集進行同步特征提取和二分類,從對數(shù)似然函數(shù)開始使用梯度下降法進行推導(dǎo)得到模型,該模型在新聞文本數(shù)據(jù)集上取得了較好的分類結(jié)果,同時在主題聚類問題上保持了精度。
1 ?政策文本分類基本流程
本文提出的政策文本分類方法包括以下過程:①準(zhǔn)備好實驗數(shù)據(jù),本文通過網(wǎng)絡(luò)爬蟲獲取政策信息;②文本預(yù)處理,包括中文分詞和建立停用詞庫;③利用Doc2vec提取詞向量;④采用K-means算法對政策數(shù)據(jù)進行聚類;⑤使用TF-IDF對每個類賦予實際意義。具體過程如圖1所示。
1.1 ?文本預(yù)處理
文本預(yù)處理是文本分類中至關(guān)重要的一步,中文分詞的結(jié)果以及停用詞的存在都會直接影響特征提取的結(jié)果,進而影響文本分類的效果。
1.1.1 ?中文分詞
中文分詞技術(shù)是自然語言處理領(lǐng)域中很多關(guān)鍵技術(shù)的基礎(chǔ),包括文本分類、信息檢索、信息過濾等?,F(xiàn)如今中文分詞的方法很多,大多數(shù)研究者的研究重點都是按照提升算法的精度、速度來的,常用的算法可總結(jié)如下:字典分詞方法、理解分詞方法和統(tǒng)計分詞方法。
本文采用業(yè)界比較知名的Jieba中文分詞對政策文本進行分詞,同時,考慮到如果直接使用政策內(nèi)容作為語料庫,可能會引起兩個類別的政策分到同一類,即存在誤分類情況。為了減少這種情況,我們根據(jù)換行符等特殊標(biāo)記將整個政策內(nèi)容進行分段,通過段落信息構(gòu)建語料庫。
1.1.2 ?引入停用詞
中文分詞結(jié)果并不能直接用于特征選擇,其中,某些詞如果作為特征,會干擾政策文本分類最后的結(jié)果。此時,需要引入停用詞去除分詞結(jié)果中無用的詞,例如:“的”、“吧”、“啊”等。
1.2 ?特征提取
文本預(yù)處理之后,如果直接使用這些數(shù)據(jù)作為特征向量,可能會引起特征向量的維度達到幾萬甚至幾十萬的維度,因此需要用特征選擇方法進行處理,降低特征維度,提高分類的效率。目前,特征選擇方法有TF-IDF、word2vec等,采用TF-IDF提取文本特征向量;則通過word2vec建立詞向量模型,在對文本中的詞向量平均化得到文本向量。針對上述兩個方法無法全面理解文本語義的問題,本文采用Doc2vec方法進行實驗,取得了不錯的效果。
Doc2vec是一個無監(jiān)督框架,學(xué)習(xí)文本段落的連續(xù)分布向量表示,文本可以是可變長度的,從句子到文檔。該方法可以應(yīng)用于可變長度的文本,任何句子或大型文檔。通過該方法將文本進行數(shù)字化表示,每個詞語使用幾百維的實數(shù)向量表示,然后使用歐式公式計算兩個詞語的語義相似性。
Doc2vec有兩種模型:CBOW(連續(xù)詞袋模型)和Skip-gram。在CBOW中,它的目的是根據(jù)上下文周圍的詞語預(yù)測一個詞語,通過訓(xùn)練預(yù)料,最后獲得模型參數(shù),得到詞向量,如圖2所示;Skip-gram正好相反,它是基于單個詞語預(yù)測窗口內(nèi)周圍的詞語,從而得到詞向量,如圖3所示。本文的實驗采用了CBOW模型訓(xùn)練詞向量。
1.3 ?聚類
特征提取完畢后,需要進行聚類,本文采用的聚類算法是Kmeans,該算法的步驟大體如下:
(1)首先選擇一些類/組,并隨機初始化它們各自的中心點。中心點是與每個數(shù)據(jù)點向量長度相同的位置。這需要我們提前預(yù)知類的數(shù)量(即中心點的數(shù)量),在本實驗中對中心點的數(shù)據(jù)進行了多次測試。
(2)計算每個數(shù)據(jù)點到中心點的距離,數(shù)據(jù)點距離哪個中心點最近就劃分到哪一類中。
(3)計算每一類中中心點作為新的中心點。
(4)重復(fù)以上步驟,直到每一類中心在每次迭代后變化不大為止。也可以多次隨機初始化中心點,然后選擇運行結(jié)果最好的一個。
1.4 ?確定類別含義
政策文本通過Kmeans聚類之后,獲得了每個類中心,但無法確定該中心的具體含義。本文使用TF-IDF確定每個類的具體含義。
2 ?實驗結(jié)果及分析
本文從北大法寶網(wǎng)收集到約5萬條政策數(shù)據(jù)作為實驗的研究樣本,包括住房、人才、科技、創(chuàng)新等政策。同時,將所有政策數(shù)據(jù)分為兩個集合,一個集合數(shù)據(jù)作為訓(xùn)練集,一個集合數(shù)據(jù)作為測試集。每篇政策文本包含6個部分:①政策標(biāo)題;②政策發(fā)文機關(guān);③法規(guī)類別;④發(fā)布日期;⑤效力級別;⑥政策正文。這些部分都通過Doc2vec轉(zhuǎn)換成對應(yīng)的詞向量。
2.1 ?實驗參數(shù)設(shè)置
在本實驗中,Doc2vec中的向量維度、窗口大小以及K-means中的K值都是很重要的參數(shù),它們直接影響到政策文本分類的結(jié)果。
在Doc2Vec中,向量維度和窗口大小直接影響段落文本向量的表示效果,窗口太小會導(dǎo)致目標(biāo)詞的上下文相關(guān)詞數(shù)量過少,容易漏掉與目標(biāo)詞關(guān)聯(lián)度高的詞語;窗口過大會引入噪聲詞,根據(jù)實驗結(jié)果,本文選取窗口大小為4。文本向量每一維的值代表一個具有一定語義的特征[7],因此高維數(shù)的向量可以提升模型的準(zhǔn)確率,但是維度過大會引入噪聲,根據(jù)實驗結(jié)果,我們選取向量維度為300。K-means中的K值也是很重要的參數(shù),本文實驗最佳K值為4。
2.2 ?實驗結(jié)果
實驗將本文方法與TF-IDF、Glove進行準(zhǔn)確率比較,實驗結(jié)果如表1所示。
3 ?結(jié)語
本文考慮到Doc2vec能夠縮短特征向量的維度,能夠提取文本的上下文信息,因此采用Doc2vec應(yīng)用于政策文本分類中。同時,借助TF-IDF對每個類進行標(biāo)簽化,實現(xiàn)政策文本分類的準(zhǔn)確和高效。本文后續(xù)的研究將在現(xiàn)有方法的基礎(chǔ)上,進一步深入挖掘出政策文本所蘊含特征,包括政策發(fā)文機構(gòu)、政策覆蓋面和政策條款分布、政策有效期等特征,更好地提高政策文本聚類的準(zhǔn)確性,更直觀的展示各區(qū)域政策特色或量化得分情況,進而支撐政府科學(xué)決策。
參考文獻
[1] 劉鑫昊, 譚慶平, 曾平, 唐國斐. 幾種基于MOOC的文本分類算法的比較與實現(xiàn)[J]. 軟件, 2016, 37(09): 27-33.
[2] Li Z, Shang W, Yan M. News text classification model based on topic model[C]//2016 IEEE/ACIS 15th International Con?ference on Computer and Information Science (ICIS). New York: IEEE, 2016: 1-5.
[3] Aizhang G, Tao Y. Based on rough sets and the associated analysis of KNN text classification research[C]//2015 14th International Symposium on Distributed Computing and Applications for Business Engineering and Science (DCABES). New York: IEEE, 2015: 485-488.
[4] Yigit H. A weighting approach for KNN classifier[C]//2013 International Conference on Electronics, Computer and Computation (ICECCO). New York: IEEE, 2013: 228-231.
[5] Zhang X, Wu B. Short Text Classification based on feature extension using The N-Gram model[C]//2015 12th International Conference on Fuzzy Systems and Knowledge Discovery (FSKD). New York: IEEE, 2015: 710-716.
[6] Türkmen A C, Cemgil A T. Text classification with coupled matrix factorization[C]//2016 24th Signal Processing and Communication Application Conference (SIU). New York: IEEE, 2016: 1697-1700.
[7] 賀益侗. 基于doc2vec和TF-IDF的相似文本識別[J]. 電子制作, 2018(18): 37-39.