機器不學習:CNN和RNN在文本分類過程中的區別


機器不學習 jqbxx.com -機器學習、深度學習好網站

機器不學習:CNN和RNN在文本分類過程中的區別

在最左邊的輸出層有兩個channel,每個channel是一個二維的矩陣,矩陣的列的長度等於語句sentence的長度(也就是sentence中的單詞個數,通過padding使得待分類的每個sentence都有相同的長度),矩陣的行向量表示每個單詞的向量形式,文中作者使用了word2vec工具初始化了,也就是每個單詞都做了embedding。兩個channel在初始化的時候是一樣的,而之所以使用了兩個channel就是因為兩個channel的目的不一樣,其中一個為static,也就是在給定了embedding之后,其值就不會變了,另一個channel為 non-static,表示embedding向量是參數,也是需要在推導中求出來的。使用兩個channel的目的是考慮到:第一,如果只是使用static,由於使用word2vec的訓練語料和試驗中的實驗語料可能存在不一致,導致embedding存在偏差;第二,如果只是使用單方面的non-static向量,其初始化對其結果和收斂快慢都有影響。所以使用混合的channel能夠使上面的兩種問題得到“中和”。

在輸入層之后就是卷積層,以上圖為例,最上面的filter的shape是3*6,也就是對於這句話:“wait for the vedio and do n’t rent it”,這個filter每隔三個詞就做一次卷積操作,對於長度為8的句子,在這個filter的卷積操作之后,會產生一個7*1的輸出。當然卷積層的filter個數和filter的shape都是可以變的,原理是一樣的。

后面的一層是pooling層,這篇論文使用的是max-pooling,也就是上文的7*1 的卷積層輸出將會pooling成一個1*1的數值,有n個filter就會產生n個1*1的數值,這n個數值將會用於后面的全連接層。

之后是一個全連接輸出層,輸出層輸出的個數對應的是文本的類別數量,將上面的n個pooling層輸出全連接到輸出層,輸出層使用的是softmax激勵函數。

先談用CNN卷積的情況,這里面有幾個關鍵點:

一個是文本跟圖片不一樣,圖片有長寬,然后還有深度(RGB)。對應到文本上,假設文章總共N個詞,每個詞嵌入維度K維,那么輸入是N * K的,N可以理解為高度,K作為長度,深度為1。那么卷積的時候的特征抽取器(filter)高度h一般設置多大呢? 一般可以從3開始,表示捕獲住trigram特征。

更多的是使用幾種不同的filter(比如有高度各為2,3,5的)。 特征抽取器(filter)的長度一般設置為詞向量的維度,這樣保證每個filter抽取出來一個N-h+1個特征點,而不是一個平面(想想為什么)。

最重要的,在文本上work的pooling層一般是max-pooling,對每個filter應用整個序列上的max-pooling得到一個特征點(也有用k-max-pooling得到k個點),組合多個filter就能得到一系列特征,最后一個全連接層做分類。

這里為什么是max-pooling而不是min-pooling呢?一般來說,pooling后我們引入非線性是用Relu,relu對於小於0的直接就不激活了。

然后我們對比圖像的深度,文本一般深度只有一個,如何增加深度以及為什么增加呢? 一般我們的詞向量都是先預訓練出來的,然后在一個特定任務上使用,梯度會回傳回來進一步finetune,如果語料不是特別大,這個finetune過程只會對部分詞進行更新,有些詞就一直不動,這樣在測試階段,出現那些沒finetune到的詞就會有所偏差。我們可以同時使用兩份詞向量(相當於通道數為2,深度加深為2),一份finetune一份靜態地不更新,來緩解前面提到的問題。

二) 對於RNN做文本分類,相當於把每個詞作為一個時間節點,把詞向量作為每個單元的輸入特征,一般會組合前向以及后向來構成雙向特征,計算后每個單元有個狀態特征以及輸出特征,文本分類一般組合每一個單元的輸出特征求個平均喂給全連接層來做分類。 求平均這個操作可以替換為更通用的注意力機制,復雜度更高點,效果更好。 復雜點的模型會分層來做,句子界別的rnn然后attention,最后文檔級別在前一層的基礎上再rnn+attention,效果據說能更進一步提升。

另外,對於情感分析,我們也可以看做是個文本分類的任務,正面,負面還是中性。 情感分析上,Tree-LSTM模型一般效果更好點, 每一個節點捕獲左右子樹的特征。

參考:1)http://blog.csdn.net/u010223750/article/details/51437854

2)http://blog.csdn.net/meanme/article/details/48845793


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM