训练神经网络一定要用反向传播吗?

训练神经网络一定要用反向传播吗?

  • 发布时间:2021-11-01 07:00
  • 访问量:

【概要描述】反馈对齐不同于反向传播,不需要在前向后向过程中使用同样的权重矩阵进行信号传播,甚至可以并行计算更新权重,在训练神经网络方面同样取得了堪比反向传播的性能和结果。本文将对反馈对齐的相关概念进行讲解,并介绍该领域近期的发展。

训练神经网络一定要用反向传播吗?

【概要描述】反馈对齐不同于反向传播,不需要在前向后向过程中使用同样的权重矩阵进行信号传播,甚至可以并行计算更新权重,在训练神经网络方面同样取得了堪比反向传播的性能和结果。本文将对反馈对齐的相关概念进行讲解,并介绍该领域近期的发展。

  • 分类:研究院
  • 作者:
  • 来源:
  • 发布时间:2021-11-01 07:00
  • 访问量:
详情

摘要

 

在深度学习领域,反向传播几乎统治了神经网络的训练;但它需要大规模求导以及序列执行误差的反向传递,且同一权重矩阵需要同时参与前向和反向运算,更新前一层权重不仅需要误差信息,还需要传递下一层权重信息(又称“权重运输”),这些不符合神经生物学的要求和约束引发了学者们的关注和思考。反馈对齐(feedback alignment)作为不需要权重运输的典型算法,在训练神经网络方面同样取得了堪比反向传播的性能和结果。本文将对反馈对齐相关概念进行讲解,并介绍该领域近期的发展。

 

引言

 

大脑通过数层相互连接的神经元来传递和处理信息,这些神经元需要调整相应的突触行为以令最终输出适用于所需任务。受此启发,人工智能研究者们设计出了各种深度神经网络(DNN)结构来模拟这种信号传递与处理机制,不断发掘深度架构在信息表征方面的潜力。反向传播(Back-Propagation,BP)是训练DNN的常用手段,相比于输入信号通过DNN一层层传递至最终输出的“前向过程”,BP则通过针对具体任务目标而定义的损失函数对当前输出进行评价,将输出误差反方向地一层层从后向前传递,将误差与当前层权重矩阵相乘并以此来更新上一层神经元的权重,从而在不断迭代更新中令DNN的输出越来越接近人们期望的结果。在现今深度学习的一些主流代码框架中(例如TensorFlow,PyTorch等),BP都是DNN的标配,开发者甚至都不需要再手动定义BP的具体操作细节,只需给相应的优化器,调整一下学习率等参数,整个训练流程就可以自动流畅的执行。

在AI界对BP越来越习以为常的同时,BP的实现过程和执行逻辑同样持续地受到一些学者的关注、思考甚至质疑[1,2]。他们认为生物体的神经信号传递具有一定的局部性,即某特定组件(例如神经元或突触)的行为仅受那些与自己有实质接触的相邻组件的影响。前向过程中,神经突触是不变的,传递的仅仅是信号;但反向过程中,按照BP的逻辑,整个网络需要不断传递下游神经元的权重信息以更新上游神经元,这个数据量往往远超信号本身。大脑是单向地传递信息,所以不同于计算机可以直接读取正向权重将其转置再进行反向运算,大脑为了满足这种权重的输送,需要在反向通道中令神经突触保存相同权重信息,一旦更新需要确保两边同时更新。在网络结构很深的时候,一次反馈就需要遍历前向过程中经历过的全部神经突触权重信息,从神经生物学的角度来看这不是可靠或可信的实现方式。

对此,研究者们尝试了多种改进或者替代方案,例如用更接近人类学习方式的强化学习(Reinforcement Learning,RL)思路,或者简单粗暴地用较浅层次的网络来代替深度网络。RL对于奖励信号的依赖使得在网络变深尺寸变大的时候对稀疏信号处理困难,训练时收敛效果不如DNN;浅网络虽然便于训练,但失去了DNN优秀的表征能力,“更快并不意味着更好”。

 

