前言
讀這篇論文之前要先了解 attention 機制以及 hierarchical encoder
Introduction
- 本篇論文目標任務 : open domain conversation in chatbot
- 目的:
- 原因: 並不是所有 context 資訊跟 response 有關,word 之餘 utterances
- 解決方法: 透過 attention 找尋相關資訊
Problem Formalization
- $\mathbf{Y}_{i}=\left(y_{i, 1}, \ldots, y_{i, T_{i}}\right)$ : response
- $\mathbf{U}_{i}=\left(u_{i, 1}, \dots, u_{i, m_{i}}\right)$ : context
- $u_{i, j}=\left(w_{i, j, 1}, \dots, w_{i, j, T_{i, j}}\right)$ : w 為 word
- 本篇論文 $m_{i} \geq 2$
目標機率公式:
Model
Word Level Encoder
使用 BiGRU 做 enocder,並將前、後的 hidden state 做 concatenate
hidden state 初始為 isotropic Gaussian distribution
Utterance Encoder
使用逆向的單向 GRU 做 encoder
input 則是 word level attention 的 context 向量 $r$ 和下一句的 hidden state $l$
Hierarchical Attention
Word attention
跟傳統 attention 一樣藉由 $\alpha$ 來選擇 $h_{i,j}$
計算完的 $r_{i,t}$ 為 utterance encoder 的 input
而 $\alpha$ 的計算如下:
$s_{t-1}$ 為 decoder $t-1$ 的 hidden state,$l_{i+1}$ 為 utterance level encoder hidden state
$\eta$ 是一個 multi-layer perceptron ,並使用 tanh 當作 activation function
將 $e$ 做 softmax 得到 $\alpha$
Utterance Attention
和 word attention 類似
Decoder
一般 decoder 沒有什麼特別的
$f$ 為 GRU