楊秀璋 于小民 李娜 夏換
摘 要: 當(dāng)前科研成果呈爆炸式增長(zhǎng),論文跨學(xué)科交叉分布不斷深化,精準(zhǔn)獲取所需的論文需要耗費(fèi)大量的時(shí)間和精力。文章提出一種基于隨機(jī)森林的論文自動(dòng)分類方法,實(shí)現(xiàn)對(duì)海量論文的自動(dòng)分類;提出一種基于LDA模型的主題挖掘方法,提取論文關(guān)鍵詞并進(jìn)行詞云展示。實(shí)驗(yàn)數(shù)據(jù)采用Selenium技術(shù)抓取中國(guó)知網(wǎng)九大主題的1710篇論文,實(shí)驗(yàn)結(jié)果表明,該論文分類方法在準(zhǔn)確率、召回率和F值上都有所提升,有效地挖掘出各學(xué)科的主題詞,為下一步引文分析、文本挖掘和知識(shí)圖譜構(gòu)建提供有效支撐。
關(guān)鍵詞: 文本自動(dòng)分類; LDA; 隨機(jī)森林; 主題挖掘; 中國(guó)知網(wǎng)
中圖分類號(hào):TP391 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1006-8228(2018)11-14-05
Abstract: With the explosive growth of scientific research results, the cross-disciplinary distribution of papers has been deepened, and it takes a lot of time and effort to accurately acquire the required papers. In this paper, an automatic classification method based on random forest is proposed to realize the automatic classification of massive papers and a topic mining method based on LDA model is proposed to extract the keywords of the paper and display the word cloud. The experimental data used Selenium technology to capture 1710 papers on the nine themes of the CNKI. The experimental results show that the paper classification method has improved the precision, recall and F-measure, effectively mining the subjects of various disciplines. The keywords extracted provide effective support for the next citation analysis, text mining and knowledge graph construction.
Key words: automatic text classification; LDA; random forest; topic mining; CNKI
0 引言
隨著科學(xué)技術(shù)快速發(fā)展,科研成果的數(shù)量也呈快速增長(zhǎng)趨勢(shì),各學(xué)科的論文、專利、軟件著作權(quán)等都朝著跨學(xué)科交叉分布深化,所蘊(yùn)含的深層次語(yǔ)義信息也更為復(fù)雜??蒲泄ぷ髡呷绾螐倪@些海量學(xué)術(shù)成果中尋找到自己需要的信息,獲取論文的主題關(guān)鍵詞,已經(jīng)成為當(dāng)今研究的重要內(nèi)容。論文自動(dòng)化分類旨在準(zhǔn)確地劃分論文學(xué)科類別,從而節(jié)約科研工作者的時(shí)間和精力,提高科研效率;論文主題挖掘旨在提取論文主干脈絡(luò),為論文關(guān)鍵詞自動(dòng)發(fā)現(xiàn)提供支撐。
目前國(guó)內(nèi)外利用數(shù)據(jù)挖掘或機(jī)器學(xué)習(xí)發(fā)現(xiàn)論文主題詞,對(duì)學(xué)術(shù)論文進(jìn)行自動(dòng)分類的方法包括詞頻計(jì)算、決策樹(shù)、支持向量機(jī)(SVM)、最近鄰算法(KNN)等,這些方法可以有效地對(duì)科研成果進(jìn)行自動(dòng)分類,但實(shí)驗(yàn)的效率和準(zhǔn)確率較低,缺乏深層次語(yǔ)義理解,對(duì)跨學(xué)科的論文分類效果不理想,論文主題詞識(shí)別不精準(zhǔn)。針對(duì)這些問(wèn)題,本文提出一種基于隨機(jī)森林的論文自動(dòng)分類方法,實(shí)現(xiàn)對(duì)海量論文的自動(dòng)分類;同時(shí),提出了一種基于LDA模型的主題挖掘方法,實(shí)現(xiàn)對(duì)論文關(guān)鍵詞提取,并進(jìn)行詞云可視化分析。
本文的研究成果具有重要的理論意義和實(shí)用價(jià)值,一方面能高效精準(zhǔn)地實(shí)現(xiàn)文本自動(dòng)分類,為科研工作者訊速地提供所需的論文信息;另一方面能挖掘出論文的主題關(guān)鍵詞,使文本的主題脈絡(luò)更加清晰,為文本關(guān)鍵詞的自動(dòng)發(fā)現(xiàn)提供幫助。本文所提出的算法可以廣泛應(yīng)用于自動(dòng)分類、引文分析和文本挖掘等領(lǐng)域,提高科研和工作效率。
1 相關(guān)研究
1.1 學(xué)術(shù)論文中的文本分析
當(dāng)前科研成果的分析研究已經(jīng)引起了社會(huì)和學(xué)術(shù)界的廣泛關(guān)注和重視,所涉及的領(lǐng)域包括引文分析、論文自動(dòng)分類、主題挖掘、學(xué)術(shù)成果測(cè)度、論文知識(shí)圖譜構(gòu)建等。本文主要是關(guān)于論文自動(dòng)分類和主題關(guān)鍵詞提取的研究,其中論文自動(dòng)分類旨在預(yù)測(cè)論文的所屬學(xué)科或主題,通常采用基于機(jī)器學(xué)習(xí)或自然語(yǔ)言處理中常用的文本分類技術(shù)解決;主題挖掘旨在通過(guò)算法識(shí)別出不同來(lái)源文本的主題或關(guān)鍵詞,通常采用LSA或LDA算法計(jì)算概率來(lái)挖掘主題詞。
近年,隨著深度學(xué)習(xí)和機(jī)器學(xué)習(xí)的興起,國(guó)內(nèi)外學(xué)者對(duì)論文分析和主題挖掘花大量的時(shí)間做了大量的研究。王婷婷等[1]通過(guò)LDA模型和Word2Vec算法獲取科技文獻(xiàn)的主題詞概率,并構(gòu)建詞義相關(guān)的T-WV矩陣識(shí)別主題;廖列法等[2]通過(guò)LDA模型對(duì)專利文本進(jìn)行分類研究;逯萬(wàn)輝等[3]提出一種基于Doc2Vec和HMM算法的文本內(nèi)容特征因子計(jì)算模型,研究學(xué)術(shù)論文主題;顏端武等[4]通過(guò)HDP模型研究主題文獻(xiàn)并實(shí)現(xiàn)自動(dòng)推薦;曾立梅[5]對(duì)碩士論文進(jìn)行文本分類研究;王昊等[6]通過(guò)機(jī)器學(xué)習(xí)算法對(duì)中文期刊論文進(jìn)行自動(dòng)分類研究;劉瀏等[7]基于KNN算法對(duì)社科類論文實(shí)現(xiàn)自動(dòng)分類;Blei等[8]提出的LDA主題模型被廣泛應(yīng)用于各領(lǐng)域;王樹(shù)義等[9]通過(guò)主題模型挖掘企業(yè)新聞文本及情感分析;蘇金樹(shù)等[10]通過(guò)機(jī)器學(xué)習(xí)算法對(duì)文本分類技術(shù)進(jìn)行研究;周慶平等[11]提出了基于聚類改進(jìn)的KNN文本分類算法;張晨逸等[12]提出了MB-LDA模型方法并挖掘微博主題與人物間的關(guān)系;Shi等[13]通過(guò)LDA主題建模分析了企業(yè)非結(jié)構(gòu)化業(yè)務(wù)數(shù)據(jù),量化企業(yè)在產(chǎn)品、市場(chǎng)和科技空間中的位置。
盡管論文分析和主題挖掘在算法創(chuàng)新和應(yīng)用領(lǐng)域都有一些研究,但這些方法的效率和準(zhǔn)確率仍然不高,缺乏深層次語(yǔ)義理解,對(duì)跨學(xué)科的論文分類效果不理想,無(wú)法獲取深層次精準(zhǔn)的主題信息。為了解決這些問(wèn)題,本文提出了基于隨機(jī)森林的論文自動(dòng)分類方法和基于LDA模型的主題挖掘方法。
1.2 LDA模型
LDA(Latent Dirichlet Allocation)是一種文檔主題生成模型,由Blei等[8]在2003年首次提出,是一種三層貝葉斯結(jié)構(gòu),包括主題、文檔和主題詞三層結(jié)構(gòu),其中文檔到主題(D-T層面)、主題到詞(T-W層面)都服從多項(xiàng)分布。LDA主題模型是文本挖掘和信息處理領(lǐng)域重要的文本建模模型,它將一篇文本的每個(gè)詞都按照一定概率分布到某個(gè)主題上,并從這個(gè)主題中選擇相關(guān)的詞語(yǔ)集。
LDA主題模型提出了“主題”的概念,有效解決了“維數(shù)災(zāi)難”問(wèn)題,在維度壓縮的同時(shí)使得數(shù)據(jù)的表現(xiàn)能力增強(qiáng),廣泛應(yīng)用于主題挖掘、文本分析、自然語(yǔ)言處理、情感分析等領(lǐng)域。
2 基于LDA和隨機(jī)森林的論文自動(dòng)分類及主題挖掘算法
2.1 算法總體流程
本文旨在對(duì)中國(guó)知網(wǎng)九個(gè)主題的學(xué)術(shù)論文進(jìn)行分析,算法的總體流程如圖1所示。
及主題挖掘算法總體流程
⑴ 調(diào)用Python、Selenium和XPath技術(shù)自動(dòng)抓取中國(guó)知網(wǎng)九大主題共1710篇學(xué)術(shù)論文并存儲(chǔ)至本地。
⑵ 對(duì)所抓取的論文摘要進(jìn)行數(shù)據(jù)預(yù)處理,包括中文分詞、停用詞過(guò)濾、數(shù)據(jù)清洗等處理,這是文本數(shù)據(jù)分析的重要處理環(huán)節(jié)。
⑶ 將預(yù)處理之后的網(wǎng)頁(yè)文本轉(zhuǎn)換為特征詞矩陣,涉及特征提取和權(quán)重計(jì)算。
⑷ 論文分析主要包括基于隨機(jī)森林的論文自動(dòng)分類和基于LDA模型的主題關(guān)鍵詞挖掘,并進(jìn)行詞云可視化顯示。
2.2 數(shù)據(jù)采集及預(yù)處理
本文旨在分析中國(guó)知網(wǎng)論文,涉及數(shù)據(jù)挖掘、數(shù)據(jù)分析、大數(shù)據(jù)、Python、民族、數(shù)學(xué)、文學(xué)、數(shù)據(jù)科學(xué)、機(jī)器學(xué)習(xí)九個(gè)主題。通過(guò)構(gòu)建一個(gè)基于Python、Selenium和XPath技術(shù)的網(wǎng)頁(yè)自動(dòng)爬蟲(chóng)抓取數(shù)據(jù)集,包括論文標(biāo)題、類型、關(guān)鍵字、發(fā)布時(shí)間、摘要等特征。
在進(jìn)行數(shù)據(jù)分析之前,通常需要對(duì)所爬取的信息進(jìn)行預(yù)處理操作,包括缺失值填充、異常值處理、數(shù)據(jù)清洗、中文分詞、停用詞過(guò)濾等步驟,其目標(biāo)是得到高標(biāo)準(zhǔn)、高質(zhì)量的數(shù)據(jù),從而提升分析的結(jié)果。本文的數(shù)據(jù)預(yù)處理操作包括以下三種。
⑴ 缺失值填充。論文缺失字段采用Null標(biāo)明缺失項(xiàng),再進(jìn)行數(shù)據(jù)定向爬取補(bǔ)全,少量字段采用手動(dòng)填充。
⑵ 中文分詞。分詞旨在將漢語(yǔ)句子切分成單獨(dú)的詞序列,本文選用結(jié)巴(Jieba)分詞工具,通過(guò)導(dǎo)入自定義詞典實(shí)現(xiàn)專有名詞和固定詞組的分詞。
⑶ 停用詞過(guò)濾。原始語(yǔ)料中會(huì)存在“·”、“...”、“/”等特殊符號(hào),也會(huì)存在如“你”、“嗎”、“可以”等不影響文本主旨卻出現(xiàn)頻率很高的停用詞,此時(shí)需要定義停用詞表對(duì)這些詞語(yǔ)進(jìn)行過(guò)濾。
2.3 特征提取及TF-IDF
學(xué)術(shù)論文摘要數(shù)據(jù)預(yù)處理后,需要對(duì)文本信息進(jìn)行特征提取。這里采用向量空間模型(VSM)技術(shù)實(shí)現(xiàn),用向量(W1,W2,W3,…,Wk-1,Wk)來(lái)表示論文文本,其中Wi表示第i個(gè)特征詞所對(duì)應(yīng)的權(quán)重(i=1,2,3,…,k)。
為了盡可能多的保留影響程度更高的特征詞,過(guò)濾掉一些常見(jiàn)卻無(wú)關(guān)緊要的詞語(yǔ),本文采用TF-IDF技術(shù)表示權(quán)重。TF-IDF計(jì)算特征詞的重要程度是依據(jù)特征詞在文本中出現(xiàn)的次數(shù)和在整個(gè)數(shù)據(jù)集中出現(xiàn)的文檔頻率實(shí)現(xiàn)的。其中TF(Term Frequency)表示某個(gè)關(guān)鍵詞在整篇文章中出現(xiàn)的頻率;IDF(Invers Document Frequency)表示倒文本頻率,它是文檔頻率的倒數(shù)。該技術(shù)用來(lái)降低所有文檔中常見(jiàn)卻對(duì)文檔影響不大詞語(yǔ)的作用。
TF-IDF的完整公式如下:
其中,特征詞ti在訓(xùn)練文本dj中出現(xiàn)的次數(shù)記為ni,j,文本dj中全部特征詞的個(gè)數(shù)記為,語(yǔ)料對(duì)應(yīng)所有文本的總數(shù)記為|D|,文本中包含特征詞ti的數(shù)量記為|Dti|。tfidfi,j表示詞頻tfi,j和倒文本詞頻idfi的乘積,權(quán)重與特征項(xiàng)在文檔中出現(xiàn)的頻率成正比,與在整個(gè)語(yǔ)料中出現(xiàn)該特征項(xiàng)的文檔數(shù)成反比。tfidfi,j值越大則該特征詞對(duì)這個(gè)文本的重要程度越高。
2.4 基于隨機(jī)森林的論文自動(dòng)分類算法
該算法的優(yōu)勢(shì)是通過(guò)隨機(jī)森林分類器提升實(shí)驗(yàn)的準(zhǔn)確率、召回率和F值,更精準(zhǔn)高效地實(shí)現(xiàn)文本自動(dòng)分類。
算法:基于隨機(jī)森林的論文自動(dòng)分類算法
輸入:中國(guó)知網(wǎng)論文文本摘要
輸出:測(cè)試集的論文所屬類別
⑴ 調(diào)用Selenium和XPath技術(shù)爬取中國(guó)知網(wǎng)論文信息,并提取每篇文章的摘要;
⑵ 對(duì)所獲取的數(shù)據(jù)集進(jìn)行預(yù)處理,包括中文分詞、數(shù)據(jù)清洗、停用詞過(guò)濾等;
⑶ 對(duì)語(yǔ)料進(jìn)行特征提取操作,并結(jié)合TF-IDF技術(shù)將文本轉(zhuǎn)換為數(shù)學(xué)向量的形式;
⑷ 將處理好的數(shù)據(jù)集隨機(jī)劃分為訓(xùn)練集和測(cè)試集,其中訓(xùn)練集共1000篇摘要,測(cè)試集共710篇摘要,均涉及九大主題;
⑸ 訓(xùn)練隨機(jī)森林算法模型,其迭代次數(shù)設(shè)置為1000次,再對(duì)測(cè)試集進(jìn)行實(shí)驗(yàn)分析,并獲取每篇摘要的分類類標(biāo);
⑹ 采用準(zhǔn)確率、召回率和F值評(píng)估實(shí)驗(yàn)結(jié)果,最終結(jié)果為10次實(shí)驗(yàn)結(jié)果的平均值。
3 實(shí)驗(yàn)結(jié)果與分析
⑴ 數(shù)據(jù)說(shuō)明及預(yù)處理
本文數(shù)據(jù)集采用Python自定義爬蟲(chóng)隨機(jī)抓取中國(guó)知網(wǎng)學(xué)術(shù)論文信息,涉及數(shù)據(jù)挖掘、數(shù)據(jù)分析、大數(shù)據(jù)、Python、民族、數(shù)學(xué)、文學(xué)、數(shù)據(jù)科學(xué)、機(jī)器學(xué)習(xí)九個(gè)主題,共1710篇論文(包括訓(xùn)練集1000篇,測(cè)試集710篇),詳細(xì)信息如表1所示。
所爬取的論文信息共包含十個(gè)字段,如圖2所示,包含論文主題、標(biāo)題、作者、關(guān)鍵詞、出版年份、出版社、引用次數(shù)、下載次數(shù)、摘要、類型等。本文對(duì)學(xué)術(shù)論文的摘要進(jìn)行分析,經(jīng)過(guò)中文分詞后,導(dǎo)入停用詞典進(jìn)行數(shù)據(jù)清洗和降維,再進(jìn)行特征提取和權(quán)重計(jì)算。
⑵ 評(píng)價(jià)指標(biāo)
評(píng)價(jià)方法一般采用準(zhǔn)確率(Precision)、召回率(Recall)和F值(F-measure),計(jì)算公式定義如下所示:
⑶ 論文自動(dòng)分類實(shí)驗(yàn)
表2是采用隨機(jī)森林算法對(duì)學(xué)術(shù)論文測(cè)試集進(jìn)行文本自動(dòng)分類的實(shí)驗(yàn)結(jié)果,其中文學(xué)、民族和數(shù)學(xué)的F值最高,分別為0.97、0.96和0.96。
圖3是論文摘要的分類結(jié)果,它將數(shù)據(jù)挖掘、數(shù)據(jù)分析、大數(shù)據(jù)、Python、民族、數(shù)學(xué)、文學(xué)、數(shù)據(jù)科學(xué)、機(jī)器學(xué)習(xí)主題相關(guān)的文本聚集在一起。
接著分別對(duì)比了樸素貝葉斯、最近鄰、決策樹(shù)和隨機(jī)森林算法的論文自動(dòng)分類實(shí)驗(yàn),其中各算法的實(shí)驗(yàn)結(jié)果如圖4所示。從圖中可以知,基于隨機(jī)森林的論文自動(dòng)分類方法的準(zhǔn)確率、召回率和F值的實(shí)驗(yàn)效果都更為理想。整體體實(shí)驗(yàn)結(jié)果呈現(xiàn)出:隨機(jī)森林>決策樹(shù)>最近鄰>樸素貝葉斯的趨勢(shì),基于隨機(jī)森林算法的論文自動(dòng)分類方法可以廣泛應(yīng)用于文本分類領(lǐng)域。
⑷ LDA主題挖掘?qū)嶒?yàn)
在基于LDA模型的論文主題挖掘?qū)嶒?yàn)中,設(shè)置的主題數(shù)(n_topic)為9,迭代次數(shù)(iterations)為500,調(diào)用Python環(huán)境下的LDA主題模型進(jìn)行模擬訓(xùn)練,每個(gè)主題內(nèi)的主題詞根據(jù)其概率大小排序,獲取各論文主題關(guān)鍵詞如表3所示。
將LDA識(shí)別的主題關(guān)鍵詞在經(jīng)過(guò)詞云可視化后,呈現(xiàn)如圖5所示的結(jié)果。
從圖5中可以看到,“文學(xué)批評(píng)”、“文學(xué)史”、“網(wǎng)絡(luò)小說(shuō)”等關(guān)鍵詞與文學(xué)主題相關(guān);“數(shù)據(jù)倉(cāng)庫(kù)”、“決策”、“數(shù)據(jù)挖掘”與數(shù)據(jù)分析主題相關(guān);“支持向量”、“神經(jīng)網(wǎng)絡(luò)”、“人工智能”與機(jī)器學(xué)習(xí)主題相關(guān);“文化”、“教育”、“少數(shù)民族”與民族主題相關(guān)。
4 結(jié)束語(yǔ)
本文的研究成果主要應(yīng)用于論文自動(dòng)分類和文本主題詞挖掘領(lǐng)域,以中國(guó)知網(wǎng)九大主題的1710篇學(xué)術(shù)論文進(jìn)行實(shí)驗(yàn)。提出了一種基于隨機(jī)森林的論文自動(dòng)分類方法,實(shí)現(xiàn)對(duì)海量論文的自動(dòng)分類;提出了一種基于LDA模型的主題挖掘方法,實(shí)現(xiàn)對(duì)論文關(guān)鍵詞提取,并進(jìn)行詞云可視化分析。
實(shí)驗(yàn)結(jié)果表明,本文提出的隨機(jī)森林論文自動(dòng)分類方法在準(zhǔn)確率、召回率和F值上都有所提升,當(dāng)給出一篇新的論文時(shí),我們能及時(shí)對(duì)論文進(jìn)行自動(dòng)分類;通過(guò)LDA模型能有效地挖掘出各學(xué)科的主題詞,使得論文主題脈絡(luò)更清晰,文本主題詞挖掘更加精確高效,為下一步引文分析、文本挖掘和知識(shí)圖譜構(gòu)建提供有效支撐,具有一定的應(yīng)用前景和實(shí)用價(jià)值。
參考文獻(xiàn)(References):
[1] 王婷婷,韓滿,王宇.LDA模型的優(yōu)化及其主題數(shù)量選擇研究——以科技文獻(xiàn)為例[J].數(shù)據(jù)分析與知識(shí)發(fā)現(xiàn),2018.1:29-39
[2] 廖列法,勒孚剛,朱亞蘭.LDA模型在專利文本分類中的應(yīng)用[J].現(xiàn)代情報(bào),2017.37(3):35-39
[3] 逯萬(wàn)輝,譚宗穎.學(xué)術(shù)成果主題新穎性測(cè)度方法研究——基于Doc2Vec和HMM算法[J].數(shù)據(jù)分析與知識(shí)發(fā)現(xiàn),2018.3:22-29
[4] 顏端武,陶志恒,李蘭彬.一種基于HDP模型的主題文獻(xiàn)自動(dòng)推薦方法及應(yīng)用研究[J].情報(bào)理論與實(shí)踐,2016.39(1):128-132
[5] 曾立梅.基于文本數(shù)據(jù)挖掘的碩士論文分類技術(shù)[J].重慶郵電大學(xué)學(xué)報(bào):自然科學(xué)版,2010.22(5):669-672
[6] 王昊,葉鵬,鄧三鴻.機(jī)器學(xué)習(xí)在中文期刊論文自動(dòng)分類研究中的應(yīng)用[J].現(xiàn)代圖書(shū)情報(bào)技術(shù),2014.3:80-87
[7] 劉瀏,王東波.基于論文自動(dòng)分類的社科類學(xué)科跨學(xué)科性研究[J].數(shù)據(jù)分析與知識(shí)發(fā)現(xiàn),2018.3:30-38
[8] Blei D M, Ng A Y,Jordan M I. Latent Dirichlet Allocation[J].Journal of Machine Learning Research,2003.3:993-1022
[9] 王樹(shù)義,廖樺濤,吳查科.基于情感分類的競(jìng)爭(zhēng)企業(yè)新聞文本主題挖掘[J].數(shù)據(jù)分析與知識(shí)發(fā)現(xiàn),2018.3:70-78
[10] 蘇金樹(shù),張博鋒,徐昕. 基于機(jī)器學(xué)習(xí)的文本分類技術(shù)研究進(jìn)展[J].軟件學(xué)報(bào),2006.17(9):1848-1859
[11] 周慶平,譚長(zhǎng)庚,王宏君,等. 基于聚類改進(jìn)的KNN文本分類算法[J].計(jì)算機(jī)應(yīng)用研究,2016.33(11):3374-3377
[12] 張晨逸,孫建伶,丁軼群.基于MB-LDA模型的微博主題挖掘[J].計(jì)算機(jī)研究與發(fā)展,2011.48(10):1795-1802
[13] Shi Z M,Lee G,Whinston A B. Toward a Better Measure of Business Proximity: Topic Modeling for Industry Intelligence[J].MIS Quarterly,2016.40(4):1035-1056