反馈对齐

 

既然前向过程中神经突触不变,只传递信号不传递权重,反向过程能不能也如此?基于这样的思考,反馈对齐(Feedback Alignment,FA)应运而生[3]。FA的思路是,正向过程与反向过程分别是相互独立的权重体系,或者说可以理解为两条独立的神经突触的传递路径,正向传递输入信号,反向传递误差信号。如果用W代表前向过程的权重矩阵,那么BP反向计算时就是用W的转置来更新上一层权重,但FA则是用一个与W完全无关的随机矩阵B来更新上一层。如果用一个简单的浅层神经网络来描述,FA的网络设计可见图1。

 

图1:随机反馈矩阵B也可以传递有效信息帮助网络进行学习。a)反向传播时,底部反馈单元上的三色突触必须完全匹配前向过程中的对应颜色的权重,b)传统的BP结构,c)FA的网络结构,用B取代W的转置(来源:[3])

 

乍一看,这个设计非常反直觉:因为它简单到对B的取值几乎没有什么严格的要求——不仅不要求跟W匹配,也不要求服从什么指定的概率分布,随机生成就行。当然,为了满足矩阵运算要求,B的尺寸需要和W的转置相同。在训练时,B一旦随机初始化后就固定不变,仅仅通过每次前向过程计算出的e=y*-y乘以B的方式来传递误差信息,迭代更新权重W0。

当网络层数增加时,FA可以有多种不同的更新权重W的方式,见图2,其中从左到右分别为a)传统BP,b)普通FA,将误差信号一层层从后往前传递,c)Direct FA[4],将误差信号直接投射到前面的每一层中(即直接跟每一层对应的反馈矩阵Bi相乘)进行计算,d)Indirect FA,将误差信号投射回第一层,将其与相关输出向量进行运算后再按照前向传播的逻辑(乘以前向矩阵W)传递。

 

图2:BP和FA相关变体的网络结构比较。(来源:[4])

 

其中DFA尤其重要,因为它可以在得到前向过程的误差信号之后,直接并行计算反馈过程;如果每一层权重矩阵Wi的尺寸相同,反馈矩阵Bi甚至可以直接使用同一个矩阵B,进一步节省了参数量和存储空间。

被称为深度学习界的“Hello World”的MNIST手写数字识别数据集非常适合做这种简单模型的试金石,感兴趣的读者不妨按照如下设置亲自测试一下看看效果:相比于LeNet的“卷积+全连接层”的7层结构,我们简单粗暴地抛弃了卷积层,先将28x28的图片拉平,预处理成784维的列向量,然后用三层全连接层逐次降维到112、16、10(配合ReLU激活函数),最后用一个softmax函数输出每个数字对应的概率。与之呼应的,我们需要两个反馈矩阵(B1尺寸16x112,B2尺寸10x16),分别用[0,1]均匀分布进行随机初始化后固定,按照[4]中给出的公式对权重进行更新即可(这是唯一需要注意的地方,别习惯性地调用SGD或者Adam等优化器,FA不需要BP)。在试探性地选取了千分之一的学习率之后我们惊喜地发现,FA同样可以凭借如此简单的网络结构和反直觉的反馈矩阵将自己在测试集上的预测准确率推高到94%。参考代码如下:

 

说到这里,我们似乎仍未触及这个算法的灵魂:为什么叫“反馈对齐”,到底哪里“对齐”了?

 

算法细节

 

在衡量相似性(例如电商推荐系统中评价两个物品的相似度)时,常用的一个指标是余弦相似度,通过计算两个向量间夹角的余弦来判断。如果两者指向同一个方向(夹角为零)则相似度取最大值1,方向相反时取最小值-1,夹角为90°时相似度为0,数学上称为正交,或者可以理解为不相关。余弦相似性的计算方式是,向量A、B的点积除以A、B各自的模(向量长度)。所以,如果用向量余弦夹角的眼光来看待前向过程的权重W和后向反馈过程的权重B,会发生什么呢?

