工程師如何給女朋友買包?問問阿里「百事通」

阿里妹導讀:工做那麼忙,怎麼給女友買包?是翻看包包的詳情頁,再從商品評論中去找信息嗎?爲了幫助相似的同窗節省時間,阿里工程師們提出快速回答生成模型RAGE。你問它答,這個「百事通」能從總體結構,評論的抽取和表示及融合四個方面綜合解決生成模型響應速率及生成質量的問題,進而提升生成的回答的真實性及有效性。今後,如何給女朋友「買包」,再也不是難題。安全

本篇內容參考論文《Review-Driven Answer Generation for Product-Related Qestions in E-Commerce》論文做者爲:武漢大學李晨亮、陳詩倩,阿里巴巴計峯、周偉、陳海青。網絡

引言

隨着互聯網技術的普及,電子商務產業獲得了蓬勃的發展,用戶的購買行爲逐漸由線下轉移到線上,然而線上購物帶來便利的同時,弊端也逐漸顯現。用戶在作購買決定以前,一般但願獲取更多的商品詳情與使用感覺等信息,然而,當網頁瀏覽與點擊代替了面對面的交易,用戶沒法得到直觀的判斷,僅能經過翻閱商品詳情頁及已購買用戶的評論獲取有效信息。用戶需瀏覽及過濾大量的評論信息才能得到商品的綜合評價,這無疑增長了線上購物的時間成本,下降了用戶的購物體驗。app

爲了解決線上環境信息獲取渠道閉塞且耗時的問題,各大電商平臺,例如,淘寶、亞馬遜,相繼提供社區問答(CQA)的服務。雖然社區問答在必定程度上緩解了部分用戶瀏覽及過濾評論信息的時間成本,然而,等待已購買用戶回答問題的過程一樣是低效耗時且低召回的。所以,爲了進一步節省用戶購物時間,各大電商平臺開始探索經過智能問答系統,自動、及時且真實的回答用戶提出的商品相關性問題,幫助用戶獲取所需的信息。雖然現有的智能問答系統通過了幾十年的發展,已經相對成熟,然而依然沒法在電商領域普遍應用,其緣由在於:函數

1.檢索式問答系統過度依賴於問答庫,而電商領域中問題形式變幻無窮,構造完整的問答庫相對困難且耗時。
2.現有的生成式問答系統的工做均以循環神經網絡及其變種形式爲基礎。循環神經網絡因其時序特性而沒法並行處理,致使效率較低。
3.目前生成式問答系統外部信息的引入主要依賴於結構化的知識庫或者是關鍵詞及主題模型,而在電商領域中,商品知識庫的構造是一項消耗時間及人力成本的工做。學習

所以針對電商領域問答系統的需求現狀及現有工做中存在的不足,咱們創新性的提出了利用非結構評論信息引導回答生成的思想,同時提出了一種基於多層門控捲積神經網絡的快速回答生成模型RAGE。該模型分別從總體結構,評論的抽取、表示及融合四個方面綜合解決生成模型響應速率及生成質量的問題,進而提升生成的回答的真實性及有效性。測試

2 模型

模型總體結構如圖1:編碼

2.1基礎結構spa

2.1.1問題編碼器.net

考慮到循環神經網絡存在的種種不足,咱們選擇採用門控捲積神經網絡做爲問題編碼器對問題序列進行編碼。然而,卷積神經網絡因其權值共享的特性,致使其對位置信息不敏感。爲解決門控捲積神經網絡位置信息丟失的問題,咱們在輸入矩陣中引入位置向量,以保證卷積過程當中模型對於位置信息的敏感性。同時,咱們將詞性信息(POS tag)引入輸入矩陣,詞性信息中所包含的句法和詞法信息可以更好的幫助門控捲積神經網絡理解詞間關係和文本語義。3d

給定分詞後的問題序列2_1
,依照公式2-1所示,結合同維詞向量w,位置向量t,詞性向量p,獲得每一個詞的表示向量2_2,其中Q爲問題長度,N爲向量維度。

