神经图灵机

Neural Turing Machines[原文]

  • 读记忆(Read Heads)

    把时刻$t$的记忆看作是一个$N \times M$的矩阵$M_t$,读的过成首先生成长度为$N$的定位权重向量$w_t$,表示$N$个记忆位置的权值大小,读出的记忆向量为$r_t$:

    对$N$条记忆进行加权求和

  • 写记忆(Write Heads)

    类似LSTM:擦除向量$e_t$,增加向量$a_t$

    • 擦除操作:

    • 增加操作:

    神经图灵机的关键是定位向量$w_t$,其它的是由控制器(LSTM,MLP)输出

  • 定位机制(Addressing Mechanism)

    结合了基于内容和基于位置的两种方法

    • 基于内容(Content-based Addressing)

      $K[.,.]$是余弦相似度计算:

      $\beta_t$是控制器输出

    • 基于位置(Location-based Addressing)

      • 插值(Interpolation)

        $g_t$有控制器生成

      • 偏移(shift)

        每一个$\tilde w_t(i)$都与相邻元素有关

      • 重塑(Sharping)