实验发现,一开始由于都是随机初始化,W和B的夹角接近 90°,类似正交,但神经网络很快就发现了该如何使用这些给定的B矩阵,并令W的更新也朝着B的方向靠近,夹角逐渐变小——W在主动地试图和B“对齐”!在这个过程中,FA的更新越来越接近BP,这种行为暗示了B实际扮演了类似于“W的转置”一样的角色。因为B是固定的,这种对齐效应明显由W的变化所引起。可见这种随机反馈权重B同样可以有效传输信号,检测特征信息,并且通过随机链接的方式在深度网络中传送误差。这种灵活性令FA模拟大脑行为更加可信,因为学习过程在误差被随机反馈权重无差别地广播传输到多层细胞的情况下仍然可以正常进行。FA令W像B在误差流形附近的局部伪逆矩阵。这个很重要,因为如果B是W的Moore-Penrose伪逆矩阵,神经网络本质就是在进行Gauss-Newton优化[3]。对数学证明和推导等更多细节感兴趣的读者可以参阅[3,4]。

回顾一下上节提到的相对另类的DFA:FA和BP因为依赖后面的网络层,所以一旦后续层饱和,前面层的更新就会变成或逼近0,但DFA仅仅依赖于误差e,只要e非零,DFA的更新项就可以非零。DFA和监督的逐层预训练的区别在于,如果所有层同时进行训练,驱动学习的是顶部(最后层)的误差,而非浅的预训练网络的误差。学习不应该是一个独立阶段,而应该是在前向传递之后的延伸。误差信号不是参与前向过程神经元的第二个信号,而是由其他神经元传播的独立信号。DFA对BP和FA提出了更多启发,即它们所提出的反向过程必须访问每个神经元的约束限制可以被移除。反馈路径和正向传播路径分离之后,学习过程仍然可以正常进行[4]。

对FA和DFA等进一步研究发现,训练过程往往分为两个阶段[5]:

1. 对齐(align)阶段:W和B的余弦相似度逐渐增加直至最大,此时测试误差进入瓶颈期。这一阶段FA模拟了BP关于W的权重的更新方式,但W完美对齐B的代价是失去了自己的表达能力。

2. 记忆(memorize)阶段:随着迭代次数的继续增加,W开始逐渐放弃和B的完美对齐,慢慢地向全局最优靠近并逐步恢复自己的表征能力——虽然此时W仍尽可能保留了和B的相似性(最大化FA梯度和BP梯度的“重叠”程度)。

对记忆阶段的研究则引出了“退化解”(degenerate solutions)的概念。我们知道对称函数常常具备一些不随数学转换而变化的优良特性,例如tanh函数,我们有tanh(z)= -tanh(-z)。那么考虑一个简单的两层神经网络,如果使用tanh作为激活函数,权重组合(忽略偏置bias){W1,W2}和{-W1,-W2}将对任意输入信号都具备同样的测试误差。如果以最小化测试误差作为学习目的,神经网络在学习过程中可能会最终收敛到上述组合并认为是不同的解,但它们本质相同,互为“退化解”,且退化解出现的概率随着网络层数增加而增加。传统方法,例如随机梯度下降SGD,就常常会在学习过程中根据初始条件而随机收敛到其中一个退化解,但以FA和DFA为例的方法则会在众多退化解(本质上是局部最优解)中选择跟反馈向量的相似度最大的那个解,消除或减弱了随机搜索中的退化效应[5]。图3左图对优化路径做了个简单示意,而右图则表明了相比于BP算法(例如SGD)在训练时的发散,FA/DFA等可以收敛到同一个区域(由反馈矩阵所决定)。研究者认为DFA相比于BP在实践中更加适合训练过参数化(over-parameterized)的神经网络,因为这些网络普遍具有很多退化解,而DFA可以帮助我们避开这些重复的坑。

 