然後咱們經過堆疊多層的門控捲積神經網絡來擴大其感覺野,高層次的門控捲積神經網絡能夠經過低層次的門控捲積神經網絡提取的特徵建模距離中心詞較遠的上下文。同時,爲了不由於網絡層數加深而產生梯度消失問題,本文利用殘差學習網絡(ResidualConnection),將l層輸入與l層的輸出結合做爲l+1層的輸入,以保證在反向傳播的過程當中梯度能穩定的在層級間傳播。基於多層門控捲積神經網絡的問題編碼過程如公式2-2所示:

式中爲4_1問題編碼器的層數,4_2爲l層的卷積核,4_3爲中心詞i及其上下文通過第l層門控捲積神經網絡編碼輸出的狀態。

通過層層編碼後,最高層次的編碼狀態4_4中包含了豐富的信息,而最原始的中心詞i自己的信息也相對被弱化了,於是咱們借鑑殘差網絡的思想,按照公式2-3所示,將中心詞i原始的表示向量4_5與其對應的最高層次的編碼狀態相結合,獲得中心詞i的編碼向量4_6

將問題中的每一個詞做爲中心詞進行多層卷積操做,最終獲得問題編碼向量6

2.1.2 基礎解碼器

給定已生成的回答序列7,解碼器的做用是對已生成的回答序列𝐚進行編碼,獲得j時刻的狀態向量,結合問題編碼向量解碼出第j個詞。與問題編碼器同樣,咱們將解碼器的基本模塊也替換爲多層門控捲積神經網絡。解碼器的輸入部分僅爲待生成詞的前向序列,例如,當前待生成的詞爲第j個詞,即此時編碼器處於第 j 時刻,當前時刻的輸入爲j-1時刻生成的詞7_1,輸入序列爲8,其中爲解碼開始符。輸入序列中的每一個詞用詞向量,詞性向量,位置向量進行表示,便可獲得j時刻的輸入序列表示9

編碼的過程與問題編碼過程相似,不一樣的地方在於,卷積核的感覺野被限制爲上文而非上下文,由於回答生成的過程當中,j時刻的生成詞由第j時刻的狀態向量決定,而就生成過程而言,下一時刻的狀態對於當前時刻是未知的,因此j時刻的狀態向量中不該該帶有下文的信息,如公式2-4,2-5所示:

式中當前時刻爲j時刻,11爲當前時刻的輸入,即j-1時刻的生成詞,爲l層的卷積核,13爲中心詞j及其上下文通過第l層門控捲積神經網絡編碼後輸出的狀態,14爲第l層的映射矩陣,15爲l層於j時刻的狀態向量。

然後,經過注意力機制將問題中所包含的與當前生成詞相關的信息引入生成狀態,使得最終生成的回答貼合問題核心語義。考慮到多層門控捲積神經網絡的層次結構,在這裏採用層次型注意力機制,即回答生成器中每一層l獲得的狀態向量15均與問題編碼向量Z計算注意力權重分佈,最終獲得與當前l層j時刻生成狀態相關的加權問題編碼向量16,其中與當前生成狀態相關的信息將被賦予較大的權重,具體過程如公式2-6,2-7所示:

式中表示點乘,19表示第l層中,j時刻的生成狀態15與問題中第i個詞的編碼向量計算的注意力權重,越大表示j時刻的生成狀態與問題第i個詞表達的信息越相關。

然後,將l層j時刻的生成狀態依照公式2-8進行更新,做爲l+1層的輸入。

最後,回答生成器根據最高層j時刻的生成狀態來肯定詞表生成機率的分佈,如公式2-9所示,其中21爲詞表映射矩陣,22爲回答生成器的層數。

2.2 評論的抽取、表示及融合

2.2.1 評論的抽取

