【论文笔记】Commonsense Knowledge Aware Conversation Generation with Graph Attention
Commonsense Knowledge Aware Conversation Generation with Graph Attention
文章目錄
- Commonsense Knowledge Aware Conversation Generation with Graph Attention
- 1. Motivation
- 2. Main idea
- 3. Model
- 3.1 知識檢索
- 3.2 靜態(tài)圖注意力機制
- 3.3 知識解釋器
- 3.4 知識感知的生成器
- 3.5 動態(tài)圖注意力機制
- 3.6 損失函數(shù)
-
會議:IJCAI 2018
-
任務:開放域對話生成
-
代碼:項目地址
1. Motivation
? 在對話任務中引入常識知識,作為現(xiàn)實世界的背景知識,可以強化模型對對話上下文的語義理解,從而生成更合適且更具有信息性的回復。
? 過去的引入外部知識的工作存在兩個不足:
(1)它們高度依賴于非結構化文本的質(zhì)量,或者受限于小規(guī)模、特定領域的知識;
(2)它們通常單獨地、獨立地利用知識三元組(實體),而不是將知識三元組看作圖中的一個整體。因此,它們無法通過鏈接的實體和關系來表示圖的語義。
2. Main idea
? 本文提出了常識知識感知的對話模型CCM,給定一個用戶post,模型首先從知識庫中檢索相關知識圖然后通過一個靜態(tài)圖注意力機制來編碼圖,以此來增強對用戶Post的語義理解。
? 然后,在文本生成階段,模型通過動態(tài)圖注意力機制,專注地讀取檢索到的知識圖以及每個圖中的知識三元組,以促進更好的生成。這是第一個嘗試在對話生成任務中使用大規(guī)模常識知識的工作。而且,不同于現(xiàn)有的模型—它們獨立、分別地使用知識三元組,本文的模型將每個圖視為一個整體,這樣可以編碼知識圖譜中更多結構化的、連通的語義信息。
3. Model
3.1 知識檢索
? 以用戶的post作為查詢,到知識庫中檢索出一系列圖G,每個圖包括一系列三元組,每個三元組包括:頭實體、關系、尾實體。注意,只檢索其鄰近節(jié)點和關系。并且,每個單詞只檢索出一個圖。
? 使用TransE來表征知識庫中的關系和實體,為了填補知識庫和非結構化對話文本的鴻溝,使用一個MLP:
k = ( h ; r ; t ) = M L P ( T r a n s E ( h ; r ; t ) ) \textbf{k} = (\textbf{h};\textbf{r};\textbf{t}) = MLP(TransE(h; r; t)) k=(h;r;t)=MLP(TransE(h;r;t))
? 即用TransE對三元組進行編碼,然后使用MLP進行轉換得到最終的三元組嵌入。
3.2 靜態(tài)圖注意力機制
? 知識圖向量通過靜態(tài)圖注意力機制靜態(tài)表征了輸入X中相應單詞的知識圖。
? 具體而言,以TransE編碼后的三元組向量作為輸入,生成一個知識圖向量。
? 這里用的是Bahdanau加性注意力模型,但是根據(jù)三元組的場景進行了改進,注意力權重衡量了關系r和頭部實體、尾部實體的關聯(lián)(沒太看懂這里這么做的作用),最終生成的知識圖向量是由頭向量和尾向量和注意力得分的加權和。
3.3 知識解釋器
? 知識解釋器以用戶的post和檢索到的圖G作為輸入,通過將詞嵌入和它對應的知識圖向量拼接,以獲取每個單詞的知識感知表示,然后送入到GRU中。
3.4 知識感知的生成器
? 知識感知的生成器主要有兩個作用:
(1)選擇性地讀取檢索到的圖,得到一個圖感知的上下文向量,并利用該向量更新解碼器的狀態(tài)。
(2)從檢索到的圖中自適應地選擇一個通用詞或實體進行詞語生成。
? 其中, c t c_t ct?是編碼器通過注意力機制生成的上下文向量, c t g c_t^g ctg?和 c t k c_t^k ctk?分別是上下文向量和知識圖向量進行注意力計算得到的。
3.5 動態(tài)圖注意力機制
? 動態(tài)圖注意力機制是分層的,首先,給定解碼器的當前狀態(tài) s t s_t st?,它計算和全部知識圖向量的注意力:
? 注意力權重衡量了解碼器狀態(tài) s t s_t st?和知識圖向量 g i g_i gi?的聯(lián)系。
? 隨后,計算 s t s_t st?與每個知識圖向量的所有三元組之間的注意力,使用的是雙線性注意力打分函數(shù):
? 最終加權時,要將第一層計算到的每個知識圖向量的權重和圖中每個三元組的權重乘起來。即先關注特定的圖,再在這個圖中關注特定的三元組。
? 解碼時,選擇一個詞表中的詞或實體詞進行生成,即引入了Copy機制,這里可以參考PGN指針生成網(wǎng)絡::
3.6 損失函數(shù)
這里應用一個監(jiān)督信號作為teach-force是選擇一個實體詞還是一個通用詞。損失函數(shù)的前一項是交叉熵損失函數(shù),后一項是監(jiān)督信號, q t ∈ { 0 , 1 } q_t \in \{0,1\} qt?∈{0,1},用于監(jiān)督選擇實體詞或通用詞的概率。
總結
以上是生活随笔為你收集整理的【论文笔记】Commonsense Knowledge Aware Conversation Generation with Graph Attention的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php编写程序百马百担问题_编程,百马百
- 下一篇: 【mac】「终端查看完整命令记录」「提示