摘 要: 人工智能技術(shù)的蓬勃發(fā)展,驅(qū)動(dòng)著文獻(xiàn)自動(dòng)分類由基于規(guī)則的分類向基于機(jī)器學(xué)習(xí)的方向發(fā)展。文章在對(duì)深度學(xué)習(xí)概述的基礎(chǔ)上,將卷積神經(jīng)網(wǎng)絡(luò)引入到了文獻(xiàn)自動(dòng)分類,構(gòu)建了基于題名、關(guān)鍵詞的多層次卷積神經(jīng)網(wǎng)絡(luò)模型,使之能夠根據(jù)文獻(xiàn)的題名和關(guān)鍵詞自動(dòng)給出中圖分類號(hào)。通過在TensorFlow平臺(tái)上的深度學(xué)習(xí)模型,利用《全國(guó)報(bào)刊索引》約170萬(wàn)條記錄進(jìn)行模型訓(xùn)練,并對(duì)7000多篇待加工的文獻(xiàn)做中圖法分類預(yù)測(cè),其在生產(chǎn)情況下一級(jí)分類準(zhǔn)確率為75.39%,四級(jí)準(zhǔn)確率為57.61%。當(dāng)置信度為0.9時(shí),一級(jí)正確率為43.98%,錯(cuò)誤率為1.96%,四級(jí)正確率為25.66%,四級(jí)錯(cuò)誤率為5.11%。證明該模型有著較低的錯(cuò)誤率,可為《全國(guó)報(bào)刊索引》分類流程的半自動(dòng)化提供幫助,解決存在的編目人員緊缺、加工質(zhì)量和效率下降等問題。
關(guān)鍵詞: 人工智能;智能圖書館;深度學(xué)習(xí);卷積神經(jīng)網(wǎng)絡(luò);TensorFlow;自動(dòng)分類
中圖分類號(hào)TP18;G254.11 文獻(xiàn)標(biāo)識(shí)碼:A DOI:10.11968/tsyqb.1003-6938.2017119
Abstract With the rapid development of artificial intelligence, the automatic classification of literature is changing from the rule-based to the machine learning. After an outline of deep learning, the paper introduced convolution neural network into the automatic classification, constructing a multi-level model based on the title and the key words and thus CLC is given automatically. Through the deep learning model in TensorFlow, about 1700000 records of National Newspaper Index were used to make model train. More than 7000literature were processed with the model and the result is: under the production condition, the accuracy of the first classification is 75.39%; the accuracy of the fourth classification is 57.61. When the confidence is 0.9, the correct rate of the first classification is 43.98%, error rate is 1.96%; correct rate of the fourth classification is 25.66%, the error rate is 5.11%.This shows that the model can be used to help realize the semi-automatic in the classification of National Newspaper Index and other problems.
Key words artificial intelligence; smart library; deep learning; convolution neural network; TensorFlow; automatic classification
1 引言:圖書館與文獻(xiàn)自動(dòng)分類
文獻(xiàn)的標(biāo)引編目加工是圖書館重要的業(yè)務(wù)工作之一,其工作量大,專業(yè)性強(qiáng),又是需要多人協(xié)作的綜合性工作,有自己的特點(diǎn)和規(guī)律,主要采用手工分類的方式。在知識(shí)爆炸的時(shí)代,需要對(duì)數(shù)量龐大、內(nèi)容復(fù)雜、形式多樣的文獻(xiàn)進(jìn)行準(zhǔn)確的歸類、標(biāo)引,對(duì)工作人員的要求很高;另一方面,由于編目外包和圖書館學(xué)專業(yè)教育的轉(zhuǎn)型,資深標(biāo)引編目人員日趨減少,信息加工質(zhì)量和效率都呈下降趨勢(shì)。
20世紀(jì)50、60年代在H .P .Luhn、Maron等人的推動(dòng)下,圖書館界一直在探索文獻(xiàn)自動(dòng)分類的方法。國(guó)內(nèi)相關(guān)研究起始于上世紀(jì)80年代初[1]。近年來隨著人工智能技術(shù)的蓬勃發(fā)展,文獻(xiàn)自動(dòng)分類由基于規(guī)則的分類轉(zhuǎn)向基于機(jī)器學(xué)習(xí)的分類,旨在提高文獻(xiàn)的分準(zhǔn)率。
1.1 基于規(guī)則的分類方法
基于規(guī)則的分類方法主要包括基于詞典發(fā)的分類方法,即構(gòu)建主題詞與分類號(hào)的對(duì)照關(guān)系表,掃描并找出文章所包含的主題詞進(jìn)而計(jì)算文獻(xiàn)的類歸屬性;基于專家系統(tǒng)的自動(dòng)分類方法,即構(gòu)建專家系統(tǒng)結(jié)合推理機(jī)實(shí)現(xiàn)文獻(xiàn)分類[1]。此類方法的一方面構(gòu)建分類主題詞表,但由于在知識(shí)爆炸的當(dāng)下,各學(xué)科發(fā)展迅猛文獻(xiàn)內(nèi)容、形式多樣使得詞表的編制滯后于科學(xué)的發(fā)展,使得其對(duì)于包含新詞的文獻(xiàn)無法分類;另一方面經(jīng)常需要人工依學(xué)科發(fā)展的情況不斷調(diào)整分類規(guī)則。
1.2 基于機(jī)器學(xué)習(xí)的分類方法
文獻(xiàn)分類過程實(shí)質(zhì)是編目人員依據(jù)文獻(xiàn)題名、關(guān)鍵詞和摘要結(jié)合其對(duì)中圖分類法的理解賦予一個(gè)中圖分類號(hào)的過程(少數(shù)情況下需要通讀全文)。換言之,即是編目人員通過培訓(xùn)學(xué)習(xí)中圖分類法構(gòu)建相應(yīng)的分類體系,利用培訓(xùn)學(xué)習(xí)的成果對(duì)文獻(xiàn)進(jìn)行加工,并在實(shí)踐中不斷完善自己的分類體系。把上述過程泛化,利用已編目的文獻(xiàn)構(gòu)建題名、關(guān)鍵詞和摘要的知識(shí)庫(kù),提取相應(yīng)的特征數(shù)據(jù)進(jìn)行學(xué)習(xí),這便是基于機(jī)器學(xué)習(xí)的分類方法。
基于機(jī)器學(xué)習(xí)的分類方法其基本過程主要包括:構(gòu)建語(yǔ)料庫(kù)、文本建模、特征選擇、特征擴(kuò)展、選擇并實(shí)現(xiàn)分類算法五個(gè)環(huán)節(jié)。常用的方法有樸素貝葉斯法、KNN、決策樹法、中心向量法、支持向量機(jī)以及近兩年興起的人工神經(jīng)網(wǎng)絡(luò)的分類方法等?;谏窠?jīng)網(wǎng)絡(luò)的分類方法雖在小規(guī)訓(xùn)練集上與其他傳統(tǒng)的機(jī)器學(xué)習(xí)分類方法不相上下,但隨著數(shù)據(jù)集和網(wǎng)絡(luò)規(guī)模的增大,其性能遠(yuǎn)超于傳統(tǒng)的機(jī)器學(xué)習(xí)方法,能夠更好處理海量數(shù)據(jù)(見圖1)。endprint
本文嘗試將卷積神經(jīng)網(wǎng)絡(luò)引入到文獻(xiàn)自動(dòng)分類研究中,構(gòu)建基于題名、關(guān)鍵詞的多層次卷積神經(jīng)網(wǎng)絡(luò)網(wǎng)絡(luò)模型,使之能夠根據(jù)文獻(xiàn)的題名和關(guān)鍵詞自動(dòng)給出中圖分類號(hào),以解決編目人員緊缺,加工質(zhì)量和效率下降的問題,并在實(shí)際生產(chǎn)環(huán)境下證明該模型的準(zhǔn)確性和合理性。
2 深度學(xué)習(xí)與TensorFlow
隨著第三次人工智能浪潮的興起,機(jī)器學(xué)習(xí)作為一種數(shù)據(jù)挖掘的方法被廣泛應(yīng)用于垃圾郵件檢測(cè)、定向客戶的產(chǎn)品推薦、商品預(yù)測(cè)等領(lǐng)域。近年來,受益于計(jì)算機(jī)在通用計(jì)算領(lǐng)域計(jì)算性能的持續(xù)提升和海量數(shù)據(jù)的便捷獲取,深度學(xué)習(xí)作為一種特殊的機(jī)器學(xué)習(xí)范式在圖像識(shí)別、語(yǔ)音識(shí)別、機(jī)器翻譯、文本分類等領(lǐng)域獲得巨大成功,憑借從輸入數(shù)據(jù)中判斷“哪些是特征值”,無需人工干預(yù)的能力,其在醫(yī)療診斷、藝術(shù)創(chuàng)作、醫(yī)療診斷、自動(dòng)駕駛等更加復(fù)雜的領(lǐng)域也有突破性的進(jìn)展,并已開始應(yīng)用于實(shí)際工作中。
2.1 深度神經(jīng)網(wǎng)絡(luò)
深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)是人工神經(jīng)網(wǎng)絡(luò)的擴(kuò)展,人工神經(jīng)網(wǎng)絡(luò)是基于模擬大腦皮層的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)和功能而提出的計(jì)算模型(見圖2),人工神經(jīng)元細(xì)胞可根據(jù)輸入信號(hào)pi的刺激觸發(fā)輸出a,大量的人工神經(jīng)元細(xì)胞依一定的規(guī)則(即權(quán)重wi)連接在一起形成一個(gè)大規(guī)模并行計(jì)算網(wǎng)絡(luò),即人工神經(jīng)網(wǎng)絡(luò)。
相較于其他機(jī)器學(xué)習(xí)方法,深度學(xué)習(xí)在模擬人腦神經(jīng)元間的連接、對(duì)外界刺激的感知和傳導(dǎo)的同時(shí),采用讓各層預(yù)先學(xué)習(xí)的方式,建立對(duì)觀察數(shù)據(jù)(或稱訓(xùn)練數(shù)據(jù)、輸入)和標(biāo)簽(或稱輸出)之間的聯(lián)合分布。學(xué)習(xí)從淺層順次開始,上一層學(xué)習(xí)得出的數(shù)據(jù)會(huì)作為下一層的輸入數(shù)據(jù),由淺層的初級(jí)特征逐步學(xué)習(xí)到深層的高級(jí)特征。如在學(xué)習(xí)什么是狗時(shí),第一層是一個(gè)輪廓、下一層是眼、鼻子的形狀,在下一層是臉上的其他細(xì)節(jié)。以此類推,是一個(gè)從全局到局部再到細(xì)節(jié)特征的學(xué)習(xí)過程,每一層都在分段學(xué)習(xí),學(xué)習(xí)過程中的錯(cuò)誤也可以在每一層得到相應(yīng)處理,這使得其具有自我學(xué)習(xí)和解決問題的能力,該模型最早由多倫多大學(xué)的Hitton教授于2006年提出——一種名為深度置信網(wǎng)絡(luò)(Deep Belief Net,DBN)[9],在2012年的ImageNet圖像識(shí)別大賽中以低于第二名10%的錯(cuò)誤率而嶄露頭角[10],之后LeCun、Mikolov等人則提出卷積神經(jīng)網(wǎng)絡(luò)和循環(huán)神經(jīng)網(wǎng)絡(luò),對(duì)深度學(xué)習(xí)進(jìn)行優(yōu)化和擴(kuò)展。
2.2 深度學(xué)習(xí)框架
為了更好、更方便高效使用機(jī)器學(xué)習(xí)算法,通常需要一定的軟件平臺(tái)支持,如Caffe、Theano、Torch、CNTK、Tensorflow等。
Tensorflow是谷歌于2015推出的一種供機(jī)器學(xué)習(xí)所使用的利用數(shù)據(jù)流圖進(jìn)行計(jì)算的庫(kù)套件,遵循Apache2.0協(xié)議。相對(duì)于其他幾個(gè)神經(jīng)網(wǎng)計(jì)算框架而言,Tensorflow屬于其中的后起之秀,它支持多種機(jī)器學(xué)習(xí)常用的開發(fā)語(yǔ)言(如C++、Python、Cuda),支持幾乎所有類型的深度學(xué)習(xí)算法的開發(fā)(如 CNN、RNN、LSTM 等),能在多種硬件環(huán)境(CPU、GPU、TPU手機(jī)、云)下很好地利用各自的長(zhǎng)處和特點(diǎn)運(yùn)行,并能夠進(jìn)行網(wǎng)絡(luò)分布式學(xué)習(xí)。由于其具有眾多優(yōu)點(diǎn),如計(jì)算速度快、部署容易、靈活性強(qiáng)、可擴(kuò)展等,有學(xué)者在github上發(fā)布了關(guān)于Caffe,Theano、Torch、CNTK、Tensorflow性能比較的文章,從網(wǎng)絡(luò)模型能力、接口、模型部署、性能,架構(gòu)和跨平臺(tái)方面對(duì)其進(jìn)行比較分析并做相應(yīng)評(píng)分(滿分為5分)[11](見表1),比較可見,Tensorflow無論是單項(xiàng)還是綜合評(píng)分都比較高。
Google是TensorFlow 的最大用戶和推動(dòng)者,在谷歌的強(qiáng)力推廣下,很多高校、科研機(jī)構(gòu)和第三公司已開始使用Tensorflow,例如谷歌利用該平臺(tái)對(duì)其自動(dòng)翻譯服務(wù)進(jìn)行了系統(tǒng)升級(jí),翻譯質(zhì)量比過去有明顯提升;在谷歌郵件系統(tǒng)中,用sequence-to-sequence[12]模型來自動(dòng)建立文本摘要,并對(duì)郵件語(yǔ)境預(yù)測(cè)可能的回復(fù);對(duì)視網(wǎng)膜影像數(shù)據(jù)進(jìn)行訓(xùn)練,已能成功預(yù)測(cè)影像是否有糖尿病引起的視網(wǎng)膜病變[13];在AutoDraw[14]中開發(fā)“預(yù)測(cè)”功能,可以根據(jù)標(biāo)題和用戶畫出的部分元素推測(cè)并繼續(xù)完成一幅繪畫作品; Google Now則通過適當(dāng)?shù)臄?shù)據(jù)反饋(RNN,反饋神經(jīng)網(wǎng)絡(luò))來理解音頻信號(hào),進(jìn)而實(shí)現(xiàn)語(yǔ)音識(shí)別、語(yǔ)音搜索、語(yǔ)音情感分析等[15]。這些科研應(yīng)用也給深度學(xué)習(xí)在其他行業(yè)中的應(yīng)用提供了參照。
3 基于卷積神經(jīng)網(wǎng)絡(luò)的《全國(guó)報(bào)刊索引》文獻(xiàn)分類模型
《全國(guó)報(bào)刊索引》近4年歷史數(shù)據(jù)約為170萬(wàn)條,包含題名、關(guān)鍵詞、分類號(hào)、摘要、作者、出版社、全文等文獻(xiàn)信息。一方面由于文獻(xiàn)題名與內(nèi)容有著較高的符合率[1] ,且題名是一個(gè)有限長(zhǎng)度、結(jié)構(gòu)緊湊、能夠表達(dá)獨(dú)立意思的短句,這使得卷積神經(jīng)網(wǎng)絡(luò)可以用于文獻(xiàn)的分類;另一方面從摘要中提取正確關(guān)鍵詞存在一定困難,所以本文選取題名+關(guān)鍵詞作為網(wǎng)絡(luò)模型訓(xùn)練的訓(xùn)練集,文獻(xiàn)對(duì)應(yīng)的中圖法分類號(hào)作為網(wǎng)絡(luò)模型的輸出。
3.1 文獻(xiàn)分類系統(tǒng)模型設(shè)計(jì)
基于深度學(xué)習(xí)的報(bào)刊索引文本分類基本思想是將已分好類的文獻(xiàn)題名和關(guān)鍵詞經(jīng)切詞后構(gòu)成二維詞向量作為神經(jīng)網(wǎng)絡(luò)的輸入,分類號(hào)作為輸出,通過多層神經(jīng)網(wǎng)絡(luò)訓(xùn)練后,對(duì)新的文獻(xiàn)分類進(jìn)行預(yù)測(cè)。本文所用數(shù)據(jù)中,中圖分類法一級(jí)類目38個(gè)、四級(jí)類目9668個(gè),為了降低訓(xùn)練成本,本文模型采用粗、細(xì)分類的分層分類結(jié)構(gòu)(見圖3),先大類分類,隨后在大類分類的基礎(chǔ)上將其進(jìn)行四級(jí)分類;預(yù)測(cè)也是如此。
分類系統(tǒng)采用模型預(yù)訓(xùn)練和模型預(yù)測(cè)組成。其中,預(yù)訓(xùn)練是通過對(duì)現(xiàn)有文獻(xiàn)分類的結(jié)果搭建深層神經(jīng)網(wǎng)絡(luò)的深度學(xué)習(xí)模型并進(jìn)行數(shù)據(jù)訓(xùn)練,包括數(shù)據(jù)預(yù)處理和機(jī)器學(xué)習(xí)兩部分;模型預(yù)測(cè)則是對(duì)未知文獻(xiàn)進(jìn)行分類結(jié)果預(yù)測(cè)(見圖4)。
3.2 數(shù)據(jù)預(yù)處理
由于神經(jīng)網(wǎng)絡(luò)的準(zhǔn)確率對(duì)于受訓(xùn)練數(shù)據(jù)影響較大,故數(shù)據(jù)預(yù)處理是整個(gè)系統(tǒng)的第一步也是最為關(guān)鍵的一步,包含分詞、詞向量轉(zhuǎn)換以及輸出標(biāo)簽的獨(dú)立熱編碼(one-hot code)。endprint
3.2.1 分詞
分詞則是將自然語(yǔ)言轉(zhuǎn)換為一組詞語(yǔ)的表達(dá),與英文依空格切詞不同,中文分詞分為句子切分,對(duì)輸入的中文文檔進(jìn)行預(yù)處理,得到單個(gè)中文短句的集合;原子切分,對(duì)輸入的中文短句進(jìn)行原子切分,并根據(jù)所得的原子系列建立初始的切分詞圖;堆砌詞語(yǔ),基于原子系列,從不同視角分別進(jìn)行中文詞語(yǔ)識(shí)別,并將各自的堆砌結(jié)果添加到切分圖;分詞優(yōu)選,基于上一階段的堆砌路徑和各路徑的概率,計(jì)算得出最可能的堆砌路徑,作為最后的分詞結(jié)果,并輸出最終結(jié)果,四個(gè)步驟。本文采取的做法如下:首先對(duì)所有文獻(xiàn)的關(guān)鍵詞做詞頻統(tǒng)計(jì),并構(gòu)建分詞用主題詞表;基于前綴詞典實(shí)現(xiàn)高效的詞圖掃描,結(jié)合主題詞表生成句子中漢字所有可能成詞情況所構(gòu)成的有向無環(huán)圖;其次運(yùn)用動(dòng)態(tài)規(guī)劃算法查找最大概率路徑, 并找出基于詞頻的最大切分組合;對(duì)于未登錄詞,采用隱馬爾可夫模型(Hidden Markov Model,HMM)[24]模型做漢字成詞處理。
3.2.2 詞向量
正如前文所提到的,深度學(xué)習(xí)實(shí)質(zhì)是數(shù)值計(jì)算,所以需要詞向量轉(zhuǎn)換將自然語(yǔ)言轉(zhuǎn)換成可計(jì)算的數(shù)學(xué)表達(dá),即將一個(gè)詞轉(zhuǎn)換成一定空間向量下的概率表達(dá)即p=(w(t)│(w(t-n+1),…,w(t-1)),其中w(t)為句子中第t個(gè)詞在文本中的向量表達(dá)。word vector則表示由該文獻(xiàn)題名和關(guān)鍵詞組成的詞向量組(見圖5)。
其中,label表示文獻(xiàn)所對(duì)應(yīng)的分類號(hào)采用獨(dú)立熱編碼形式,將分類號(hào)映射為N維空間向量(N為總分類個(gè)數(shù)),當(dāng)某一個(gè)維度上的值為1,其它位為0時(shí)表示該表示其所對(duì)應(yīng)的分類號(hào),即label=((1 0 … 0 0));詞向量wv=(wv11 wv12 … wv1j … wv1m)表示該文獻(xiàn)的中一個(gè)詞。
詞向量分為靜態(tài)(static)和非靜態(tài)(non-static)方式兩種,靜態(tài)方式采用預(yù)訓(xùn)練的詞向量,訓(xùn)練過程不更新詞向量,在數(shù)據(jù)量不大的情況下使用靜態(tài)方式可以得到不錯(cuò)的效果;非靜態(tài)方式則是在訓(xùn)練過程中更新詞向量,訓(xùn)練過程中調(diào)整詞向量,能加速收斂。詞向量訓(xùn)練模型有很多如skip-gram、CBOW[20-22]、C&W[23]模型等,本文采用靜態(tài)方式,使用skip-gram模型,結(jié)合文獻(xiàn)的題名、關(guān)鍵詞和摘要的分詞結(jié)果作為詞向量的訓(xùn)練集,構(gòu)建靜態(tài)詞向量。
3.3 卷積神經(jīng)網(wǎng)絡(luò)分類模型的分析與設(shè)計(jì)
通過Yoon kim的研究表明,有限長(zhǎng)度、結(jié)構(gòu)緊湊、能夠表達(dá)獨(dú)立意思的句子可以使用卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行分類[18,25,26],在其研究的基礎(chǔ)上,本文提出將文獻(xiàn)的題名、關(guān)鍵詞作為訓(xùn)練集,并搭建多層卷積神經(jīng)網(wǎng)絡(luò)用于文獻(xiàn)分類的訓(xùn)練和預(yù)測(cè)。
卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network, CNN)[27]顧名思義,將卷積濾波與神經(jīng)網(wǎng)絡(luò)兩個(gè)思想結(jié)合起來與普通神經(jīng)網(wǎng)絡(luò)的區(qū)別在于,卷積神經(jīng)網(wǎng)絡(luò)包含了一個(gè)由卷積層和子采樣層構(gòu)成的特征抽取器。在卷積神經(jīng)網(wǎng)絡(luò)的卷積層中,一個(gè)神經(jīng)元只與部分鄰層神經(jīng)元連接。在CNN的一個(gè)卷積層中,通常包含若干個(gè)特征平面(feature maps),每個(gè)特征平面由一些矩形排列的的神經(jīng)元組成,同一特征平面的神經(jīng)元共享權(quán)值,這里共享的權(quán)值就是卷積核。卷積核一般以隨機(jī)小數(shù)矩陣的形式初始化,在網(wǎng)絡(luò)的訓(xùn)練過程中卷積核將學(xué)習(xí)得到合理的權(quán)值。共享權(quán)值(卷積核)帶來的直接好處是減少網(wǎng)絡(luò)各層之間的連接,同時(shí)又降低了過擬合的風(fēng)險(xiǎn)。子采樣也叫做池化(pooling),通常有均值子采樣(average pooling)和最大值子采樣(max pooling)兩種形式。子采樣可以看作一種特殊的卷積過程。卷積和子采樣大大簡(jiǎn)化了模型復(fù)雜度,減少了模型的參數(shù)。為此,我們可以得知卷積神經(jīng)網(wǎng)絡(luò)的基本結(jié)構(gòu)(見圖6),其由三部分構(gòu)成。第一部分是輸入層;第二部分由n個(gè)卷積層和池化層的組合組成;第三部分由一個(gè)全連結(jié)的多層感知分類器構(gòu)成。
在作者文獻(xiàn)自動(dòng)分類的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)中(見圖7),輸入層為20*20詞向量,隱含層由卷積核為2*20和3個(gè)2*1的卷基層堆疊而成,輸出層為全連接層,結(jié)合softmax激活函數(shù)將提取的文本特征輸出為各個(gè)分類上的概率分布。
3.4 實(shí)驗(yàn)結(jié)果與分析
實(shí)驗(yàn)所用數(shù)據(jù)為上海圖書館《全國(guó)報(bào)刊索引》2013-2016(或2014-2017年,作者確定年份)年170萬(wàn)余條題錄將上述模型于TensorFlow平臺(tái)上進(jìn)行訓(xùn)練和調(diào)試,其中訓(xùn)練集為153萬(wàn)條,訓(xùn)練用驗(yàn)證集為17萬(wàn)條。模型訓(xùn)練集的準(zhǔn)確率收斂于67%,訓(xùn)練用驗(yàn)證集的準(zhǔn)確率收斂于69%左右(見圖8、9)。
在生產(chǎn)環(huán)境中,模型預(yù)測(cè)結(jié)果的正確與否是以人工分類結(jié)果為參照標(biāo)準(zhǔn)。對(duì)未知的7144條待加工數(shù)據(jù)做分級(jí)分類預(yù)測(cè),并與人工分類結(jié)果做比較,測(cè)試后得知,一級(jí)準(zhǔn)確率為75.39%,四級(jí)準(zhǔn)確率為57.61%(見表2)。
正如前文所提到神經(jīng)網(wǎng)絡(luò)的結(jié)果輸出是為一個(gè)分類上的概率表達(dá),當(dāng)設(shè)輸出閾值(置信度)為0.9時(shí),雖模型一級(jí)正確率為43.98%,一級(jí)錯(cuò)誤率為1.96%,四級(jí)輸出正確率為25.66%,錯(cuò)誤率為5.11%(見表3)。這表明對(duì)于測(cè)試集而言其預(yù)測(cè)結(jié)果在閾值為0.9時(shí)的輸出結(jié)果有著較低的錯(cuò)誤率,即擁有較高的可信度。
3.4.1 訓(xùn)練集對(duì)準(zhǔn)確率的影響
受期刊收錄稿件偏好影響,本文所使用的數(shù)據(jù)存在很大的不均衡性(見表4),大量的數(shù)據(jù)集中在D、F、G、R四個(gè)大類上,最少的Z大類只有20個(gè)訓(xùn)練樣本,由于神經(jīng)網(wǎng)絡(luò)的訓(xùn)練集不均衡性[28-31]導(dǎo)致模型預(yù)測(cè)準(zhǔn)確率在一定層度下會(huì)有所下降,通過訓(xùn)練集均衡以獲得最佳結(jié)果;對(duì)于一些極度不均衡的數(shù)據(jù),如T、Z大類,四年內(nèi)總計(jì)數(shù)據(jù)不足100條的類目,無法做樣本均衡,則可將其標(biāo)統(tǒng)一注為“未知”類目,當(dāng)預(yù)為“未知”類目時(shí),直接交由人工處理。
3.4.2 分詞對(duì)準(zhǔn)確率的影響
由于中文分詞的特殊性,使得分詞的分準(zhǔn)率受詞表影響較大,如“上海圖書館”一詞,在沒有相應(yīng)的主題詞表時(shí)會(huì)被切割為“上海/圖書館”,使得其在句中的意思是有所改變,影響訓(xùn)練時(shí)的特征提取,進(jìn)而影響預(yù)測(cè)的準(zhǔn)確性。由于并無主題詞表,故對(duì)170萬(wàn)分文獻(xiàn)中出現(xiàn)的關(guān)鍵詞做詞頻統(tǒng)計(jì),為分詞提供主題詞表。經(jīng)不完全測(cè)試,在有無詞表的情況下,準(zhǔn)確率相差約2%。endprint
3.4.3 驗(yàn)證數(shù)據(jù)對(duì)結(jié)果的影響
由于驗(yàn)證數(shù)據(jù)采用實(shí)際生產(chǎn)環(huán)境中的數(shù)據(jù)作為測(cè)試集,其數(shù)據(jù)集合并不覆蓋所有的分類項(xiàng)目,且存在數(shù)據(jù)不均衡問題,使得測(cè)試結(jié)果不具有統(tǒng)計(jì)學(xué),但反映了其在實(shí)際生產(chǎn)環(huán)境下的使用情況,證明基于卷積神網(wǎng)絡(luò)的文獻(xiàn)自動(dòng)分類在實(shí)際工作中的可行性。
4 展望
谷歌的最新研究成果表明,將計(jì)算機(jī)視覺和語(yǔ)言模型通過CNN與RNN網(wǎng)絡(luò)疊加進(jìn)行合并訓(xùn)練,所得到的系統(tǒng)可以自動(dòng)生成一定長(zhǎng)度的文字文本[19]等。這些研究成果非常適合應(yīng)用于圖書館內(nèi)部業(yè)務(wù)的智能化上,如圖書館藏資源的自動(dòng)分類、自動(dòng)摘要、主題提取、文章聚類、圖片自動(dòng)標(biāo)引、圖像識(shí)別、業(yè)務(wù)預(yù)測(cè)和分析等。
本文在對(duì)深度學(xué)習(xí)的研究基礎(chǔ)上提出了基于深度學(xué)習(xí)的文獻(xiàn)自動(dòng)分類模型,將文獻(xiàn)分類問題轉(zhuǎn)化為基于神經(jīng)網(wǎng)絡(luò)的自動(dòng)學(xué)習(xí)和預(yù)測(cè)的問題。通過對(duì)《全國(guó)報(bào)刊索引》170萬(wàn)條數(shù)據(jù)的模型訓(xùn)練以及7000多篇待加工的文獻(xiàn)預(yù)測(cè),證明此方法是可行的,且有較高的置信度,分詞、詞表、模型訓(xùn)練完全依賴于歷史數(shù)據(jù)但本文僅細(xì)分至四級(jí)類目,隨著分類的逐步深入,題名與關(guān)鍵詞并不能很好的體現(xiàn)出文獻(xiàn)之間的差異。摘要是體現(xiàn)文獻(xiàn)細(xì)微差別的重要切入點(diǎn),在接下來的研究中,將會(huì)研究如何從摘要中提文獻(xiàn)信息,以提升分類準(zhǔn)確率和細(xì)分程度。
參考文獻(xiàn):
[1] 成穎,史九林.自動(dòng)分類研究現(xiàn)狀與展望[J].情報(bào)學(xué)報(bào),1999,18(1):20-26.
[2] 李湘東,阮濤,劉康.基于維基百科的多種類型文獻(xiàn)自動(dòng)分類研究[J/OL].[2017-10-17].http://kns.cnki.net/kcms/detail/11.2856.G2.20171017.1501.012.html.
[3] 張野,楊建林.基于KNN和SVM的中文文本自動(dòng)分類研究[J].情報(bào)科學(xué),2011,29(9):1313-1317.
[4] Wei L,Wei B,Wang B,et al.Text Classification Using Support Vector Machine with Mixture of Kernel[J].Journal of Software Engineering and Applications,2012,5(12):55-58.
[5] Hebb Donald.The Organization of Behavior a neuropsychological theory[M].New York:John Wiley,1949:100-136.
[6] Liu M Q.Discrete-time delayed standard neural.Network and its application[J].Sci China,2006,49(2):137-154.
[7] 王昊,嚴(yán)明,蘇新寧.基于機(jī)器學(xué)習(xí)的中文書目自動(dòng)分類研究[J].中國(guó)圖書館學(xué)報(bào),2010,36(6):28-39.
[8] 葉鵬.基于機(jī)器學(xué)習(xí)的中文期刊論文自動(dòng)分類研究[D].南京:南京大學(xué),2013.
[9] Hinton G E,Osindero S,Teh Y W.A fast learning algorithm for deep belief nets[J].Neural computation,2006,18(7):1527-1554.
[10] Krizhevsky A,Sutskever I,Hinton G E.ImageNet classification with deep convolutional neural networks[C].International Conference on Neural Information Processing Systems.Curran Associates Inc,2012:1097-1105.
[11] Evaluation of Deep Learning Toolkits[EB/OL].[2017-10-17].https://github.com/zer0n/deepframeworks/blob/master/README.md.
[12] Ilya Sutskever,Oriol Vinyals,Quoc V.Le.Sequence to sequence learning with neural networks[C].Advances in Neural Information Processing Systems 2014:3104-3112.
[13] google developers blog[EB/OL].[2017-10-17].https://developers.googleblog.com/2017/02/announcing-tensorflow-10.html.
[14] Auto Draw[EB/OL].[2017-10-17].https://www.autodraw.com/.
[15] Alex Graves,Abdel-rahman Mohamed,Geoffrey Hinton. Speech recognition with deep recurrent neural networks[C].International Conference on Acoustics,Speech and Signal Processing,2013:6645-6649.
[16] Maron M E.On Relevance,Probabilistic Indexing and Information Retrieval[J].Journal of the Acm,1960,7(3):216-244.endprint
[17] 劉佳賓,陳超,邵正榮,等.基于機(jī)器學(xué)習(xí)的科技文摘關(guān)鍵詞自動(dòng)提取方法[J].計(jì)算機(jī)工程與應(yīng)用,2007(14):170-172.
[18] Yoon Kim.Convolutional Neural Networks for Sentence Classification[C].Empirical Methods in Natural Language Processing(EMNLP),2014:1746-1751.
[19] A Picture is Worth Thousand Coherent[EB/OL].[2017-10-17].https://research.googleblog.com/2014/11/a-picture-is-worth-thousand-coherent.html.
[20] Tomas Mikolov,Kai Chen,Greg Corrado,et al.Efficient Estimation of Word Representations in Vector Space[J].arXiv preprint,2013: arXiv:1301.3781.
[21] Tomas Mikolov,Ilya Sutskever,Kai Chen,et al.Distributed Representations of Words and Phrases and their Compositionality[C].Advances in Neural Information Processing Systems,2013:3111-3119.
[22] Yoav Goldberg,Omer Levy.word2vec Explained: deriving Mikolov et al.'s negative-sampling word-embedding method[J].arXiv preprint,2014:arXiv:1402.3722.
[23] Collobert R,Weston J.A unified architecture for natural language processing:deep neural networks with multitask learning[C].International Conference.DBLP,2008:160-167.
[24] Kevin P.Murphy,Mark A.Paskin.Linear Time Inference in Hierarchical HMMs[C].Proceedings of Neural Information Processing Systems,2001:833-840.
[25] Nal Kalchbrenner,Edward Grefenstette,Phil Blunsom.A convolutional neural network for modelling sentences[J].arXiv preprint.2014: arXiv:1404.2188.
[26] Ying Wen,Weinan Zhang,Rui Luo,et al.Learning text representation using recurrent convolutional neural network with highway layers[J].arXiv preprint,2016: arXiv:1606.06905.
[27] LeCun,Yann.LeNet-5,convolutional neural networks[EB/OL].[2017-10-17].http://yann.lecun.com/exdb/lenet/.
[28] Paulina Hensman,David Masko.The impact of imbalanced training data for convolutional neural networks[EB/OL].[2017-10-17].https://www.kth.se/social/files/588617ebf2765401cfcc478c/PHensmanDMasko_dkand15.pdf.
[29] Palodeto V,Terenzi H,Marques J L B.Training neural networks for protein secondary structure prediction: the effects of imbalanced data set[C].Intelligent Computing,International Conference on Emerging Intelligent Computing Technology and Applications.Springer-Verlag,2009:258-265.
[30] Chandonia J M,Karplus M.The importance of larger data sets for protein secondary structure prediction with neural networks.[J].Protein Science,2010,5(4):768-774.
[31] Pulgar F J,Rivera A J,Charte F,et al.On the Impact of Imbalanced Data in?Convolutional Neural Networks Performance[C].International Conference on Hybrid Artificial Intelligence Systems.Springer,Cham,2017:220-232.
作者簡(jiǎn)介:郭利敏,男,上海圖書館系統(tǒng)網(wǎng)絡(luò)部工程師。endprint