關於卷積神經網路處理情感分類的一些論文
卷積神經網路進行情感分類
1. Yoon Kim的《Convolutional Neural Networks for Sentence Classification》
Yoon Kim的卷積神經網路結構
表示為n*k輸入的文本向量->卷積層做向量映射->最大池化操作->softmax輸出且利用全連接層進行dropout。
文本數據表示如下:
通過卷積層提取特徵,並得到
通過L2正則化防止過擬合(在梯度下降後)
數據集:
模型參數:
修正線性單元(Rectified
linear units)濾波器的h大小:3,4,5;對應的Feature
Map的數量為100;Dropout率為0.5,L2正則化限制權值大小不超過3;
mini-batch的大小為50;
不同的模型:
1) CNN-rand: 所有的word vector都是隨機初始化的,同時當做訓練過程中優化的參數;
2) CNN-static: 所有的word vector直接使用無監督學習即Google的Word2Vector工具(COW模型)得到的結果,並且是固定不變的;
3) CNN-non-static: 所有的word vector直接使用無監督學習即Google的Word2Vector工具(COW模型)得到的結果,但是會在訓練過程中被Fine tuned;
4) CNN-multichannel: CNN-static和CNN-non-static的混合版本,即兩種類型的輸入;
模型結果:
2. dos Santos C N,Gatti M的《Deep convolutional neural networks for sentiment analysis of short
texts》http://www.anthology.aclweb.org/C/C14/C14-1008.pdf
表示層,分為詞表示層和位元組表示層, 詞表示層:
Embedding matrix寫作:
每行:
得到一個矩陣向量乘積:
位元組表示層:
一個位元組c和embedding的rchr,可以寫成乘積:
最後通過如下的卷積結構得到輸出:
如果已知訓練參數theta,網路的訓練是基於softmax函數
計算log條件概率:
用SGD演算法進行似然估計:
模型訓練數據集:
模型參數:
在SSTB上模型的表現:
在STS上模型的表現:
3. Yelong Shen , Xiaodong He , Jianfeng Gao等《Learning
semantic representations using convolutional neural networks for Web search》該論文提出了一種基於卷積神經網路深度結構語義模型。
模型結構如下:
建立一個tri-gram的詞向量表示模型,用卷積層提取語義特徵,全局特徵向量在最大池化層生成,最後的大小為128 的語義層表徵輸入的單詞序列。
單詞散列層將輸入單詞序列中的每個單詞轉換成一個特徵向量,使用單詞散列技例如:這個單詞用它的字母的計數向量表示來解決問題。
卷積運算可視為基於滑動窗口的特徵提取,它的目的是捕捉一個詞的上下文特徵。考慮到在詞序列的第一個字的位置,字哈希所有上下文特徵向量在一個窗口都是首先連接起來以形成一個上下文窗口向量,然後投射到一個局部?的語境特徵矢量。
在卷積層提取的上下文特徵向量是局部特徵,每個單詞的一個特徵向量。它們需要結合起來才能得到一個固定大小的全局特徵向量。對於IR任務,我們需要抑制非顯著的局部特徵,只保留對全局特徵向量有用的顯著特徵。因此,我們使用MAX操作,稱為最大池化層,它迫使網路只保留由卷積層產生的最有用的本地特性。在全局特徵向量的基礎上,採用語義層提取高層語義表示,無論是卷積層和語義層使用?函數為非線性激活函數。
這樣,一個用卷積層提取局部特徵,用最大池化層搞定全局語境特徵的網路被訓練出來了。
4. Kalchbrenner N,Grefenstette E,Blunsom P 《A convolutional neural network for modelling sentences》
http://www.cs.wayne.edu/~mdong/Kalchbrenner_DCNN_ACL14.pdf
準確表達句子的能力是語言理解的核心,該論文描述了一種動態卷積網路結構。該網路採用動態K-MAX彙集,全球共享操作的線性序列。該網路處理不同長度的輸入句子,並在句子上歸納出一個特徵圖,該句子能夠明確捕捉短距離和長距離關係。這種不依賴於解析樹的模型很容易適用於任何語言。
表達單詞依賴關係的樹圖
動態卷積神經網路結構
寬卷積:
k-max池化:
Ktop是保留特徵的個數,L是卷積層層數
非線性特徵函數:
多個特徵用寬卷積提取:
摺疊(Folding)操作:
Folding操作則是考慮相鄰的兩行之間的某種聯繫,方式也很簡單,就是將兩行的vector相加;該操作沒有增加參數數量,但是提前(在最後的全連接層之前)考慮了特徵矩陣中行與行之間的某種關聯。
這個模型不需要先驗知識,如句法依存樹,寬卷積可以實現tri-gram效果,詞序信息和詞語之間的相對位置被保留下來。最後通過類別概率分布(softmax)函數,實現輸出。
實驗結果:
推薦閱讀:
TAG:卷積神經網路CNN | 深度學習DeepLearning | 自然語言處理 |