• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    深度學(xué)習(xí)在答案選擇句意表示上的應(yīng)用研究

    2018-04-24 07:54:31張世西丁祝祥
    現(xiàn)代計(jì)算機(jī) 2018年7期
    關(guān)鍵詞:卷積向量神經(jīng)網(wǎng)絡(luò)

    張世西,丁祝祥

    (四川大學(xué)計(jì)算機(jī)學(xué)院,成都610065)

    0 引言

    自動(dòng)問答系統(tǒng)是自然語言處理領(lǐng)域(NLP)一個(gè)重要的研究課題,該課題可被形式化地表示為計(jì)算機(jī)和人通過人類的語言進(jìn)行交互,并幫助用戶完成簡(jiǎn)單的任務(wù)。該課題早在上世紀(jì)60年代就被提出,并在80年代因圖靈實(shí)驗(yàn)[1]而風(fēng)靡一時(shí),但由于當(dāng)時(shí)實(shí)驗(yàn)條件的限制,自動(dòng)問答一直被限制在特殊領(lǐng)域的專家系統(tǒng),發(fā)展緩慢。隨著網(wǎng)絡(luò)和信息技術(shù)的快速發(fā)展,用戶期待系統(tǒng)可以更快更精準(zhǔn)地定位意圖,給出高質(zhì)量的回答,促使自動(dòng)問答系統(tǒng)再次成為NLP領(lǐng)域的一個(gè)研究熱點(diǎn)。

    近年來,隨著大數(shù)據(jù)時(shí)代的到來以及GPU等高速計(jì)算設(shè)備的發(fā)展,深度學(xué)習(xí)在圖像分類、語音識(shí)別等任務(wù)上取得了突出效果,其在自動(dòng)學(xué)習(xí)抽象知識(shí)表達(dá)上的優(yōu)異表現(xiàn)使得越來越多的研究人員將其應(yīng)用在NLP領(lǐng)域的各項(xiàng)任務(wù)中,包括自動(dòng)問答,機(jī)器翻譯,文章摘要等。本文的研究主要基于自動(dòng)問答系統(tǒng)中的答案選擇子任務(wù),重點(diǎn)集中在問答語句語義表示任務(wù)上,探究了主流的深度學(xué)習(xí)算法,包括卷積神經(jīng)網(wǎng)絡(luò)(CNN)、循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)等在答案選擇中的應(yīng)用,并通過實(shí)驗(yàn)證明結(jié)合了兩者的混合深度神經(jīng)網(wǎng)絡(luò)在問答系統(tǒng)語義表示上取得的效果要好于單一網(wǎng)絡(luò)。

    1 問題描述

    答案選擇是自動(dòng)問答系統(tǒng)中的一個(gè)關(guān)鍵步驟,該問題可描述為:給定問題q及其對(duì)應(yīng)的候選答案集表示該問題對(duì)應(yīng)的候選答案集的大小,任務(wù)目標(biāo)是從候選答案集中選出最佳答案ak,若ak屬于該問題的正確答案集合(一個(gè)問題的合理答案可以有多個(gè)),則認(rèn)為該問題被正確回答,否則判定該問題沒有被正確回答[2]。該問題的一種解決方案是獲取問題和答案的語義表示,通過衡量語義表示的匹配度來選擇最佳答案。本文采取上述方案,則所需考慮的兩個(gè)問題是:一是如何實(shí)現(xiàn)問句及答案的語義表示。二是如何實(shí)現(xiàn)問題答案間的語義匹配。故而目標(biāo)任務(wù)可分解為兩個(gè)步驟:第一,利用深度學(xué)習(xí)算法,如RNN,CNN等將問題序列q以及候選答案集序列轉(zhuǎn)化為向量,分別記為;第二,利用相似度衡量標(biāo)準(zhǔn)衡量中每個(gè)向量的相似度,相似度越高,則問題與答案越匹配,該答案排序越靠,反之,問題與答案匹配度越低,該答案排序越靠后。

    2 算法描述

    2.1 詞向量

    將深度學(xué)習(xí)應(yīng)用于NLP領(lǐng)域的第一步是需要將詞語轉(zhuǎn)換為向量,并且向量之間的距離可以表示詞語的語義相似度。傳統(tǒng)的one-hot詞向量不僅無法表示詞語的語義相似度,而且會(huì)造成維度災(zāi)難。近幾年,NLP領(lǐng)域多采用分布式稠密實(shí)數(shù)向量來表示詞語的語義特征,如Word2Vec[3],GloVe[4].本文采用的是GloVe算預(yù)訓(xùn)練好的模型(Common Crawl,840B tokens),每個(gè)單詞表示為一個(gè)300維的向量[5]。本文實(shí)驗(yàn)中直接將詞向量初始化后的問題答案向量進(jìn)行相似性度量,在實(shí)驗(yàn)數(shù)據(jù)集上有一定的效果,網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。

    圖1 基于GloVe詞向量嵌入的答案選擇網(wǎng)絡(luò)結(jié)構(gòu)

    2.2 循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)

    RNN已被證明在NLP領(lǐng)域的很多任務(wù)中表現(xiàn)突出,是當(dāng)下主流的深度學(xué)習(xí)模型之一[6]。在NLP領(lǐng)域,一個(gè)句子的單詞之間是相互關(guān)聯(lián)的,單詞因上下文不同而具有不同的含義。然而,傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)通常假設(shè)所有的輸入和輸出是相互獨(dú)立的,這對(duì)很多NLP領(lǐng)域任務(wù)來說是不合理的。RNN的提出正是為了利用句子的這種序列信息。RNN依賴之前的計(jì)算結(jié)果,并對(duì)序列的每個(gè)節(jié)點(diǎn)執(zhí)行相同的操作,每個(gè)節(jié)點(diǎn)的輸入除了當(dāng)前的序列節(jié)點(diǎn)還包括之前的計(jì)算結(jié)果,相當(dāng)于擁有一個(gè)“記憶單元”來記錄之前的信息[7]。RNN算法可簡(jiǎn)單表示為,給定輸入,其中xt表示t時(shí)刻的序列輸入,用ht-1表示t-1時(shí)刻的計(jì)算結(jié)果,則t時(shí)刻的計(jì)算公式為,其中U,W為參數(shù)矩陣,在訓(xùn)練過程中學(xué)習(xí);f為非線性激活函數(shù),一般可以用tanh或者ReLU。上述簡(jiǎn)單RNN在訓(xùn)練過程中容易導(dǎo)致梯度爆炸或者梯度消失,因此研究者們?cè)诤?jiǎn)單RNN的基礎(chǔ)上進(jìn)行改進(jìn),提出了很多變體,常用的包括長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)(LSTM)[8]和門限循環(huán)單元網(wǎng)絡(luò)(GRU)[9]。

    LSTM針對(duì)RNN的處理節(jié)點(diǎn)進(jìn)行了改進(jìn),引入了細(xì)胞狀態(tài)值Ct和“門機(jī)制”,包括輸入門ft,忘記門it以及輸出門ot,其單元內(nèi)部計(jì)算公式如下:

    GRU在LSTM基礎(chǔ)上做了一些簡(jiǎn)化,將忘記門和輸入門合成了一個(gè)單一的更新門。同樣還混合了細(xì)胞狀態(tài)和隱藏狀態(tài),和其他一些改動(dòng),其單元內(nèi)部計(jì)算公式如下:

    上述式子中σ表示sigmoid激活函數(shù),tanh表示tanh激活函數(shù),*表示矩陣逐點(diǎn)相乘,W,U均為訓(xùn)練過程中學(xué)習(xí)的參數(shù)矩陣。

    網(wǎng)絡(luò)結(jié)構(gòu)圖如圖2所示。

    圖2 基于RNNs(LSTM/GRU)的答案選擇網(wǎng)絡(luò)結(jié)構(gòu)

    2.3 卷積神經(jīng)網(wǎng)絡(luò)(CNN)

    CNN最早被用在計(jì)算機(jī)視覺領(lǐng)域,提取圖像特征。與傳統(tǒng)神經(jīng)網(wǎng)絡(luò)相比,卷積神經(jīng)網(wǎng)絡(luò)(CNN)包含了一個(gè)由卷積層和子采樣層構(gòu)成的特征抽取器。在CNN的卷積層中,一個(gè)神經(jīng)元只與部分鄰層神經(jīng)元連接,CNN的一個(gè)卷積層通常包含若干個(gè)特征平面,每個(gè)特征平面由一些矩形排列的神經(jīng)元組成,同一特征平面的神經(jīng)元共享權(quán)值,以減少網(wǎng)絡(luò)各層之間的連接,同時(shí)又降低過擬合的風(fēng)險(xiǎn)。近年來,隨著Word2Vec,GloVe等詞向量技術(shù)的發(fā)展,很多NLP領(lǐng)域任務(wù)的輸入也可以看作是詞語序列與詞向量構(gòu)成的“像素矩陣”,因而很多研究人員也開始將CNN應(yīng)用于NLP的任務(wù)中[10]。不同于圖像處理的卷積,CNN對(duì)NLP的卷積核大小有要求,一般來說,卷積核的長(zhǎng)度和詞向量的維度應(yīng)該是一致的。例如一個(gè)詞向量是N維的,卷積核就為X*N維的,X一般可取1,2,3,表示提取1個(gè)詞、2個(gè)詞、3個(gè)詞之間的特征。本文實(shí)驗(yàn)中,CNN卷積核數(shù)目為1000,CNN窗口大小分別取值為2,3,5,7,并將所得向量做一個(gè)拼接,最后經(jīng)過一層max-pooling得到句子的最終表示,網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示。

    圖3 基于CNN的答案選擇網(wǎng)絡(luò)結(jié)構(gòu)

    2.4 混合神經(jīng)網(wǎng)絡(luò)(Con vLSTM)

    RNN的模型設(shè)計(jì)可以很好地為序列建模,尤其是LSTM和GRU模型可以很好地保留遠(yuǎn)距離依賴的信息,但容易忽略局部的最近幾個(gè)詞之間的關(guān)系,同時(shí),若序列過長(zhǎng),LSTM和GRU訓(xùn)練的時(shí)間代價(jià)將難以忍受。而CNN中的卷積核大小遠(yuǎn)小于輸入大小,強(qiáng)調(diào)的是局部最近幾個(gè)詞之間的關(guān)系,同時(shí)其訓(xùn)練時(shí)間代價(jià)也小于LSTM。因而將兩種模型結(jié)合起來使用,對(duì)解決NLP領(lǐng)域任務(wù)更有幫助。本文實(shí)驗(yàn)的模型結(jié)構(gòu)如圖4。

    3 實(shí)驗(yàn)部分

    3.1 實(shí)驗(yàn)數(shù)據(jù)

    本實(shí)驗(yàn)基于開放數(shù)據(jù)集Ubuntu Dialog Corpus(UDC,Paper[11],GitHub[12]),該數(shù)據(jù)集是目前已公開的最大的對(duì)話數(shù)據(jù)集之一,它抽取互聯(lián)網(wǎng)中繼聊天Internet Relay Chat(IRC)中的 Ubuntu 聊天室記錄,文獻(xiàn)[11]中詳細(xì)介紹了該數(shù)據(jù)集的產(chǎn)生過程。該數(shù)據(jù)集被劃分為訓(xùn)練集,驗(yàn)證集以及測(cè)試集,訓(xùn)練集包含1000000個(gè)樣例,驗(yàn)證集包含195600個(gè)樣例,而測(cè)試集包含189200個(gè)樣例。訓(xùn)練集的每一個(gè)樣例包含一個(gè)問題,一個(gè)回答和一個(gè)標(biāo)簽,其中500000為正例(標(biāo)簽為1),500000為負(fù)例(標(biāo)簽為0)。正例表明該答案與問題匹配,負(fù)例表示不匹配,數(shù)據(jù)樣例如圖5。驗(yàn)證集和測(cè)試集的格式與訓(xùn)練集不同,驗(yàn)證集和測(cè)試集的每一個(gè)樣例包括一個(gè)問題,1個(gè)正確答案(ground truth utterance)和9個(gè)干擾項(xiàng),即錯(cuò)誤答案(錯(cuò)誤答案來自于驗(yàn)證和測(cè)試集中其他問題的答案),數(shù)據(jù)樣例如圖6。值得注意的是數(shù)據(jù)集的產(chǎn)生腳本中已經(jīng)對(duì)數(shù)據(jù)做了一些預(yù)處理,包括分詞、取詞根、英文單詞變形歸類等。此外,例如人名、地名、組織名、URL鏈接、系統(tǒng)路徑等專有名詞也做了替代。表1給出了訓(xùn)練集問題答案長(zhǎng)度統(tǒng)計(jì)信息。

    圖4 基于混合模型Conv-RNN的答案選擇網(wǎng)絡(luò)結(jié)構(gòu)

    圖5 UDC訓(xùn)練集示例

    圖6 UDC驗(yàn)證集/測(cè)試集示例

    表1 UDC訓(xùn)練數(shù)據(jù)集問題(context)和響應(yīng)(utterance)長(zhǎng)度統(tǒng)計(jì)

    3.2 數(shù)據(jù)預(yù)處理

    本文數(shù)據(jù)預(yù)處理主要包括兩個(gè)部分,一是文本序列化以及序列填充;二是重構(gòu)驗(yàn)證集和測(cè)試集,保證驗(yàn)證集和測(cè)試集數(shù)據(jù)格式與訓(xùn)練集相同,便于驗(yàn)證和測(cè)試。在第一步中,首先建立詞表(將詞語和某個(gè)整數(shù)一一對(duì)應(yīng)),并將句子轉(zhuǎn)換為整數(shù)序列;本文通過對(duì)訓(xùn)練集問題和回答的長(zhǎng)度統(tǒng)計(jì)分析,綜合考慮長(zhǎng)度統(tǒng)計(jì)信息以及模型訓(xùn)練時(shí)長(zhǎng),最終選擇最大序列長(zhǎng)度為160,若句子序列長(zhǎng)度大于160,則將超過的部分截?cái)?;若不?60,則在句子后面以0填充。在第二步中,本文擴(kuò)充了驗(yàn)證集和測(cè)試集中的問題數(shù)目,使得每個(gè)正確的回答和干擾項(xiàng)都對(duì)應(yīng)一個(gè)問題,并為正確回答打上標(biāo)簽1,干擾項(xiàng)打上標(biāo)簽0。

    3.3 實(shí)驗(yàn)設(shè)置

    本文實(shí)驗(yàn)中問題和回答的相似度計(jì)算公式為:

    式(10)中,Vq表示經(jīng)過深度神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)后的上下文向量,Va表示經(jīng)過深度神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)后的響應(yīng)向量,*表示逐點(diǎn)相乘,Vq*Va表示Vq和Va的相似度向量,經(jīng)sigmoid函數(shù)轉(zhuǎn)換成值為(0,1)的一個(gè)相似度概率,此概率越接近于1表明相似度越大,上下文于答案越匹配;越接近于0表明相似度越小,上下文與響應(yīng)越不匹配。

    本文實(shí)驗(yàn)中模型的目標(biāo)函數(shù)選擇的是對(duì)數(shù)損失函數(shù)(binary cross-entropy loss),計(jì)算公式如下:

    其中y'表示預(yù)測(cè)標(biāo)簽,y表示真實(shí)標(biāo)簽,訓(xùn)練目的為最小化該損失函數(shù)。

    模型其他參數(shù)設(shè)置如下:詞向量維度為300維;LSTM隱藏層大小設(shè)置為300;CNN卷積核數(shù)目為1000,混合模型中CNN卷積核數(shù)目取500,CNN窗口大小取值為2,3,5,7;batch_size為256,模型優(yōu)化器為Adam優(yōu)化器[13]。

    3.4 實(shí)驗(yàn)結(jié)果及分析

    本文采用的評(píng)價(jià)標(biāo)準(zhǔn)為recall@k in n,其中n表示候選答案集的大小,k表示正確答案在top_k中,如re?call@2 in 10表示給定的候選答案集大小為10,從其中選擇得分最高的前兩個(gè)答案,正確答案出現(xiàn)在前兩個(gè)答案中,則認(rèn)為回答正確,計(jì)算回答正確的樣例占數(shù)據(jù)集總樣例的比例。

    實(shí)驗(yàn)結(jié)果如表2所示,文獻(xiàn)[11]中給出的基準(zhǔn)實(shí)驗(yàn)結(jié)果如表3所示。通過實(shí)驗(yàn)表2和表3的對(duì)比發(fā)現(xiàn),LSTM和GRU在答案選擇任務(wù)上的表現(xiàn)突出,且效果不相上下,CNN在該任務(wù)上的表現(xiàn)不如前兩者,而將LSTM與RNN組合使用的混合模型Conv-LSTM在該任務(wù)該數(shù)據(jù)集上的表現(xiàn)要好于單獨(dú)使用LSTM或者CNN,由表2表3可以看出,Conv-LSTM比CNN在Re?call@1 in 10上提升了9.2%,比LSTM提升了2.3%,比文獻(xiàn)[11]中提供的LSTM基準(zhǔn)提升了3.2%。

    表2 實(shí)驗(yàn)結(jié)果

    4 結(jié)語

    本文針對(duì)深度學(xué)習(xí)在問答系統(tǒng)中的句意表示子任務(wù)上進(jìn)行了研究,通過實(shí)驗(yàn)對(duì)比發(fā)現(xiàn)LSTM和GRU等RNN模型相比于CNN在該任務(wù)上的表現(xiàn)更為突出,而將LSTM與CNN結(jié)合后的混合模型Conv-LSTM效果更好。目前針對(duì)問答系統(tǒng)依據(jù)答案來源分為兩種解決方案,一種是如本文所述的檢索式模型,即給定了答案集合,從中檢索出正確的答案;另一種是生成式模型,即不依賴于預(yù)先定義的回答集,模型自動(dòng)生成回答的句子,如深度學(xué)習(xí)中的sequence to sequence架構(gòu)[14]便可用于這種生成式任務(wù)。另外,在檢索式或生成式模型中引入注意力機(jī)制[15]也是最近的研究熱點(diǎn);本文所述研究集中在單輪對(duì)話任務(wù)上,而用戶所期待的對(duì)話系統(tǒng)往往需要處理多輪對(duì)話任務(wù),這可作為未來的一個(gè)研究方向。

    參考文獻(xiàn):

    [1]https://en.wikipedia.org/wiki/Turing_test.

    [2]MinweiFeng,Bing Xiang,MichaelR.Glass,LidanWang,Bowen Zhou.Applying Deep Learning To Answer Selection:AStudy And An Open Task.arXiv:1508.01585v2[cs.CL]2Oct2015.

    [3]Mikolov,Tomas,Chen,Kai,Corrado,Greg,Dean,Jeffrey.Efficient Estimation of Word Representations in Vector Space.arXiv:1301.3781v3.

    [4]Jeffrey Pennington,Richard Socher,Christopher D.Manning.GloVe:Global Vectors forWord Representation.In EMNLP,2014

    [5]https://nlp.stanford.edu/projects/glove/.

    [6]https://karpathy.github.io/2015/05/21/rnn-effectiveness/

    [7]L.R.Medskerand L.C.Jain.Recurrent neural networks.Design and Applications,2001.

    [8]Alex Graves.Supervised Sequence Labelling with Recurrent Neural Networks.Textbook,Studies in Computational Intelligence,Springer,2012.

    [9]K.Cho,B.V.Merrienboer,C.Gulcehre,D.Bahdanau,F.Bourgares,H.Schwenk,and Y.Bengio.2014.Learning Phrase Representations Using Rnn Encoder-Decoder for Statistical Machine Translation.In arXiv preprintarXiv:1406.1078.

    [10]Yoon Kim.ConvolutionalNeuralNetworks for Sentence Classification.arXiv:1408.5882v2[cs.CL].

    [11]Ryan Lowe*,Nissan Pow*,Iulian V.Serbany,Joelle Pineau*.The Ubuntu Dialogue Corpus:A Large Dataset for Research in Unstructured Multi-Turn Dialogue Systems.arXiv:1506.08909v3[cs.CL]4 Feb 2016.

    [12]https://github.com/rkadlec/ubuntu-ranking-dataset-creator

    [13]KINGMAD,BA J.Adam:AMethod for Stochastic Optimization[J].arXiv preprintarXiv:1412.6980,2014.

    [14]Ilya Sutskever,Oriol Vinyals,Quoc V.Le.Sequence to Sequence Learning with Neural Networks.arXiv:1409.3215v3.

    [15]C.Santos,M.Tan,B.Xiang,and B.Zhou.2016.Attentive Pooling Networks.In arXiv:1602.03609.

    猜你喜歡
    卷積向量神經(jīng)網(wǎng)絡(luò)
    向量的分解
    基于3D-Winograd的快速卷積算法設(shè)計(jì)及FPGA實(shí)現(xiàn)
    聚焦“向量與三角”創(chuàng)新題
    神經(jīng)網(wǎng)絡(luò)抑制無線通信干擾探究
    電子制作(2019年19期)2019-11-23 08:42:00
    從濾波器理解卷積
    電子制作(2019年11期)2019-07-04 00:34:38
    基于傅里葉域卷積表示的目標(biāo)跟蹤算法
    向量垂直在解析幾何中的應(yīng)用
    基于神經(jīng)網(wǎng)絡(luò)的拉矯機(jī)控制模型建立
    向量五種“變身” 玩轉(zhuǎn)圓錐曲線
    復(fù)數(shù)神經(jīng)網(wǎng)絡(luò)在基于WiFi的室內(nèi)LBS應(yīng)用
    金川县| 苍梧县| 丰顺县| 嵊泗县| 中卫市| 商城县| 阿拉善右旗| 衡山县| 龙州县| 昌江| 桃园市| 红河县| 英吉沙县| 东海县| 宁南县| 开封市| 鄂伦春自治旗| 青州市| 阿拉尔市| 太仓市| 三穗县| 远安县| 三江| 南开区| 阳西县| 白城市| 康马县| 桃园市| 永春县| 济阳县| 襄汾县| 黄浦区| 额济纳旗| 云龙县| 十堰市| 施甸县| 军事| 阳原县| 江门市| 长武县| 澄迈县|