• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于LSTM自動編碼機的短文本聚類方法

      2017-10-26 06:42黃健翀鄧玫玲
      計算技術與自動化 2017年3期
      關鍵詞:自然語言處理聚類

      黃健翀 鄧玫玲

      摘要:一種基于文本向量化的短文本聚類方法。該方法以詞向量作為基本特征,使用基于LSTM的自動編碼機,對表征文本的詞向量進行壓縮編碼,從而將文本不定長的詞向量特征統(tǒng)一提取為統(tǒng)一輸入長度的文本特征向量。這些文本特征向量的聚類結果即為短文本的聚類結果。對這一方法使用帶標注的數(shù)據集進行了測試,使用基尼非純度作為指標衡量該方法的聚類效果與人工聚類的擬合度;同時,使用聚類中心平均距離來衡量聚類結果中句子之間的結構相似度。結果表明,該方法更著重于匹配整體的文檔結構,得到的聚類的句子間的結構相似度較高。

      關鍵詞:自然語言處理;短文本;聚類;長短期記憶網絡;自動編碼機

      中圖分類號:TP183文獻標識碼:A

      Abstract:A short text clustering method,which is based on text vectorization,is proposed in this article.Word vectors are used as basic features in this method,and are encoded and compressed by LSTMAutoEncoder to get fixed length vectors to represent the texts.These fixed length vectors are used for the final clustering.A test with labeled dataset is applied for this method,with Gini impurity used to measure the similarity of the result of the clustering of this method and human clustering.Meanwhile,innercluster distance is used as evaluation for the structural similarity within a cluster.The result shows that,this method is focused on matching the structural information of the text,as the result got a relatively high similarity within the cluster.

      Key words:natural language processing;short text;clustering;long shortterm memory network;autoencooder

      1引言

      在自然語言處理的應用領域中,文本聚類是一個重要的任務。通過文本聚類,可以根據文本內容的性質對海量文本進行初步的劃分,為后續(xù)如數(shù)據挖掘、標簽化處理、知識圖譜等一系列的應用提供一定的信息。同時,文本聚類的結果對一些業(yè)務本身,諸如客服回復、病例整理等存在參考價值。在文本聚類中,以詞在文檔中的出現(xiàn)情況作為特征維度,組建特征向量并進行聚類的方法是一類較經典的方法。該類方法依賴于兩個文檔之間共有詞的比較,需要對文檔中詞的出現(xiàn)情況進行編碼,并比較兩個編碼后的向量。在該類方法中,較經典的文檔編碼方法是直接將詞出現(xiàn)情況進行編碼的詞袋(Bag of words)方法[1]以及進一步衍生的以詞頻-逆向文檔頻率(Term FrequencyInverse Document Frequency,TFIDF)作為權重的編碼方法。使用當文本長度較長時,文本間存在足夠多的相同詞匯,得到的表征文本的特征向量較稠密,能夠較好地應用于文本聚類上。然而,短文本(通常在10~100詞之間)聚類問題因其文本長度短,基于詞出現(xiàn)情況生成的詞袋向量非常稀疏,詞和詞之間的重合率較低,容易由于同義詞/近義詞的語義鴻溝現(xiàn)象產生相似度漂移,傳統(tǒng)的聚類方式效果差強人意。

      另一方面,詞袋模型在操作時并沒有考慮文本的結構信息(Semantic Information)。雖然改進的詞袋模型使用n元(ngram)詞能夠保留部分結構信息,但并非完整的結構信息。

      針對于短文本易受同義詞影響的特性,可以使用詞向量(Word vector)作為基礎特征。近義詞和同義詞的詞向量具有高相似度,可以利用這一特性,解決原先在詞袋模型中,同義詞無法識別的問題。使用詞向量作為基礎特征、LSTM整合處理的組合方法能有效地對文本內在含義進行抽取,這一點已經被最近的一些自然語言推斷(Natural Language Inference)方法充分證明了 [2][3]。因此,可以使用類似的方法,將詞向量按順序輸入到LSTM網絡中轉化為最終的文本向量,并使用經典的Kmeans方法進行聚類。在文本向量的生成過程中,為了最大限度地保留有效信息,使用自動編碼機(AutoEncoder)的方式來對詞向量進行轉換的LSTM網絡模型進行訓練。

      2詞的分布式表示向量模型

      以TFIDF作為權重的詞袋模型中,特征(后續(xù)簡述為TFIDF特征)中的單個詞語實際上是作為一個單元來進行處理的。在詞表示的級別,其表示可以視為一個僅在對應該詞的維度上對應值為1的詞獨熱編碼(Onehot encoding)向量。而詞袋模型則是將這些向量累加起來并乘以對應的IDF值作為權重,得到該文檔向量中對應于這一個詞的最終特征值。在這一過程中,詞與詞之間的關系并沒有被考慮。表達同樣意義或近似意義的詞,為該特征向量上的毫無關系的兩個維度。

      基于“詞的語義由其上下文確定” 理論(A word is characterized by the company it keeps),許多分布語言模型被提出。其中較典型的有基于矩陣的分布表示——以全局向量法(Global Vector,GloVe)[4]為代表,和基于神經網絡的分布表示——以本文中使用的詞向量生成工具Word2vec[5]采用的連續(xù)詞袋(Continuous BagofWords)模型和跳過語法模型(Skipgram)為代表。endprint

      通過分布式表示的詞向量模型得到的詞向量,有一個特性是可以很好地表征詞和詞之間的關系。典型的例子是詞的關系的類比,如

      υ("國王")-υ("王后")≈υ("男")-υ("女")

      υ("英國")+υ("首都 ")≈υ("倫敦")(1)

      對詞間關系有良好表達這一特性正是對短文本的表征中所需要的。這一特性使得近義詞或同義詞更容易被表征為近似的向量。這一關系能夠在后續(xù)的LSTM網絡中被捕捉并利用。此外,分布式表示的詞向量具有低維稠密的特點,在后續(xù)的使用上較高維稀疏的基于詞獨熱編碼(Onehot encoding)所生成的詞袋(Bag of Words)或進一步的TFIDF特征更為方便。

      3基于LSTM的自動編碼機

      31自動編碼機(Autoencoder)

      自動編碼機是利用自監(jiān)督學習來對輸入樣本進行編碼的人工神經網絡(Artificial Neural Network)。自動編碼機的主要用于對某種特定分布的數(shù)據集進行壓縮編碼,以達到降低數(shù)據樣本維度的目的。自動編碼機通常用于進行無監(jiān)督學習(原理為自監(jiān)督學習)和特征學習[6][7]。自動編碼機及其衍生也在生成模型中得到了應用[8]。自動編碼機的結構主要分為兩個部分:編碼器(Encoder)與解碼器(Decoder),其中編碼器主要將原始數(shù)據 壓縮為輸出編碼 ,即:

      :X→Z(2)

      而解碼器則將輸出編碼 還原為接近原始數(shù)據的數(shù)據,即

      Ψ:Z→X′(3)

      自動編碼機的原理圖如下:

      圖1自動編碼機原理簡圖

      將數(shù)據轉化為編碼的過程中,數(shù)據的信息有一定損失。在編碼中僅保留主要的信息。這一特性亦提供了降低隨機噪聲的能力。因此,在部分場景中會使用自動編碼機作為降噪機制,將編碼再解碼后的數(shù)據作為降噪后的結果輸出。

      為使自動編碼機能夠保留原樣本中的主要信息,優(yōu)化目標設置為:

      ,φ=argmin,φ||X-φ((x))X||2(4)

      即輸出編碼經過解碼器還原后,其和原輸入相差距離最小,應該能最大限度地還原原始數(shù)據。

      32長短期記憶網絡(Long shortterm memory Neural Network)

      為處理序列型的數(shù)據,Gollerp[9]等提出了遞歸神經網絡(Recursive Neural Network,RNN)。遞歸神經網絡將先前時刻的輸出作為輸入一部分,與此刻的外部輸入一起輸入到神經網絡中,以將先前時刻的輸入信息保留并在后續(xù)中使用。為更好地處理和保留長序列的歷史信息,Hochreiter[10]等提出了長短期記憶網絡(Long Shortterm Memory Neural Network)。其原理如圖:

      在上圖中,Xt為LSTM網絡當前時刻的輸入,ht-1為LSTM上一時刻的輸出,ht為當前時刻的輸出,Ct-1為LSTM上一個

      時刻的細胞狀態(tài)(Cell State),Ct為LSTM當前的細胞狀態(tài)。關于細胞狀態(tài)的意義,請詳見后續(xù)的描述。

      在LSTM網絡中,數(shù)據分為兩個支流。每個支流均由Sigmoid函數(shù)(在圖中由σ表示)來決定其對后續(xù)的影響,而tanh函數(shù)為核心處理函數(shù)。先前的信息保存在細胞狀態(tài)(Cell State)中,在結構圖中為上路部分,如圖:

      該部分首先由以下結構生成限制函數(shù)以決定保留多少先前的歷史信息,即生成對原先細胞狀態(tài)的保留系數(shù)

      在該部分中當前輸入Xt和歷史輸出ht經過tanh函數(shù)變換后為細胞狀態(tài)的更新信息。使用一個Sigmoid函數(shù)對其進行系數(shù)變換,以決定更新信息在新的細胞狀態(tài)中的權重。最終這一部分輸出的系數(shù)加權后的更新信息。

      系數(shù)加權后的歷史信息和系數(shù)加權后的更新信息直接疊加,得到新的細胞狀態(tài),如以下:

      該輸出同時作為一部分的下一時刻的輸入使用。從以上結構可以看出,LSTM網絡可以保留歷史信息,并根據歷史信息處理和當前輸入同時決定當前輸出。該模型用于整合序列的詞向量是非常合適的。使用LSTM網絡,前后文的信息將得到最大保留,從而輸出一個信息較全面的文本特征。

      33基于LSTM的自動編碼機的實現(xiàn)

      為將文本轉換為定長的稠密向量,并盡量保留原文本序列中的信息,我們采用了基于LSTM的自動編碼機,其大致結構如下:

      在這里,為了便于說明,我們將不同時刻的LSTM網絡展開。句子經分詞后,表示各個詞的詞向量按順序輸入到作為編碼器的LSTM網絡中,解碼器直接獲取編碼器的輸出進行解碼,并以原來的詞向量作為優(yōu)化目標,使信息經過編碼器和解碼器后得到最大保留,以保證原句子被轉換為統(tǒng)一的短文本向量后其信息得到了最大的保留。同時,使用LSTM網絡順序處理詞向量信息最大程度地保留了原先的句子結構信息。

      詞向量由Word2Vec[5]工具對文本進行自監(jiān)督訓練后輸出生成,到目前為止所有的工作都可以使用不需人工標注的數(shù)據。

      4聚類方法與整體說明

      使用LSTM自動編碼機生成文本特征向量后,使用Kmeans聚類算法對文本進行聚類。方法整體結構如下:

      先通過Word2Vec神經網絡進行詞嵌入(Word Embedding),使用輸出的詞向量作為序列輸入到LSTM網絡中進行以自動編碼機(AutoEncoder)的方式進行自監(jiān)督訓練,得到的文本向量最終輸入到Kmeans聚類中進行文本聚類。

      本文中,Word2Vec的詞向量生成使用的工具是Gensim,語料庫(Corpus)使用了中文維基于2017/05/20的導出文件和內部的投訴處理數(shù)據集合并而成的語料。LSTM自動編碼機的網絡訓練使用的是Keras神經網絡工具箱。Kmeans聚類方法來自于python的機器學習庫Sklearn。endprint

      在實驗中,我們用于聚類的數(shù)據集為內部的投訴處理數(shù)據集。該數(shù)據集根據業(yè)務標簽分為了10類,為結果。本次實驗的評估方式主要有以下幾個方面:

      1)通過特征向量降維后的可視化結果,可以比較直觀地看到生成后的特征向量的分布情況。在這里我們使用Tsne來進行特征向量的降維。

      2)平均聚類中心距離:

      i=1n∑xjCi‖xj-i‖(5)

      其中xj為屬于Ci類的樣本向量,ci為該類的中心向量,n為該類的大小。該指標為傳統(tǒng)的聚類效果指標,用于衡量類中樣本的集中度。該項指標越低,則表明聚類結果中句子結構越接近。

      3)原標簽類與聚類后標簽類的基尼非純度(Gini Impurity)

      I(Ci)=1-max1≤k≤K∑Jj=1[yj=k?]J(6)

      其中yj為某個樣本標簽,k為原數(shù)據集中的類別標簽,J為Ci類中的樣本總數(shù)。該指標從流行的決策樹(Decision Tree)模型類的分類與回歸樹(Classifcation and Regression Tree,CART)算法[9]中衍生出來,主要衡量類中非主要的原標簽的比例。該項指標反映了聚類結果與人工標注的相似度。

      5實驗結果與分析

      51詞向量提取

      本次實驗中詞向量提取使用的語料來源為兩部分。其一用于后續(xù)聚類的投訴數(shù)據集,該部分數(shù)據中共有有效句子460762個,詞13396546個。由于該部分數(shù)據量較小,另外使用了中文維基于2017/05/20的導出文件作為輔助語料庫,與該部分一起用于進行詞向量的提取。中文維基導出的語料庫中共有有效句子3311845個,詞140948202個。最終獲取詞向量字典大小為100003,罕見詞(出現(xiàn)次數(shù)<5)未收錄。

      生成的詞向量字典中部分隨機抽取的詞匯及與其最相似的詞的匹配示例如下:

      以上結果顯示了詞向量的意義相似性,即生成的詞向量和其含義相近的詞的詞向量具有較高的相似匹配度。

      52LSTM自動編碼機網絡訓練

      LSTM自動編碼機使用Keras神經網絡工具包實現(xiàn)。Keras環(huán)境使用的是使用Theano后端(Backend)。

      在訓練過程中,自動編碼機將編碼器(Encoder)與解碼器(Decoder)結合起來進行訓練。訓練完成后,將編碼器(Encoder)用于對文本進行編碼,并使用這些編碼向量進行聚類。

      53文本向量降維后的可視化

      首先將TFIDF特征向量與LSTM自動編碼機文本向量進行降維可視化,從這一角度來直觀地了解生成的特征對聚類的影響。

      以下是TFIDF的原標簽分布與其聚類結果的標簽分布。

      其中圖10中文本按照其原先標識的標簽進行顏色的標識,圖11中文本按照聚類后的標簽進行顏色的標識。

      圖12為使用LSTM自動編碼機,編碼器輸出的壓縮文本向量的原標簽分布情況。圖13為使用這些文本向量進行聚類后的結果??梢钥吹皆谠搱D中文本已經形成了一定程度的集落,且與數(shù)據集提供的標簽有一定程度的對應關系。在聚類后的集群中有部分體現(xiàn)了這樣的關系。

      54使用基尼(Gini)非純度和聚類中心距離作為指標衡量

      參考4,我們用于比較模型的主要標準為基尼(Gini)非純度和聚類中心平均距離。以下為實驗結果。

      55總結

      本文介紹了一種使用詞向量作為基本特征,并使用LSTM網絡將文本的詞向量特征統(tǒng)一提取為統(tǒng)一的文本的特征的方法。基于這種文本特征,使用Kmeans等聚類方法對文本進行聚類。

      本文使用的特征與基于TFIDF特征的方法相比,更加著重于匹配整個文檔的結構,得到的聚類中的句子間的結構差異較小,這點從較小的聚類中心平均距離可以證明。

      由于本次提供的原始數(shù)據集較小,在訓練詞向量的時候使用了額外的維基語料庫作為輔助的詞向量數(shù)據集,但依然未能很好地解決某些業(yè)務關鍵詞出現(xiàn)次數(shù)較少而無法準確匹配其語義的現(xiàn)象,后續(xù)可以從以下方面進行完善:

      1)依然使用詞向量作為基礎特征,以解決語義鴻溝現(xiàn)象,但需要更大的和業(yè)務相關的文本數(shù)據集;

      2)增加能夠捕捉業(yè)務關鍵詞信息的方法,以應對實際場景中以業(yè)務關鍵詞作為聚類重要依據的場景。

      參考文獻

      [1]RAJARAMAN A,UllMAN J D.Mining of Massive Datasets [M].1 Edition,Cambridge:Cambridge University,2011:1-17 doi:10.1017/CBO9781139058452.002.

      [2]MUELLER J,THYAGARAJAN A.Siamese Recurrent Architectures for Learning Sentence Similarity[C]//AAAI.2016:2786-2792.

      [3]CHEN Q,ZHU X,LING Z H,et al.Enhanced LSTM for natural language inference[C]//Proc.ACL.2017.

      [4]PENNINGTON J,SOCHER R,MANNING C D.Glove:Global vectors for word representation[C]//EMNLP.2014,14:1532-1543.

      [5]MIKOLOV T,CHEN K,CORRADO G,et al.Efficient estimation of word representations in vector space[J].arXiv preprint arXiv:1301.3781,2013.

      [6]LIOU C Y,HUANG J C,YANG W C.Modeling word perception using the Elman network[J].Neurocomputing,2008,71(16):3150-3157.

      [7]LIOU C Y,CHENG W C,LIOU J W,et al.Autoencoder for words[J].Neurocomputing,2014,139:84-96.

      [8]KINGMA D P,WELLING M.Autoencoding variational bayes[J].arXiv preprint arXiv:1312.6114,2013.

      [9]GOLLER C,KUCHLER A.Learning taskdependent distributed representations by backpropagation through structure[C].IEEE International Conference on Neural Networks,Washington,DC,USA.1996,1:347-352.

      [10]HOCHREITER S,SCHMIDHUBER J.Long shortterm memory[J].Neural computation,1997,9(8):1735-1780.

      [11]BREIMAN L,F(xiàn)RIEDMAN J,STONE C J,et al.Classification and regression trees [M].CRC press,1984.endprint

      猜你喜歡
      自然語言處理聚類
      K-means算法概述
      基于模糊聚類和支持向量回歸的成績預測
      基于流形學習的自適應反饋聚類中心確定方法
      基于密度的自適應搜索增量聚類法
      數(shù)據挖掘的主要技術
      基于組合分類算法的源代碼注釋質量評估方法
      面向機器人導航的漢語路徑自然語言組塊分析方法研究
      詞向量的語義學規(guī)范化
      漢哈機器翻譯中的文字轉換技術研究
      HowNet在自然語言處理領域的研究現(xiàn)狀與分析
      晋宁县| 高唐县| 文山县| 扎兰屯市| 简阳市| 城市| 和林格尔县| 达日县| 封开县| 拉萨市| 格尔木市| 通州区| 鹿泉市| 通榆县| 龙陵县| 丹寨县| 宁陕县| 平凉市| 永平县| 剑阁县| 东安县| 滕州市| 抚顺县| 宝坻区| 贡山| 绥江县| 盱眙县| 东丽区| 合水县| 凭祥市| 龙岩市| 涞水县| 德庆县| 黄大仙区| 浦北县| 淳安县| 萨嘎县| 连南| 邹城市| 太白县| 盐城市|