• 
    

    
    

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

      ?

      基于關(guān)鍵n-grams 和門控循環(huán)神經(jīng)網(wǎng)絡(luò)的文本分類模型

      2021-03-01 09:28:56劉宗田
      關(guān)鍵詞:池化層向量單詞

      趙 倩,吳 悅,劉宗田

      (上海大學(xué)計(jì)算機(jī)工程與科學(xué)學(xué)院,上海 200444)

      傳統(tǒng)的文本分類方法將文本表示為詞袋模型(bag of words)或基于n-grams的詞袋模型(bag of n-grams)[1-2].詞袋模型只能捕獲文本的局部語義特征,無法獲取句子的組合語義信息,而基于n-grams的詞袋模型雖然可以捕獲詞語順序關(guān)系,表達(dá)復(fù)雜的語義信息,但參數(shù)的指數(shù)增長使得模型面臨計(jì)算復(fù)雜度過高、特征爆炸等問題.

      近年來,研究者采用以詞向量為輸入的神經(jīng)網(wǎng)絡(luò)作為文本處理模型[3-4].循環(huán)神經(jīng)網(wǎng)絡(luò)(recurrent neural networks,RNN)是一種對(duì)序列輸入有強(qiáng)大表征能力的模型,但由于梯度消失和梯度爆炸問題[5],無法處理長序列.RNN 的變體門控循環(huán)單元(gated recurrent unit,GRU)則可以通過引入門控單元和隱藏狀態(tài)來避免這些問題[6].另外一種常用的文本分類模型是卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural networks,CNN).CNN 首先應(yīng)用于圖像處理,利用一組濾波器提取圖像局部特征.當(dāng)用于文本時(shí),濾波器則用于獲取n-grams 的特征.目前,已有研究將CNN 與RNN 的混合模型應(yīng)用于文本分類.Abreu 等[7]就提出一種基于CNN 和GRU 的文檔分類模型,通過注意力機(jī)制有效利用文本的單詞和句子的上下文語義信息來提高分類性能.Hsu 等[8]則提出一種結(jié)構(gòu)化無關(guān)的門控表示對(duì)齊(gated representation alignment,GRA)模型,該模型利用對(duì)齊機(jī)制將CNN 所捕獲的短語(n-grams)信息添加到一組GRU 模型中,取得了較好的句子分類效果;通過在GRU 模型中添加不同的方法(注意力機(jī)制和對(duì)齊機(jī)制)來關(guān)注重要的n-grams 信息,而本工作提出的模型則著重于優(yōu)化卷積神經(jīng)網(wǎng)絡(luò)模型,降低模型復(fù)雜度.

      本工作提出了使用更簡單高效的池化層替換卷積層來提取有助于分類的n-grams 特征,并結(jié)合雙向GRU 模型來提高文本分類性能.首先,使用平均池化層獲取n-grams 的分布式表示,然后利用全局最大池化層提取有利于分類的關(guān)鍵n-grams,最后將基于循環(huán)神經(jīng)網(wǎng)絡(luò)的模型與基于n-grams 的文本表示進(jìn)行有效結(jié)合,從而既彌補(bǔ)了n-grams 模型的全局信息建模能力不足,又使循環(huán)神經(jīng)網(wǎng)絡(luò)能夠得到局部信息的有益補(bǔ)充,建立了適用于變長文本和不同分類問題的模型,提高了最終模型的語義表達(dá)能力和文本分類能力.

      1 門控循環(huán)單元

      GRU 是RNN 的一個(gè)簡單高效的變體.在GRU 中,隱藏狀態(tài)保存模型的歷史信息.在每個(gè)時(shí)間步中,GRU 是根據(jù)當(dāng)前輸入xt和上一個(gè)節(jié)點(diǎn)傳遞下來的隱藏狀態(tài)ht?1,更新當(dāng)前隱藏節(jié)點(diǎn)的輸出yt和傳遞給下一個(gè)節(jié)點(diǎn)的隱藏狀態(tài)ht.設(shè)輸入文本為〈w1,w2,···,wn〉,其中wi是第i 個(gè)詞向量,n 表示文本長度.矩陣E ∈Rd×|V|存儲(chǔ)所有詞向量,其中d 為每個(gè)詞向量的維度,|V|為詞匯量大小.假設(shè)當(dāng)前輸入單詞為xt,則GRU 當(dāng)前隱藏狀態(tài)ht計(jì)算公式為

      式中:σ 為sigmoid 函數(shù);ht?1為最后一步的隱藏狀態(tài).處理完所有單詞后,最終的隱藏狀態(tài)hn可以看作是文本的表示.

      實(shí)驗(yàn)結(jié)果表明,當(dāng)使用單向GRU 網(wǎng)絡(luò)時(shí),最終狀態(tài)將更依賴于輸入文本中位置偏后的單詞.因而,本模型采用雙向GRU(見圖1).在此設(shè)置中,一個(gè)GRU 網(wǎng)絡(luò)以〈w1,w2,···,wn〉為輸入,另一個(gè)GRU 網(wǎng)絡(luò)以〈wn,wn?1,···,w1〉為輸入,然后將這兩個(gè)網(wǎng)絡(luò)的最后一步輸出連接起來.設(shè)h1和h2為兩個(gè)網(wǎng)絡(luò)的最終狀態(tài),則文本表示形式為

      圖1 雙向GRUFig.1 Bidirectional GRU

      式中:⊕為串聯(lián)操作.

      2 關(guān)鍵n-grams

      對(duì)于文本分類任務(wù),CNN 通常使用卷積層來提取n-grams 特征,而本工作直接在詞向量上使用池化層,這使得模型可以簡單高效地獲取大多數(shù)關(guān)鍵單詞和n-grams.

      由于單詞攜帶的語義信息較少,不足以提供分類所需的判別信息,因此通常用n-grams 來表示文本.本工作使用多個(gè)池化層提取n-grams 特征,具體思路如下:首先以詞向量的方式進(jìn)行文本表示,通過查表操作查詢給定詞語的詞向量;然后利用平均池化層計(jì)算文本中每個(gè)n-grams 的特征表示;最后使用全局最大池化層來提取重要的n-grams.

      設(shè)輸入文本的n-grams 表示為〈v1,v2,···,vm〉,利用全局最大池化得到每個(gè)維度的最大值,最終得到一個(gè)與詞向量具有相同維度的向量p.令p 為結(jié)果向量,

      假設(shè)采用p-grams,考慮詞序及模型復(fù)雜度,本工作采用兩種方法來獲得文本表示.第一種方法不考慮詞序,即只有一個(gè)詞向量矩陣E.設(shè)E 是保存所有單詞的詞向量矩陣.對(duì)于輸入文本〈w1,w2,···,wn〉,首先查找單詞在矩陣E 中第i 個(gè)p-grams 為〈wi,wi+1,···,wi+p?1〉,對(duì)應(yīng)詞向量為〈ei,ei+1,···,ei+p?1〉,最后對(duì)p 個(gè)詞向量的每個(gè)維度求平均值得到p-grams的特征值.第二種方法與第一種方法的區(qū)別在于,模型添加了p-grams 的詞序信息,即采用多個(gè)詞向量矩陣〈E1,E2,···,En〉.通過從Ek+1查找wi+k的詞向量,第i 個(gè)p-grams〈wi,wi+1,···,wi+p?1〉 的詞向量為〈ei,ei+1,···,ei+p?1〉.同樣地,采用平均池化層得到pgrams 的特征值.在獲得每個(gè)p-grams 的詞向量之后,全局最大池化層決定哪一組p-grams 最重要.兩種方法的體系結(jié)構(gòu)如圖2 所示.

      圖2 獲取關(guān)鍵單詞或n-gramsFig.2 Get important words or n-grams

      由圖2 可見,對(duì)于輸入〈w1,w2,···,wn〉獲取重要單詞和n-grams 的方法如下:(1) wi表示第i 個(gè)單詞(以3-grams 為例),每個(gè)詞向量矩陣均存有所有詞的詞向量;(2) 詞序無序,從詞向量矩陣隨機(jī)提取3 個(gè)詞向量w1,w2,w3,取平均值得到〈w1,w2,w3〉的特征值;(3)詞序有序,3 個(gè)維度相同的詞向量矩陣,從第一個(gè)矩陣取w1的詞向量,第二個(gè)矩陣取w2的詞向量,第三個(gè)矩陣取w3的詞向量,取平均值得到〈w1,w2,w3〉的特征值,依此類推.

      3 分類模型

      在第1,2 節(jié)中,本工作用不同方法獲得了文本表示,其中dgru表示雙向GRU 推導(dǎo)的文本表示,dpooling表示池化操作推導(dǎo)的文本表示,將這兩個(gè)向量使用連接操作得到一個(gè)新的文本表示,即

      最后一層是softmax 層,以d 為輸入,計(jì)算每個(gè)類別的概率,

      式中:Ws為m×k 矩陣,其中m 為dgru和dpooling的維數(shù)之和,k 為類數(shù);b 為偏置項(xiàng);softmax函數(shù)為

      如圖3 所示,對(duì)于輸入文本〈w1,w2,···,wn〉,分別用雙向GRU 網(wǎng)絡(luò)和池化網(wǎng)絡(luò)進(jìn)行處理,可以從這兩個(gè)網(wǎng)絡(luò)中得到兩個(gè)輸出向量,并將這兩個(gè)向量串聯(lián)起來,形成所需的文檔表示形式.然后,利用帶有softmax 激活函數(shù)的全連接層進(jìn)行整合,得到每個(gè)類別的分布.

      圖3 文本分類的最終模型Fig.3 Final model for text classification

      4 實(shí) 驗(yàn)

      4.1 數(shù)據(jù)集

      Rotton Tomatoes:該數(shù)據(jù)集共包含10 662 條影評(píng)[9].

      互聯(lián)網(wǎng)電影數(shù)據(jù)庫(internet movie database,IMDB):該數(shù)據(jù)集包含50 000 條已標(biāo)記的和50 000 條未標(biāo)記的評(píng)論,每條評(píng)論被標(biāo)為正面或負(fù)面,并將所有評(píng)論分為數(shù)量相等、類別均衡的訓(xùn)練集和測試集[10].

      電子產(chǎn)品評(píng)論數(shù)據(jù)集(electronics,ELEC):該數(shù)據(jù)集包含來自Amazon 的關(guān)于電子產(chǎn)品的評(píng)論,訓(xùn)練集和測試集的數(shù)量與IMDB 相同[11-12].

      20newsgroup:該數(shù)據(jù)集是新聞話題分類數(shù)據(jù)集,包含20 個(gè)新聞?lì)?共18 846 條新聞,其中訓(xùn)練集有11 314 條新聞,測試集有7 532 條新聞[13].

      表1 列出了這些數(shù)據(jù)集的詳細(xì)統(tǒng)計(jì)信息.

      表1 數(shù)據(jù)集Table 1 Datasets

      4.2 基線模型

      考慮如下兩種模型:非神經(jīng)網(wǎng)絡(luò)模型和神經(jīng)網(wǎng)絡(luò)模型.對(duì)于非神經(jīng)網(wǎng)絡(luò)模型,使用支持向量機(jī)(support vector machine,SVM)作為分類器,以bag of words 或bag of n-grams 作為輸入.輸入向量可以是詞頻向量、tf-idf 向量或?qū)?shù)詞頻向量.近年來,基于樸素貝葉斯(naive Bayes,NB)權(quán)重的bag of words 或bag of n-grams 特征被證明對(duì)分類器有一定的幫助,且與復(fù)雜的神經(jīng)模型相比,具有較優(yōu)的性能.因此,本工作使用SVMlight(http://svmlight.joachims.org/)來訓(xùn)練SVM 分類器.

      對(duì)于神經(jīng)網(wǎng)絡(luò)模型,用CNN 和長短時(shí)記憶(long short term memory,LSTM)網(wǎng)絡(luò)訓(xùn)練所有數(shù)據(jù)集.CNN 架構(gòu)采用標(biāo)準(zhǔn)卷積提取n-grams 特征,然后使用全局最大池化來獲得文檔表示.LSTM 已成功用于各種模型,并且性能通常優(yōu)于基本的RNN.本工作用Glove 詞向量初始化這些模型的詞向量.

      4.3 預(yù)處理和訓(xùn)練

      對(duì)于所有數(shù)據(jù)集,本工作首先將所有字符轉(zhuǎn)換為小寫,然后將文本切分為單詞.本模型只考慮所有數(shù)據(jù)集中最常見的30 000 單詞,而Rotton Tomatoes 是15 000,不在詞匯表中的單詞被替換為一個(gè)特殊的〈unk〉標(biāo)記.對(duì)于Rotton Tomatoes 數(shù)據(jù)集,將每個(gè)句子的長度設(shè)置為50 個(gè)單詞,對(duì)于其他3 個(gè)數(shù)據(jù)集,將長度設(shè)置為500 個(gè)單詞.那些較長或較短的文本會(huì)被截?cái)嗷蛱畛湟苑隙x的長度.

      對(duì)于GRU 網(wǎng)絡(luò),使用預(yù)先訓(xùn)練好的300 維Glove 單詞向量初始化詞向量(https://nlp.stanford.edu/projects/glove/),并在訓(xùn)練過程中保持初始值不變.對(duì)于池化層,使用隨機(jī)初始化的詞向量,其維數(shù)是根據(jù)驗(yàn)證集來選擇的.選取重要的單詞和n-grams 是模型的重要組成部分,n-grams 的大小根據(jù)驗(yàn)證集上的模型性能進(jìn)行優(yōu)化.本工作使用Adam 算法對(duì)模型進(jìn)行訓(xùn)練,學(xué)習(xí)率為0.001[14],同時(shí)采用dropout 在輸入端實(shí)現(xiàn)模型正則化.本模型將dropout 設(shè)為p,p 是通過驗(yàn)證集選取的,這意味著每個(gè)單詞都有機(jī)會(huì)以1 ?p 的概率留在輸入中.這一技巧可以使模型得到更多不同的輸入序列,以緩解過擬合.

      由于Rotton Tomatoes 數(shù)據(jù)集沒有標(biāo)準(zhǔn)的驗(yàn)證集和測試集的分割,因此本實(shí)驗(yàn)通過交叉驗(yàn)證來選擇超參數(shù).另外3 個(gè)數(shù)據(jù)集具有訓(xùn)練/測試分割,則在交叉驗(yàn)證的訓(xùn)練集上選擇超參數(shù),然后在測試集上應(yīng)用這些設(shè)置.

      5 結(jié)果分析

      5.1 模型性能

      表2 展示了各模型在提取特征的有效性和準(zhǔn)確性方面的性能,表中NBSVM 代表樸素貝葉斯(NB)和支持向量機(jī)(support vector machines,SVM)的結(jié)合體.通過對(duì)比發(fā)現(xiàn),在雙向GRU 網(wǎng)絡(luò)中加入n-grams 信息,性能總是會(huì)得到提高,這也印證了基于RNN 的模型可以利用局部信息提高性能.另一個(gè)觀察結(jié)果是,在n-grams 中考慮詞序是有用的,這說明本工作提出的模型可以有效地利用詞序信息進(jìn)行分類.對(duì)于有序和無序的n-grams 設(shè)置,實(shí)驗(yàn)表明使用3-grams 對(duì)所有這些數(shù)據(jù)集都能達(dá)到最佳的性能.此外,與Abreu 等[7]提出的基于分層注意力機(jī)制的混合神經(jīng)網(wǎng)絡(luò)(hierarchical attentional hybrid neural networks,HAHNN)模型相比,本模型的分類準(zhǔn)確率更高.相比于HAHNN 在GRU 網(wǎng)絡(luò)中分別從字符級(jí)和句子級(jí)使用注意力機(jī)制篩選n-grams 信息,本模型直接利用池化層選擇關(guān)鍵n-grams 信息,明顯降低了模型復(fù)雜度.最后,本模型得到了比其他所有基線模型更高的準(zhǔn)確性.

      表2 各模型在不同數(shù)據(jù)集下的準(zhǔn)確率Table 2 Accuracy of each model in different datasets %

      5.2 模型分析

      在實(shí)驗(yàn)中使用預(yù)訓(xùn)練的詞向量通??梢蕴岣呱窠?jīng)網(wǎng)絡(luò)模型的性能.對(duì)于本模型,當(dāng)使用預(yù)先訓(xùn)練的Glove 向量初始化GRU 網(wǎng)絡(luò),同時(shí)隨機(jī)初始化池化部分的詞向量時(shí),模型的性能確實(shí)得到了提高.但是通過實(shí)驗(yàn)發(fā)現(xiàn),當(dāng)GRU 的詞向量是“static”時(shí),模型性能最好.為了進(jìn)行對(duì)比,使用不同的GRU 詞向量初始化和訓(xùn)練方法對(duì)IMDB 數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),結(jié)果如表3 所示,其中“random”表示隨機(jī)初始化詞向量,“static ”是指用Glove 向量初始化詞向量,并在訓(xùn)練過程中保持不變,“fine tune”是指用Glove 向量初始化詞向量,并在訓(xùn)練過程中使詞向量按照梯度方向進(jìn)行微調(diào).通過對(duì)比發(fā)現(xiàn),隨機(jī)初始化詞向量時(shí),本模型對(duì)文本長度和訓(xùn)練算法較敏感,性能也較差,這表明無監(jiān)督詞向量的有效性.

      表3 在IMDB 數(shù)據(jù)集上以不同方法初始化GRU 網(wǎng)絡(luò)詞向量對(duì)模型的影響Table 3 Affection to model with different ways to initialize word embedding of GRU network on IMDB dataset %

      池化層通過選擇特征顯著的n-grams 進(jìn)行分類,因此可以認(rèn)為所選n-grams 具有最大的類別顯著性.對(duì)于情感分類任務(wù),池化層所提取的n-grams 應(yīng)該具有較為強(qiáng)烈的情感傾向.為了驗(yàn)證這一點(diǎn),將IMDB 訓(xùn)練集中的n-grams 全部放入訓(xùn)練好的模型中,計(jì)算每個(gè)n-grams 的情感得分.得分越接近1,則該n-grams 越傾向于負(fù)向情感,得分越接近–1,則該n-grams 越傾向于正向情感.這樣就可以得到模型認(rèn)為對(duì)分類有幫助的最重要的n-grams.表4 給出了正向和負(fù)向情感傾向最高的3-grams.可以看到,本工作所提出的模型可以正確地選擇情感傾向明顯的n-grams.因此,池化層可以幫助GRU 網(wǎng)絡(luò)捕獲局部語義信息,并提高最終的性能.

      表4 影響IMDB 數(shù)據(jù)集最重要的3-gramsTable 4 Most important 3-grams affect IMDB dataset

      6 結(jié)束語

      本工作提出了一種新的基于循環(huán)神經(jīng)網(wǎng)絡(luò)和n-grams 信息的文本分類模型,使用簡單高效的池化操作直接通過詞向量或n-grams 向量獲取重要的n-grams,并使用雙向GRU 捕獲上下文序列的全局依賴特征,通過全局特征與局部關(guān)鍵n-grams 特征的結(jié)合提高文本分類的性能.本工作在4 個(gè)公開數(shù)據(jù)集上對(duì)本模型進(jìn)行評(píng)估,由表2 可以看出,本模型在分類準(zhǔn)確性上獲得了比單一神經(jīng)網(wǎng)絡(luò)和復(fù)雜神經(jīng)模型更好的性能,且與基線模型LSTM 相比,準(zhǔn)確率提高約5.7%.下一步的工作將考慮如何在字符級(jí)模型上對(duì)無標(biāo)簽的數(shù)據(jù)進(jìn)行無監(jiān)督特征提取.

      猜你喜歡
      池化層向量單詞
      向量的分解
      卷積神經(jīng)網(wǎng)絡(luò)模型研究分析*
      聚焦“向量與三角”創(chuàng)新題
      基于卷積神經(jīng)網(wǎng)絡(luò)的紙幣分類與點(diǎn)鈔
      基于深度學(xué)習(xí)卷積神經(jīng)網(wǎng)絡(luò)的人體行為識(shí)別研究
      科技傳播(2020年6期)2020-05-25 11:07:46
      單詞連一連
      基于全卷積神經(jīng)網(wǎng)絡(luò)的SAR圖像目標(biāo)分類*
      看圖填單詞
      看完這些單詞的翻譯,整個(gè)人都不好了
      向量垂直在解析幾何中的應(yīng)用
      礼泉县| 浦县| 安阳市| 呈贡县| 那曲县| 德格县| 北流市| 山东省| 于都县| 康平县| 云和县| 宁河县| 贵定县| 宣威市| 甘孜县| 永定县| 保定市| 苍溪县| 兰西县| 麻阳| 报价| 扶沟县| 大埔区| 新密市| 饶阳县| 扶绥县| 通化市| 驻马店市| 英超| 云南省| 密山市| 嘉禾县| 尼木县| 丰城市| 石棉县| 天峻县| 阿勒泰市| 象山县| 上杭县| 中江县| 仁寿县|