图3:退化解与FA的优化路径(来源:[5])

 

总结和延伸

 

随着FA和DFA的深入研究,我们发现越来越多的领域可以应用这一训练技巧,而不必拘泥于主流的BP方法。例如在计算机视觉领域,除了相对简单的MNIST或者Cifar10这种图像数据集上的分类任务,DFA也成功运用在了NeRF模型中,进行复杂的三维物体渲染和图像合成任务(关于NeRF以及相关的神经渲染我们之前也做过多次介绍,感兴趣的读者可以参阅神经渲染最新进展与算法(一):语义图像合成神经渲染最新进展与算法(二):NeRF及其演化神经渲染中的特色深度计算特征)。在推荐系统、自然语言处理领域,以及图神经网络GNN这种非欧式结构的网络模型中,都有DFA活跃的身影[6],并且模型性能和效果堪比BP方法经过微调之后所能达到的程度。还有学者推出了基于PyTorch的FA相关代码框架[8,9],不仅支持用户自己定义FA逻辑下的网络结构,更是支持将已有的网络模型(例如经典的VGG,ResNet等)从BP逻辑直接一步转换成FA。该框架内置的多种FA实现方法跳出了BP的惯性思维,为大规模神经网络训练提供了不同的思路和视角,很有启发意义。

 

参考文献

 

[1] Stork, David G. "Is backpropagation biologically plausible." International Joint Conference on Neural Networks.Vol. 2. Washington, DC: IEEE, 1989.

[2] Mazzoni, Pietro, Richard A. Andersen, and Michael I. Jordan."A more biologically plausible learning rule for neural networks." Proceedings of the National Academy of Sciences 88.10(1991): 4433-4437.

[3] Lillicrap, Timothy P., et al. "Random synaptic feedback weights support error backpropagation for deep learning." Nature communications 7.1 (2016): 1-10.

[4] Nøkland, Arild. "Direct feedback alignment provides learning in deep neural networks." arXiv preprint arXiv:1609.01596 (2016).

[5] Refinetti, Maria, et al. "Align, then memorise: the dynamics of learning with feedback alignment." International Conference on Machine Learning. PMLR, 2021.

[6] Launay, Julien, et al. "Direct feedback alignment scales to modern deep learning tasks and architectures." arXiv preprint arXiv:2006.12878 (2020).

[7] Gilmer, Justin, et al. "Explaining the learning dynamics of direct feedback alignment." (2017).

[8] Sanfiz, Albert Jiménez, and Mohamed Akrout." Benchmarking the Accuracy and Robustness of Feedback Alignment Algorithms." arXiv preprint arXiv:2108.13446 (2021).

 

[9] Sanfiz, Albert Jiménez, [Source code]. https://github.com/jsalbert/biotorch

近期文章

壁仞科技研究院前沿技术文章精选

壁仞科技研究院前沿技术文章精选

在过去半年时间里,多模态模型蓬勃发展,NeRF相关研究依然活跃,更强的算力、更先进的架构、更灵活的软硬协同设计、以及更高效的并行算法也让巨型模型不断突破纪录。本文精选壁仞科技研究院在一些关键领域的文章,希望能够和大家一起学习进步。
2022-07-04
外部借力:Pluto助力MLIR编译器的多面体优化

外部借力:Pluto助力MLIR编译器的多面体优化

MLIR中关于多面体的设计重在表达,本文将基于最新的论文介绍在MLIR中引入多面体的优化工具,增强MLIR对多层循环的优化能力。
2022-06-20

联系我们

这是描述信息

招贤纳士

公众号二维码
这是描述信息

 版权所有   ©   上海壁仞科技有限公司   |    沪ICP备19047354号