Machine learning 深层思维可微神经计算机(DNC)中LSTM变量的维数

Machine learning 深层思维可微神经计算机(DNC)中LSTM变量的维数,machine-learning,lstm,Machine Learning,Lstm,我正在尝试用PyTorch 0.4.0实现Deep Mind的DNC 在实现他们使用的LSTM变体时,我遇到了一些尺寸方面的问题。 为了简化,假设BATCH=1 他们在论文中列出的方程式如下: 其中[x;h]表示将x和h串联成一个向量,i、f和o为列向量 我的问题是如何计算状态s_t。 第二个附录是通过将i与列向量相乘得到的,因此结果要么是标量转置i,然后是标量积,要么是两个列向量相乘。 所以状态结果是一个标量 根据同样的推理,隐藏状态h_t也是一个标量,但它必须是一个列向量 显然我在某个地方

我正在尝试用PyTorch 0.4.0实现Deep Mind的DNC

在实现他们使用的LSTM变体时,我遇到了一些尺寸方面的问题。 为了简化,假设BATCH=1

他们在论文中列出的方程式如下:

其中[x;h]表示将x和h串联成一个向量,i、f和o为列向量

我的问题是如何计算状态s_t。 第二个附录是通过将i与列向量相乘得到的,因此结果要么是标量转置i,然后是标量积,要么是两个列向量相乘。 所以状态结果是一个标量

根据同样的推理,隐藏状态h_t也是一个标量,但它必须是一个列向量

显然我在某个地方错了,但我不知道在哪里

通过观察,我想我找到了答案

这是本文中标准LSTM的正式实现:

圆圈表示元素对元素的乘积

通过在DNC方程s_t和o_t的相应部分中使用此乘积,可以计算尺寸