咱們採用Word Mover’s Distance(WMD來衡量文本間的語義關係進行評論片斷的抽取。對於給定問答對,首先拼接問答對中的問題與答案,然後對該問答對以及問題對應商品的全部評論片斷集合R中的一個評論片斷r進行分詞並去除停用詞,將二者分別表示爲詞袋,再分別計算每一個詞的詞頻。

WMD利用詞向量間的歐式距離來表示詞間的轉移開銷,問答對中的第i個詞到評論片斷中第j個詞的轉移開銷表示爲25。獲得詞間轉移開銷便可獲得文本間的轉移開銷。假設,問答對p中的每一個詞i容許轉移到評論片斷r中的任意詞j,WMD中用每一個詞的詞頻來表示詞在文本中的佔比,用矩陣26表示詞間轉移比率,27表示p中的第i詞中有「多少」轉移到r中的第j個詞,每一個詞的轉移總和及接收總和不能超過其在文本中的佔比,即, 28

最終用問答對和評論片斷間的最小轉移開銷表示二者間的距離,如公式2-10所示:

後續咱們利用閾值對計算WMD後的評論片斷集合進行過濾獲得與問答對p對應的問題相關評論片斷集合31。爲整個訓練集中的全部問題對應的前10條評論片斷集合的Word Mover’s Distance的均值。

2.2.2評論片斷的表示

給定相關評論片斷集合32,首先將其去除停用詞表示爲詞袋,利用公式2-11分別計算詞袋中每一個詞的權重33

式中35表示計算32中有多少條評論中包含單詞,
3632中包含評論片斷的數量,表示單詞37和評論片斷 s 中全部單詞在詞向量基礎上計算的餘弦類似度,返回餘弦類似度的最大值。一個單詞若具備較高的片斷頻率而且和其他片斷中的詞密切相關。然後對權重進行最大歸一化,結合詞向量獲得帶權詞典,如公式2-12,2-13所示,式中爲逐維相乘操做。

結合詞向量獲得帶權詞典40,如公式2-12,2-13所示,式中爲逐維相乘操做。

2.2.3 評論的融合

爲了使每一層的生成狀態均對外部信息保持敏感,在回答生成器中咱們一樣採用了層次注意力機制。另外,咱們認爲問答任務中外部信息的選擇過程不只僅由當前的生成狀態決定,還應與問題的語義密切相關。所以,在RAGE中咱們利用與當前生成狀態相關的加權問題編碼向量與帶權詞典計算注意力權重,其緣由在於加權問題編碼向量中不只僅含有當前生成狀態的信息,同時包含了問題的語義信息,可以準確的對外部信息進行選擇。其具體過程如公式2-14,2-15所示,最終獲得與l層j時刻生成狀態相關的評論信息編碼向量。

式中表示第l層中,j時刻的問題編碼向量與帶權詞典中中第i個詞的表示向量計算的注意力權重。

爲了不信息的冗餘,在每一層中本文經過門控機制選擇性的利用問題編碼信息和評論信息對生成狀態進行更新,獲得最終的生成狀態。於是,將公式2-8改成公式2-16。

式中爲門控權值向量,由l層的j時刻生成詞生成狀態,當前生成狀態相關的加權問題編碼向量,當前生成狀態相關的評論信息編碼通過函數()映射而得,具體程如公式2-17所示。

式中45爲兩層矩陣映射及Sigmoid非線性變換。

3 實驗

3.1對比模型

1)Seq2seqwith Attention(Bahdanau 2016)
2)TA-Seq2seq(Xing2017)
3)ConvSeq2seq(Gehring2017)
4)ConvSeq2seq-RV:在ConvSeq2seq的基礎上,每次生成時動態的限制生成的詞必須出如今其對應的相關評論片斷中
5)RAGE/POS:RAGE去除POS信息

3.2數據集

咱們使用了兩個淘寶平臺中真實的「問你們」數據集對模型的生成效率及質量進行測評,兩個數據集分別爲「手機」相關數據集及「你們電」相關數據集。其中「手機」數據集相對較小,僅涉及4457個商品,而「你們電」數據集相對較大且離散,包含冰箱、洗衣機等多個子類目下的47979個商品。

爲了測試RAGE模型的泛化能力,本文從手機數據集中隨機挑選出6個品牌的商品相關性問題及其對應商品的評論做爲測試集,其他商品的問答對和評論做爲訓練集。一樣的,隨機挑選出「你們電」數據集下的兩個子類目,取其問題及評論做爲測試集,其他商品問答對和評論構成訓練集。

最終獲得的數據集統計信息如表4-1所示。表中表示問答對的數量,表示問題的詞平均長度,表示標準回答的詞平均長度,表示抽取的平均評論片斷數目。

對於測試集,咱們僅保留其問題部分,該問題對應的標準回答僅用於衡量模型的生成效果不該參與訓練及生成過程。抽取評論片斷的過程當中,咱們首先利用Word Mover’s Distance在訓練集中尋找其最類似的問題,取該問題的答案與測試集中的問題構成問答對。

