记忆网络
框架
- memory m:把 RNN 的内部记忆抽象出来了,空间更大,也可以有更多操作
- components:各部件的具体实现随便,比如 SVM、决策树
- I-input feature map:对输入处理为内部表示
- G-generalization:将输入更新到记忆中
- O-output feature map:根据输入与记忆给出输出的内部表示
- R-response:将输出的表示变换为期望样式的响应
- 流程:跟 RNN 差不多,就是把隐状态换成记忆了
- 输入更新记忆: m = G(m, I(x))
- 返回:R(O(m, I(x)))
components 全实现为 NN 就称为 Memory Neural Networks (MemNNs)。
一个 QA 的基本模型
假设输入是经过断句处理后的问句 x
- I(x) = x
- G 把 I(x) 存到 m 中下一个空位
- O 从 m 中找出 k 个相关句子,如 k = 2 时 $$\begin{aligned} o_1 &= \mathop{\arg\max}\limits_{i=1, \cdots, N} s_O(x, m_i) \\ o_2 &= \mathop{\arg\max}\limits_{i=1, \cdots, N} s_O([x, m_{o_1}], m_i) \end{aligned}$$
- R 输出最合适的词作为回答 $$r = \mathop{\arg\max}\limits_{w \in W} s_R([x, m_{o_1}, m_{o_2}], w)$$
里面的两个 s 都是使用点积模型计算表示相关性的打分函数。
训练时 $[x, o_1, o_2, r]$ 都作为监督数据。
Page Not Found
Try to search through the entire repo.