Hinton 最新研究:神经网络的未来是前向-前向算法( 四 )


Hinton 最新研究:神经网络的未来是前向-前向算法
文章图片
图2:在抖动MNIST上训练的网络第一个隐藏层中100个神经元的局部域 , 类标签显示在每张图像前10个像素中
使用FF模拟自上而下的感知效应目前 , 所有图像分类案例都使用了一次学习一层的前馈神经网络 , 这意味着在后面层中学到的东西不会影响前面层的学习 。 这与反向传播相比似乎是个主要弱点 , 克服这种明显限制的关键是 , 将静态图像视为相当无聊的视频 , 由多层递归神经网络处理 。
FF对正数据和负数据都在时间上向前运行 , 但每层活动向量由上一层和下一层在前一个time-steps的归一化活动向量确定(图3) 。 对这种方法是否有效进行初步检查 , 可以使用由静态MNIST图像组成的“视频”输入 , 该图像在每个时间帧中简单重复 , 底层是像素图像 , 顶层是数字类的N个表征之一 , 有两个或三个中间层 , 每层有2000个神经元 。
在初步实验中 , 循环网络运行了10个time-steps , 每个time-steps的偶数层根据奇数层的标准化活动进行更新 , 奇数层根据新的标准化活动更新 , 其交替更新旨在避免双相振荡 , 但目前似乎并不需要:在有一点阻尼的情况下 , 基于前一个time-steps归一化状态 , 所有隐藏层的同步更新学习效果略好 , 这对不规则架构而言是有益的 。 因此 , 该处实验使用了同步更新 , 新的预归一化状态被设置为上个预归一化状态的0.3 , 加上了计算新状态的0.7 。
Hinton 最新研究:神经网络的未来是前向-前向算法
文章图片
图3:用于处理视频的循环网络
如图3 , 网络在MNIST上训练60个epochs , 对每个图像的隐藏层通过一次自下而上传递进行初始化 。
此后 , 网络运行8次带有阻尼的同步迭代 , 通过对10个标签中的每个标签运行8次迭代 , 并选择在第3到5次迭代中平均优度最高的标签来评估网络的测试数据性能 , 测试误差为1.31% 。 负数据通过网络一次前向传递以获得所有类别的概率 , 根据概率按比例在不正确的类别间进行选择生成 , 从而提高训练效率 。
使用空间上下文的预测循环网络中 , 其目标是令正数据的上层输入和下层的输入间保持良好的一致性 , 而负数据的一致性不好 。 具有空间局部连通性的网络中具备一个理想的属性:自上而下的输入将由图像更大的区域决定 , 并且有更多处理阶段的结果 , 因此它可以被视为对图像的上下文预测 , 也即是基于图像局部域自下而上的输入所应产出的结果 。
如果输入随时间变化 , 自上而下的输入会基于较旧的输入数据 , 因此必须学习预测自下而上输入的表征 。 当我们反转目标函数的符号 , 并针对正数据进行低平方活动 , 自上而下的输入应学会抵消正数据的自下而上输入 , 这样看来与预测编码十分相似 。 层规范化意味着即使取消工作得很好 , 大量信息也会被发送到下一层 , 如果所有预测误差都很小 , 则会被归一化放大 。
使用上下文预测作为局部特征并提取教学信号学习的想法长期存在 , 但难点在于 , 如何在使用空间上下文、而非单侧时间上下文的神经网络中工作 。 使用自上而下和自下而上输入的共识作为自上而下和自下而上权重的教学信号 , 这种方法明显会导致崩溃 , 而使用其他图像的上下文预测来创建负数对的问题也没有完全解决 。 其中 , 使用负数据而不是任何负内部表征似乎是关键 。
CIFAR-10数据集测试Hinton接着在CIFAR?10数据集上测试了FF算法的性能 , 证明了FF训练出的网络在性能上能够媲美反向传播 。