3.3 評價指標

客觀評價指標咱們採用詞平均類似度(Embedding BaseSimilarity;ES)及句中離散度(Distinct)來衡量。主觀評價方面,咱們規定了以下的打分標準:+3:若是生成的回答既通順又與問題密切相關,同時包含有效信息且該有效信息與標準回答及用戶評論相符,則該回答爲3分。+2:若是生成的回答包含與標準回答及用戶評論相符的有效信息,可是含有部分的語法錯誤,好比重複生成、句式紊亂等,則該回答爲2分。+1:若是生成回答僅可以用於回答問題,可是不包含有效的信息,好比「我是給別人買的,我不知道」,「能夠,能夠」等無心義的回答,則該回答爲1分。0:若是生成的回答毫無心義或者包含太多的語法錯誤以致於難以理解,則該回答爲0分。然後邀請兩位評價者對模型的生成回答進行評價,並利用kappa值衡量評價者間的評價一致性。

3.4 實驗結果及分析

咱們對各模型進行了客觀指標的評價,,並獲得瞭如表4-2的結果。經過對兩個指標的觀察咱們發現,「你們電」數據集的詞平均類似度總體低於「手機」數據集,其緣由多是因爲「你們電」數據集類目複雜,句式較爲離散,模型不易學習其問答間的轉換關係。另外「你們電」數據集中RAGE/POS的句中離散度高於RAGE模型,經過結合主觀評價指標的綜合分析,咱們認爲其可能的緣由是RAGE/POS生成了部分不相關的詞,致使其句中離散度較高。同時咱們觀察到,TA-Seq2seq和ConvSeq2seq-RV以及RAGE/POS、RAGE的句中離散度和詞平均相關性在兩個數據集上均高於Seq2seqA和ConvSeq2seq,佐證了本文「引入外部信息有利於生成包含有效信息以及貼合問題語義的回答」的觀點。

主觀評價的部分,咱們經過對錶4-3,4-4中的結果進行分析,獲得以下結論。第一,雖然RAGE生成的回答與標準回答在各方面都存在必定差距,可是相比於現有的回答生成工做,RAGE在通順性以及包含有效信息程度等方面都有顯著的提高。第二,咱們能夠觀察到,RAGE/POS和RAGE在2分的結果上有明顯差距,說明詞性信息的引入確實有助於提升回答生成的通順性。

考慮到電商領域實時響應的需求,咱們在基礎模型的搭建過程當中,將以往工做中經常使用的循環神經網絡替換爲多層門控捲積神經網絡,爲證實其效率,咱們在單卡 Tesla K40 GPU環境下對比了各個模型的訓練及測試效率,其結果如表4-5中所示,能夠觀察到,基於循環神經網絡的Seq2seqA和TA-Seq2seq模型,訓練及測試的耗時明顯高於基於多層卷積神經網絡的其餘模型。

表4-6 Case Study:

最後咱們作了Case Study。於表4-6中列出其標準回答,評論抽取過程當中Word Mover’s Distance最小的評論片斷MSR,以及各個模型的生成結果。經過表中案例能夠觀察到,對於問題1,2,4這類簡單的問題,各個模型生成的回答都相對貼合問題語義。Seq2seqA以及ConvSeq2seq這兩個模型因爲沒有引入外部信息,其生成的回答明顯不具有任何有效信息,是全部問題都適用的安全性回答。RAGE得利於其對評論片斷的抗噪表示以及融合方式,生成的回答相比於其餘模型更加準確、通順、符合語法且包含豐富的有效信息。

問題3,5,6與問題1,2,4相比較爲複雜,其包含了兩個子問題,「製冷效果怎麼樣?」「制熱呢?」從表4-6中羅列的結果可知,大部分模型,包括標準回答均只回答了一個子問題,只有RAGE對兩個子問題都作出了回答。

4 總結

經過對實驗結果進行主觀、客觀及模型效率的分析,咱們認爲,RAGE在電商領域的問答任務中有較好的表現,相比於現有的其餘工做,RAGE可以更加快速的生成具備通順性,貼合問題語義且包含豐富信息的回答。


原文連接 本文爲雲棲社區原創內容,未經容許不得轉載。

相關文章
相關標籤/搜索