摘要:屬性詞的聚類是領(lǐng)域?qū)嶓w屬性抽取中的一個重要步驟。在未知領(lǐng)域和大量文本中,人工標注尋找十分困難。本文將一種基于深度學習框架的詞語嵌入表示方法(Word Embedding)引入到領(lǐng)域?qū)嶓w屬性詞聚類研究中,在無監(jiān)督條件下解決大規(guī)模語料、領(lǐng)域?qū)嶓w屬性詞表人工參與構(gòu)建代價較高的問題,并進行了適當?shù)臄U展,取得了較好的效果,可以為信息抽取等后續(xù)高級任務(wù)提供較好服務(wù)。
0引言
隨著機器學習理論的發(fā)展,基于自然語言處理的傳統(tǒng)信息抽取技術(shù)面臨著各種機遇和挑戰(zhàn)。特別是有監(jiān)督的學習方法需要大量人工去標注語料,代價昂貴,成本較高,在現(xiàn)行的機器學習應(yīng)用研究當中,逐步被半監(jiān)督、無監(jiān)督和混合學習方法取代。
在領(lǐng)域?qū)嶓w屬性抽取這一課題中,數(shù)據(jù)來源廣泛,載體形式多樣,大量的信息載體在互聯(lián)網(wǎng)上生成和傳播,從結(jié)構(gòu)化的數(shù)據(jù)庫,半結(jié)構(gòu)化的百科網(wǎng)頁,到完全非結(jié)構(gòu)化的自由文本,給信息抽取工作帶來了各種挑戰(zhàn)和機遇。傳統(tǒng)的監(jiān)督學習方法通過對大量已經(jīng)標注的樣本來學習得到映射模型,然后再對未知樣本進行標簽預測。本文針對前人在使用監(jiān)督學習過程中語料標注工作量大、代價高的實際,提出了一種基于詞語嵌入式表示的無監(jiān)督詞語聚類方法。假設(shè)同類別的屬性詞在文本中具有相同或相近的語用和語境,利用深層神經(jīng)網(wǎng)絡(luò)架構(gòu)學習出詞語的嵌入式表示,也稱詞向量(Word Embedding),使其帶上文本空間的各種特征信息,有助于降低大規(guī)模語料人工尋找構(gòu)建屬性詞表的困難。實踐證明此方法聚類出的詞語再通過后續(xù)的擴展及過濾步驟,基本能夠達到專家要求的構(gòu)建標準。
1相關(guān)理論
領(lǐng)域詞匯的自動聚類可以看成是自然語言處理領(lǐng)域的一項重要任務(wù),并發(fā)展出較多的研究成果。如Sven Martin等提出了基于困惑度為代價函數(shù)的貪婪聚類算法對詞表中的詞進行歸類,可使訓練語料的困惑度最小,但算法時間代價高[1];陳浪舟等在前人研究的基礎(chǔ)上進行了優(yōu)化,提出基于詞的相似性分層聚類算法,并用于基于詞類的可變長統(tǒng)計語言模型研究當中,取得了較好的效果,但是需要借助于專家預先設(shè)定的分類系統(tǒng)[2];程顯毅等利用屬性和屬性值組合的概念模板,并借助于Google搜索進行頻繁挖掘,但實現(xiàn)過程較復雜,增加了人力成本[3];另外還有基于LDA分析進行詞語聚類等方法,但其需要人工預先設(shè)置主題數(shù)目[4]。以上論文所使用的方法基本上可以分為基于規(guī)則的方法、基于統(tǒng)計的方法以及規(guī)則加統(tǒng)計的混合方法,多數(shù)花費代價大,依賴性較高。
深度學習(Deep Learning)是近年來研究的熱點,在圖像、語音和文本這三大信息載體領(lǐng)域均有突破性進展?;谏疃葘W習的詞向量是近年來研究比較多的一種無監(jiān)督的學習方法[5],在研究海量高維文本、未知領(lǐng)域?qū)I(yè)文本、陌生語種文本等問題中體現(xiàn)出極大的優(yōu)越性,其人工參與程度小、自動化程度高,受到越來越多的學者關(guān)注,并且產(chǎn)生了多種擴展模型。其中,word2vec(Word to Vector)是Google在2013年開發(fā)的詞向量轉(zhuǎn)化工具,可以學習出詞語的語義、語法和語用信息,計算詞語的相似度,是本文研究的工具之一。
11word2vec理論描述
詞向量是訓練神經(jīng)網(wǎng)絡(luò)語言模型過程中的產(chǎn)物,與傳統(tǒng)的向量空間模型VSM(Vector Space Model)相比具有維度低、快速、精確等優(yōu)點[6]。
如圖1所示,最下方表示的是前n-1個詞語:wt-n+1,…,wt-2,wt-1,利用神經(jīng)網(wǎng)絡(luò)語言模型可以預測出下一個詞wt。
網(wǎng)絡(luò)的第一層為輸入層:將前n-1個詞語的向量首尾拼接,組成(n-1)×m維的長向量,其中m是初始規(guī)定的詞向量維度。
網(wǎng)絡(luò)的第二層為為隱藏層:與普通神經(jīng)網(wǎng)絡(luò)類似,偏置項可以隨機初始化,激活函數(shù)選用tanh。
網(wǎng)絡(luò)的第三層為輸出層:使用softmax函數(shù)將輸出值的概率歸一化。
12循環(huán)神經(jīng)網(wǎng)絡(luò)語言模型
循環(huán)神經(jīng)網(wǎng)絡(luò)語言模型(Recurrent Neural Network Language Model,RNNLM)是Mikolov于2010年提出的一種基于循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network,RNN)、用來訓練語言模型的改進方法[7],比Bengio的神經(jīng)網(wǎng)絡(luò)模型更出色,也是本文所使用word2vec工具的算法原理模型。循環(huán)神經(jīng)網(wǎng)絡(luò)語言模型如圖2所示。
圖2中,RNNLM包含一個輸入層w(t),代表在t時刻輸入詞的1ofN編碼,以向量形式輸入;一個循環(huán)連接的隱含層s(t),維持了句子的歷史信息和輸出層y(t);輸出層輸出詞的概率分布,以及它們對應(yīng)的權(quán)重矩陣U,V,W。
其中,隱含層s(t)和輸出層y(t)的值可以通過下面公式得出:
13基于語義相似度的聚類
詞語作為一種符號的集合,其在文本中有著特殊存在和表示形式,在中文領(lǐng)域的分詞、文法、語境、修飾等各種難點對機器學習來說均是巨大的挑戰(zhàn)。其中,基于語義相似度詞聚類依舊是研究的重點和難點。
本文結(jié)合領(lǐng)域?qū)嶓w屬性抽取這一課題,利用維基百科中文語料無監(jiān)督地訓練出詞向量,然后再利用向量的夾角余弦距離公式計算詞語之間的距離,挖掘出領(lǐng)域?qū)嶓w所需的屬性詞,為后續(xù)的工作做準備。
對于兩個n維樣本點a(x11,x12,…,x1n)和b(x21,x22,…,x2n),可以使用類似于夾角余弦的概念來衡量它們間的相似程度。
夾角余弦距離公式:
2實驗分析與驗證
21實驗預處理
本文從維基百科中爬取了部分裝備語料,如圖3所示。由于內(nèi)容的開放性,用戶可以自由添加更改百科的內(nèi)容,部分內(nèi)容不規(guī)范,經(jīng)過預處理篩選后共有2 800篇能夠用于實驗。借助于中科院的ICTCLAS分詞系統(tǒng)和CRF++-058工具包,語料經(jīng)過分詞、詞性標注、斷句、命名實體識別后,以備后用。
22屬性詞的聚類挖掘和擴展
考慮到人工尋找屬性詞語會出現(xiàn)遺漏、費時等困難,本文使用Python27中g(shù)ensim工具包(Google的word2vec工具源碼python封裝)進行詞向量的訓練和屬性詞的挖掘,選用大規(guī)模維基中文語料(截止2015年1月,共12 GB)圖3未處理語料樣例進行學習,確保屬性詞語的覆蓋。研究在設(shè)置不同維度、不同窗口條件下對屬性詞挖掘效果的影響。借助于實驗室已有的領(lǐng)域?qū)I(yè)詞典,設(shè)置了兩組對比實驗,并對實驗效果進行初步分析。測試評價選用通用的準確率P、召回率R和查全率F作為評價標準。
根據(jù)先驗知識,選取軍事裝備領(lǐng)域常用的屬性詞語“速度”、“重量”、“航程”、“排水量”等進行聚類挖掘,部分結(jié)果如表1、表2所示。表1與“速度”距離最近的10個詞語
實驗過程中,預先訓練出40、200、1 000維度詞向量模型,窗口大小均有5、10、15三種,共9種組合,為了防止漏詞,設(shè)置最小詞頻總數(shù)為1。經(jīng)過反復調(diào)整,部分結(jié)果如圖4、圖5所示。
23結(jié)果分析
由于領(lǐng)域文本的特殊性,非專業(yè)人員容易遺漏特定的屬性詞,在網(wǎng)絡(luò)大規(guī)模海量語料面前會顯得束手無策。
表1和表2中所展示的結(jié)果是利用詞向量模型計算出的與“速度”、“重量”距離最近的10個詞語(窗口為5、維度為40),部分結(jié)果不是很準確,個別詞語與“速度”、“重量”關(guān)系不大,如:“級位”、“反應(yīng)時間”、“M240B”、“車高”等,經(jīng)過仔細分析,有些詞語雖然不是嚴格意義上的同義詞或者近義詞,但也是相關(guān)的,如擴展出“推重比”、“恒功”、“扭矩”等陌生領(lǐng)域相關(guān)詞匯,這與語料的質(zhì)量有很大關(guān)系。
圖4和圖5表明,在窗口為10、維度為200時,屬性詞的聚類抽取效果最好。經(jīng)過分析,可能的原因是:窗口太小,不能足夠考慮上下文歷史信息(圖5中337%和274%),而窗口太大又容易造成信息冗余,產(chǎn)生“噪聲”,
影響屬性詞的抽?。▓D5中612%和661%);在模型維度選取方面,向量維度過小F值較差(圖4中204%和177%),與模型的構(gòu)建不合理以及訓練不夠充分有關(guān),當維度為1 000時,又引入了大量的相關(guān)詞,也使F值下降(圖4中359%和256%),同時硬件的計算開銷也將增大。經(jīng)過反復驗證,最終設(shè)定維度為200、窗口為10,效果最好(圖4、5中766%和846%),這與屬性詞在文本中出現(xiàn)的行文表達結(jié)構(gòu)有關(guān),需要根據(jù)不同任務(wù)反復調(diào)整。
3結(jié)論與展望
本文在前人工作的基礎(chǔ)上,做出了一些改進和簡單嘗試,將深度學習中的詞向量模型引入到屬性詞語聚類抽取研究當中,然后再結(jié)合專家詞典進行評測,取得了不錯的效果,對于后續(xù)的研究有一定的借鑒意義。但也有較多不足:文本的分詞以及語料的規(guī)范性都需要進一步提高;在訓練神經(jīng)網(wǎng)絡(luò)語言模型時,需要大規(guī)模語料覆蓋,如何獲取高質(zhì)量的大規(guī)模語料依舊是需要考慮的問題;本文僅僅是用向量的夾角余弦公式指定泛化詞語進行相似度查詢聚類,會產(chǎn)生偏差,且結(jié)果還需要進一步清洗過濾。下一步研究將從文本的語言學特征入手,結(jié)合其他詞語距離度量方法,更好地實現(xiàn)信息抽取任務(wù)。
參考文獻
[1] MARTIN S, NEY H. Algorithms for bigram and trigram word clustering[C].In:Proc European Conference Speech Communication and Technology,Madrid,1995:1253-1256.
[2] 陳浪舟,黃泰翼.一種新穎的詞聚類算法和可變長統(tǒng)計語言模型[J].計算機學報,1999,22(9):942-948.
[3] 程顯毅,施佺,沈?qū)W華,等屬性和屬性值組合的概念模板[J].北京大學學報(自然科學版),2013,49(1):15-19.
[4] 彭云,萬常選,江騰蛟,等一種詞聚類LDA的商品特征提取算法[J].小型微型計算機系統(tǒng),2015,7(7):1458-1463.
[5] 劉樹杰,董力,張家駿,等.深度學習在自然語言處理中的應(yīng)用[J].中國計算機學會通訊,2015,11(3):9-16.
[6] BENGIO Y,DUCHARME R,VINCENT P,et al. A neural probabilistic language model[J].The Joural of Machine Research,2003(3):1137-1155.
[7] MIKOLOV T,KOMBRINK S,BURGET L,et al. Extensions of recurrent neural network language model[C].Acoustics,Speech and Signal Processing(ICASSP),2011 IEEE International Conference on,IEEE,2011:5528-5531.