IJCAI 2020 | DAM: 面向視覺對話的高品質回復生成框架
本文介紹的是 IJCAI-2020論文《DAM: Deliberation,Abandon and Memory Networks for Generating Detailed and Non-repetitiveResponses in Visual Dialogue》,該論文由中科院信工所於靜老師指導 ,由來自中科院信工所、北京航空航天大學、阿德萊德大學的作者 (蔣蕭澤、於靜、孫雅靜、秦曾昌、朱梓豪、胡玥、吳琦) 共同合作完成。
程式碼鏈接: //github.com/JXZe/DAM
近年來,跨模態研究引發了廣泛關注並取得顯著進展,綜合分析語言和視覺等不同模態的資訊對模擬現實社會中人類對於資訊的認知過程具有重要意義。視覺對話是跨模態理解領域重要的任務之一,與視覺問答任務不同,視覺對話需要根據影像、對話歷史來回答當前問題。視覺對話任務中現有的方法按照解碼方式的不同可以分為判別式(discriminative)方法和生成式(generative)方法,判別式方法從候選答案集合中選擇最合適的答案作為當前問題的回復,而生成式方法則根據輸入的資訊基於詞表生成一個答案回復。
人工構建的候選答案集合保證了句子語法的準確性,使得判別式方法更為簡單,但是在現實應用中判別式方法往往會受到設備存儲庫容量的限制;生成式方法雖然更為複雜和困難,但卻有著更為廣泛的應用價值,也更符合「人的智慧」。
如圖1所示,傳統的生成式視覺對話系統採用編碼器-解碼器(encoder-decoder)框架。給定外界輸入的影像I、對話歷史H和當前問題Q,編碼器端旨在捕捉輸入端的語義資訊,並將編碼後輸入端整體的語義資訊送入解碼器進行解碼。
傳統的生成式解碼器採用LSTM對輸入的全局語義資訊進行解碼,但由於全局語義缺少刻畫輸入影像和對話歷史的細節資訊且全局語義隨著LSTM解碼的行進幾乎不發生改變,這就導致了生成的回復中包含了大量的重複的單詞且缺少輸入端的細節資訊,嚴重影響了生成式視覺對話系統的用戶體驗。如何減少回復中重複的單詞並包含更多細節資訊是視覺對話任務的挑戰之一。
圖1 傳統的生成式解碼器(左)和論文提出的生成式解碼框架DAM(右),其中綠色框線代表整體級別的全局語義資訊、藍色框線代表詞級別的局部語義資訊。
在視覺對話領域中,大量的前人工作都集中在如何更好的編碼輸入的多模態資訊,這是從資訊輸入的角度對輸入的多模態資訊進行理解;而對於句子的生成,顯然是怎樣更好的解碼資訊更加重要,由此作者從資訊輸出的角度對編碼的多模態資訊進行更好的語義表達和文本輸出。如前文所述,傳統的視覺對話生成式解碼器僅僅是對輸入的全局語義資訊進行解碼,導致回復中包含了大量的重複單詞。如圖1所示,作者提出了一種新穎的層次化的解碼框架DAM,即在解碼的過程中綜合的考慮整體級別的全局語義(response-level semantics)和單詞級別的局部語義(word-level semantics)。全局語義負責保證生成回復的整體語義的連貫性和準確性,局部語義負責捕獲當前生成的詞的特有的語義資訊。模型的構建突出表現出了以下三個方面的優勢:
(2)模組化的結構設 計:推敲模組 (Deliberation Unit)、放棄模組(Abandon Unit)和記憶模組(Memory Unit);
(3)統一的生成式解碼器框架:DAM可與現有的視覺編碼器進行自適應的結合,以提高模型整體的生成能力。
生成式視覺對話任務:根據給定的影像I,影像描述C和t-1輪的對話歷史Ht={C,(Q1,A1),…,(Qt-1,At-1)},以及當輪問題Qt,生成針對當輪問題Qt的最佳答案。
作者提出的生成式解碼器框架如圖2所示,主要包含全局語義解碼層(綠色部分)、局部語義解碼層(藍色部分)以及層次化資訊融合模組(紫色部分)。本文以解碼第τ個詞為例介紹模型的各部分設計。
全局語義解碼層(圖2中綠色區域)捕獲輸入資訊的整體語義資訊,保證生成回復的整體語義連貫性和語義正確性。全局語義解碼層由單向LSTM組成(編碼器輸出的全局知識向量K作為初始隱狀態),輸入上一時刻生成的單詞xτ-1和隱狀態s,輸出解碼當前詞的全局語義資訊rτ:
局部語義解碼層(圖2中藍色區域)將重要且獨特的輸入資訊(影像、對話歷史、問題)加入到生成的詞中,來強化詞粒度上的局部語義資訊,對生成的詞進行更好的審視和理解。局部語義解碼層首先通過一個單向LSTM來獲得當前詞的中間表示nτ,LSTM的輸入為上一時刻生成的單詞xτ-1和上一時刻更新後的知識向量Kτ-1的聯合表示以及上一時刻的隱狀態s:
隨後,局部語義解碼層通過推敲模組 和放棄模組獲取詞粒度下的局部語義資訊。
(1)推敲模組 (Deliberation Unit)
視覺對話領域大量的工作在編碼器端已經對輸入的資訊進行了全面的分析和理解,在可以預見的未來編碼器端還會出現更多、更強大的資訊理解模式。為了使DAM更好的適應視覺對話領域在編碼器端多樣的資訊理解和選擇模型,推敲模組 旨在自適應地根據編碼器端對於資訊選擇的模式來獲取和當前詞相關的視覺和文本資訊。整體來講,推敲模組 輸入為當前詞nτ,輸出為與當前詞相關的知識資訊Kτ。
推敲模組 隨著編碼器端結構的變化而變化,作者選取三個常見的編碼器作為其基礎模型來驗證方法的有效性,分別為Late Fusion(LF)[1]、Memory Network(MN)[1]和Dual-coding Visual Dialogue(DualVD)[2]。三個編碼器側重點各有不同但又相互補充,LF側重於資訊的融合過程,MN側重於對於對話歷史資訊的建模,而DualVD側重於對影像資訊的深度理解。如圖3所示,推敲模組 主要由三個資訊選擇的步驟組成:
步驟1在與各種編碼器結合時都相同,步驟2和步驟3根據編碼器的不同而不同。具體來說,和LF結合時,因LF注重資訊的融合沒有資訊選擇的過程,所以推敲模組 省略 步驟2;和MN結合時,步驟2對歷史資訊進行了選擇和更新;和DualVD結合時,步驟2依據深度視覺資訊理解的模式,進一步對影像資訊進行了更新和選擇。
圖3 推敲模組( 自適應編碼器端結構),其中V為對影像理解的視覺表示,M為對影像理解的語義表示 。
由於在生成每一個單詞時都會對知識庫(KB)中的資訊進行更新,由推敲模組 輸出的知識資訊Kτ中會包含與之前時刻生成的詞相關的資訊。放棄模組旨在過濾掉Kτ中的冗餘資訊,使最後生成的局部語義資訊對於當前生成的詞來說是特有的,能夠更加捕獲詞粒度上的資訊。放棄模組本質上是一個資訊選擇的過程,作者採用gate的方式獲得最後的局部語義資訊:
層次化資訊融合(圖2中紫色區域)採用記憶模組(Memory Unit)綜合地考慮全局和局部的語義資訊來解碼單詞,是一種資訊選擇的過程,作者同樣採用gate的方式來實現層次化的資訊融合:
最後將記憶模組的輸出oτ通過線性層映射到詞表的大小,並返回概率最大的單詞作為當前詞的輸出,詞表中單詞的概率分布計算公式為:
作者在視覺對話最新發布的數據集VisDial v1.0上做了大量的實驗驗證了模型的有效性。
實驗的總體結果如表1所示,LF-G、MN-G和DualVD-G是作者採用的基礎模型(G代表對應的編碼器和傳統的生成式解碼器搭配),LF-DAM、MN-DAM和DualVD-DAM是本文提出的模型。通過對錶1的數據的分析可知:將傳統的生成式解碼器更換為DAM後,三個模型的表現均獲得了提升;DualVD-DAM在大多數指標上達到了當前最好的結果。
表1 在VisDialv1.0 validation數據集上的結果比較
消融實驗主要為了驗證各個模組、層次化解碼框架以及在推敲模組 中採用的自適應的資訊選擇模式的有效性。
如表2所示,作者對三個模型均做了相同的消融實驗來驗證各個模組的有效性。其中1)2L-DAM:整體模型;2)2L-DM:整體模型w/o放棄模組;3)2L-M:2L-DMw/o 推敲模組 ;4)2LSTM:2L-Mw/o 記憶模組。通過對錶2的數據分析可知:在引入每個模組後,模型效果均有提升;提升的趨勢在三個模型中趨勢均類似,因此在接下來的實驗中,作者以DualVD-DAM為例做分析。
表2 關於各模組有效性的消融實驗在VisDialv1.0 validation上的結果
在層次化解碼框架的有效性部分,主要驗證全局語義解碼層和局部語義解碼層的互補優勢以及層次化的資訊融合模式。
為了驗證全局語義解碼層(RSL)和局部語義解碼層(WDL)的互補優勢,作者隨機取樣了100個樣本,引入三個實驗對象進行人工測評,其中M1表示生成的回復通過圖靈測試的比例,M2表示生成的回復高於或等於人工生成的回復品質的比例,Repetition表示生成的回復出現重複性單詞的比例,Richness表示生成的回複比人工生成的回復包含更多細節的比例。實驗結果如表3所示,可以觀察到同時採用兩層語義資訊進行解碼的模型在絕大多數指標上取得了最好的效果,說明了全局語義和局部語義的互補優勢。
表3 在VisDialv1.0 validation上人工測評的結果
如圖4所示,為了弄清楚全局語義(RSL)和局部語義(WDL)的層次化的資訊融合模式,作者進一步可視化了記憶模組的門控值。根據圖4的可視化結果和其他更多的案例分析,作者發現:在解碼的過程中全局語義的門控值始終比局部語義的高,說明全局語義把握著回復生成的整體方向;在生成最後一個單詞(比如圖4中的background)的時候,局部語義的門控值有一個階越的提升,這就像一個訊號來告知模型全部的語義已經表達完成可以停止當前的生成過程,這說明局部語義確實捕捉到了詞粒度的資訊。
為了驗證推敲模組 所採用的資訊選擇模式的有效性,作者進一步做了消融實驗。如表4所示,1)I-S:僅用影像語義資訊進行資訊更新和選擇;2)I-V:僅用影像視覺資訊進行資訊更新和選擇;3)I-SV:用影像語義資訊和視覺資訊進行更新和選擇;4)H:僅用歷史資訊進行更新和選擇。通過對錶4結果的分析,可以發現最終的模型達到了最好的效果,將編碼器端的資訊理解模型遷移到解碼器端是有效的。
表4 關於推敲模組資訊選擇模式的消融實驗在VisDialv1.0validation上的結果
通過人工測評(表3)和案例分析(圖5),作者發現與傳統的生成式解碼器相比,DAM可以有效的避免生成重複的單詞,同時可以包含更多的細節資訊。如圖5中第一個例子:當問到「Q3: Is he giving attitude or having fun?」,DualVD-G生成了大量的重複單詞,而DualVD-DAM通過「having fun」不僅僅回答正確了問題,而且進一步捕捉到了更多的細節資訊「he looks like he is posing for the picture」。
如圖6所示,作者進一步通過可視化關鍵單詞生成的過程中捕捉到的影像和歷史的區域資訊來驗證模型資訊選擇的品質。以生成「backgrounds」為例,模型捕捉到了整個影像的背景區域,同時在對話歷史中捕捉到了描繪背景天空以及天氣情況的區域Q2A2。
作者提出了一種面向視覺對話的高品質回復生成框架DAM,該框架採用模組化的設計思路,極大程度上避免了傳統生成框架生成回復的重複性。DAM具有良好的可擴展性,能將其自適應的應用於大多數視覺對話模型中,對構建更加智慧的視覺對話系統具有較好的啟示作用。
[1] Abhishek Das, SatwikKottur, Khushi Gupta, Avi Singh, Deshraj Yadav, Jose ́M. F. Moura, Devi Parikh,and Dhruv Batra. Visual dialog. In CVPR, pages 1080–1089, 2017.
[2] Xiaoze Jiang, JingYu, Zengchang Qin,Yingying Zhuang, Xingxing Zhang, Yue Hu, and Qi Wu. Dualvd:An adaptive dual encoding model for deep visual understanding in visualdialogue. In AAAI, 2020.
蔣蕭澤:北京航空航天大學在讀碩士研究生,在中科院信工所於靜老師組開展研究,研究方向:視覺對話、自然語言處理,個人主頁://jxze.github.io/。