Deepmind的新“可分化神经计算机”将如何扩展?


12

Deepmind刚刚发表了一篇有关“可分化神经计算机”的论文,该论文基本上将神经网络与内存结合在一起

这个想法是要教神经网络为特定任务创建和调用有用的显式记忆。这很好地补充了神经网络的功能,因为NN仅在权重中隐式存储知识,而用于执行单个任务的信息仅存储在网络激活中,并会随着添加的更多信息而迅速降解。(LSTM是一种尝试减缓这种短期记忆退化的方法,但仍然会发生。)

现在,它们可能不是在激活中保留必要的信息,而是在激活中保留特定信息的存储插槽地址,因此这些地址也应进行降级。我的问题是为什么这种方法应该扩展。数量更多的特定于任务的信息难道不应该使网络在其激活时保持所有适当内存插槽的地址的能力不堪重负吗?

Answers:


3

检查DNC的体系结构确实显示出与LSTM的许多相似之处。考虑您链接到的DeepMind文章中的图:

DeepMind DNC架构

将此与LSTM架构进行比较(在SlideShare上的ananth贷记):

在此处输入图片说明

这里有一些相似的例子:

  • 就像LSTM一样,DNC将执行从输入到固定大小状态向量(LSTM中的hc)的某种转换。
  • 同样,DNC将执行从这些固定大小的状态向量到潜在任意长度输出的某种转换(在LSTM中,我们反复从模型中采样直到满意为止/模型表明已完成)。
  • LSTM的“ 忘记”和“ 输入”门代表DNC中的操作(“忘记”本质上只是将存储器归零或部分归零)
  • LSTM 的输出门代表DNC中的读取操作

但是,DNC绝对不只是LSTM。最明显的是,它利用了一个更大的状态,该状态被离散化(可寻址)成块。这使它可以使LSTM的忘记门更加二进制。我的意思是,状态不一定在每个时间步都被侵蚀掉,而在LSTM(具有S型激活函数)中,状态一定会被侵蚀。这可以减少您提到的灾难性忘记的问题,从而更好地扩展规模。

DNC在内存之间使用的链接中也很新颖。但是,与我们用每个门的完整神经网络而不是仅一个具有激活功能的单层神经网络(称为超级LSTM)重新构想LSTM相比,这可能比LSTM更具微不足道的改进。在这种情况下,我们实际上可以通过功能强大的网络来学习内存中两个插槽之间的任何关系。虽然我不知道DeepMind所建议的链接的具体细节,但他们在文章中暗示他们只是通过像常规神经网络一样反向传播梯度来学习所有内容。因此,从理论上讲,它们在链接中编码的任何关系都可以被神经网络学习,因此足够强大的“ super-LSTM”应该能够捕获它。

综上所述,在深度学习中通常会出现两个具有相同理论表达能力的模型在实践中表现出极大的差异。例如,考虑到循环网络可以表示为庞大的前馈网络,如果我们将其展开。同样,卷积网络也不比普通神经网络好,因为它具有一定的表达能力。实际上,对其重量施加的约束使其有效。因此,比较两个模型的表现力并不一定是它们在实践中的性能的公平比较,也不一定是它们可扩展性的准确预测。

我对DNC的一个疑问是当内存不足时会发生什么。当经典计算机的内存不足并请求另一个内存块时,程序开始崩溃(最好)。我很想知道DeepMind计划如何解决这个问题。我认为这将依赖于当前正在使用的内存的某些智能替代。从某种意义上说,当内存压力达到一定阈值时,当操作系统要求应用程序释放非关键内存时,计算机当前会执行此操作。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.