[發明專利]一種基于多頭注意力機制和動態迭代的機器閱讀理解方法在審
| 申請號: | 201811365160.0 | 申請日: | 2018-11-16 |
| 公開(公告)號: | CN109492227A | 公開(公告)日: | 2019-03-19 |
| 發明(設計)人: | 李麗雙;張星熠;周安橋;周瑜輝 | 申請(專利權)人: | 大連理工大學 |
| 主分類號: | G06F17/27 | 分類號: | G06F17/27 |
| 代理公司: | 大連理工大學專利中心 21200 | 代理人: | 溫福雪;劉秋彤 |
| 地址: | 116024 遼*** | 國省代碼: | 遼寧;21 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 動態迭代 閱讀 構建 注意力機制 注意力 多頭 神經網絡模型 循環神經網絡 自然語言處理 解碼器 答案 模型構建 問題編碼 預測 文本 輸出 探索 | ||
1.一種基于多頭注意力機制和動態迭代的機器閱讀理解方法,其特征在于,步驟如下:
(一)對文章和問題進行編碼
首先,進行語料預處理,借助分詞工具Spacy對每個文章和問題進行分詞處理,然后構建問題和文章的嵌入層及編碼層;
所述構建問題和文章的嵌入層包括字符嵌入和詞嵌入兩部分:
(1)字符嵌入:將單詞的每個字符映射到固定向量空間;設和分別代表每一個樣本中單詞數為n的文章和單詞數為m的問題中單詞的字符序列,將它們輸入到雙向循環神經網絡中,得到最終的隱藏層狀態表征單詞的字符嵌入和
(2)詞嵌入:將每個單詞映射到固定向量空間;使用預先訓練好的詞向量模型GloVe來獲取每個單詞的固定詞嵌入和將字符嵌入和詞嵌入拼接分別得到文章和問題表示和對于問題Q∈Rd×m和文章P∈Rd×n,序列中的每一個詞都被轉換成d維的向量;
所述構建問題和文章的編碼層:
經過字符嵌入和詞嵌入,將文章和問題表示分別輸入到由GRU組成的雙向循環神經網絡編碼器,得到文章和問題編碼層的語義表示H∈R2d×n和U∈R2d×m;
(二)構建基于雙向注意力流的循環神經網絡
構建雙向注意力流層的過程包括計算相似性矩陣、融合輸入向量兩個部分:
(1)計算相似性矩陣:
首先,雙向注意力使用縮放點積函數計算文章語義H∈R2d×n和問題語義U∈R2d×m之間的相似性矩陣S∈Rn×m:
Stj=α(H,U)∈R (1)
其中Stj表示第t個文章單詞和第j個問題單詞之間的相似性,α函數定義為:
其中w(s)t∈R6d,為可訓練權值矩陣,表示逐元素積,“;”表示向量拼接,a和c表示不同的矩陣;
然后,共享相似矩陣S,計算從文章到問題以及從問題到文章兩個方向的注意力權重,具體過程是應用softmax函數歸一化S的每一列,然后計算文章到問題的注意力A:
at=softmax(St:)∈Rm (3)
其中,at表示文章中第t個詞對問題的注意力權重,St:表示S的第t個行向量,A:t表示A的第t個列向量,atk表示at的第k項,U:k表示U的第k個列向量;
之后,應用softmax函數歸一化S的每一列最大值,并計算問題到文章的注意力B:
b=softmax(maxcol(S))∈Rn (5)
B:k=∑bkH:k∈R2d (6)
其中,b表示文章單詞注意力權重,maxcol即按列求最大值,B:k表示B的第k個列向量,bk表示文章第k個單詞的注意力權重,H:k表示H的第k個列向量;
(2)融合輸入向量:
聯合H,A,B產生雙向注意力流層輸出:
其中,G中的每一列代表了一個融合問題全部語義信息的文章詞向量;β是融合H,A,B三個輸入向量的可訓練函數,而dG是β函數的輸出維度;β函數是任意可訓練的神經網絡,取β函數為簡單拼接,則雙向注意力流層輸出為:
將雙向注意力流層輸出G輸入由GRU構成的雙向循環神經網絡,從而獲取融合了問題信息但文章語義信息有所缺失的文章表示
(三)構建自注意力層
自注意力層結合雙向循環神經網絡和自注意力,利用縮放點積式的多頭注意力機制,將文章表示均分成h個部分,并行化地計算各部分的注意力權重,動態地在通過的每個文章詞向量中收集整個文章中的信息;計算各部分的注意力權重的過程為:
headi=Attention(QWiQ,KWiK,VWiV) (10)
ct=MultiHead(Q,K,V)=Concat(head1,…,headh)WO (11)
其中,WO,WQ,WK和WV均為權值矩陣;Q、K、V分別代表Attetion函數中的查詢、鍵、值,分別是編碼器的輸出和解碼器中的輸入;dk為查詢Q和鍵K的維度,headi為文章第i部分,ct為多頭注意力機制最終輸出;雙向循環神經網絡將拼接后的向量編碼至新的向量表示
其中,表示自注意力層輸出并對應于文章第t個詞的語義表示,為雙向注意力層輸出的文章表示;進而,經過自注意力層獲得文章語義表示
(四)基于動態迭代解碼器預測答案輸出
利用動態迭代解碼器,將模型預測作為初次預測結果繼續輸入到動態迭代解碼器中,通過動態迭代的方式反復迭代預測答案位置,直到預測結果不再變化或迭代次數超過閾值,最終確定答案位置;迭代過程中允許模型跳出初始局部最優答案;自注意力層文章表示某一時間步驟t對應迭代過程r,在第r次迭代過程中,設hr,xr,和er分別表示LSTM狀態、起始位置的評估值和終止位置的評估值;則LSTM隱藏層狀態為:
其中,和分別表示前一次迭代過程中起始位置的評估值和終止位置的評估值;給定當前隱藏層狀態值hr,前一次迭代過程起始位置的評估值和終止位置的評估值獲得當前起始位置的評估值和終止位置的評估值:
其中,αt和βt分別表示文章中第t個詞作為答案跨度起始位置和終止位置的評估分數;利用兩個結構相同但不共享參數的神經網絡分別計算αt和βt,此處選擇結合了MaxoutNetworks和Highway Networks的Highway Maxout Network計算αt:
通過另一個HMNend模型,使用與αt相同的計算方式計算終止位置的評估分數βt;HMN模型的計算公式如下:
其中,v∈Rl,參數W(D)∈Rl×5l;W(1)∈Rp×l×3l,W(2)∈Rp×l×l和W(3)∈Rp×1×2l為權值矩陣,b(1)∈Rp×l,b(2)∈Rp×l和b(3)∈Rp為偏置;p是每個maxout層作池化操作的尺寸大小;max操作在張量的第一個維度上計算最大值;在第一個maxout層和最后輸出的maxout層之間存在highway連接;
起始位置概率分布X=[x1,x2…,xn]T和終止位置概率分布E=[e1,e2,…,en]T聯合乘積得到答案分布矩陣C,矩陣中任意元素Cyz=xyez;答案起始位置y和終止位置z滿足y≤z,檢索上三角矩陣中概率最大值的行列索引,輸出最終答案預測范圍。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于大連理工大學,未經大連理工大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811365160.0/1.html,轉載請聲明來源鉆瓜專利網。





