Layer-Wise Training和Backpropagation有何本质区别

谢邀 ==
【Layer-Wise Training和Backpropagation有何本质区别】 简单说下我知道的,就是layer-by-layer在理论和应用上都差点儿。。
Deep learning without poor local minima 那篇文章
它在对data和label都有要求的的前提下主要证明的是deep linear network的极小值性质没有激活函数的全连网络(deep linear network)跟现在常用的网络还是差很多了证明的结论是局部极小都是全局最小,以及没有完全平滑的saddle point经验工作表明,网络训练难度来自于大量的saddle point(平滑区域)。而这里的证明并不能降低训练的难度,证明解的存在性,离找到解也是差很多了。最好也只能说,只要能找到一个局部最小,那就足够好了,可找到它是很难的。layer-by-layer training一直有人在做,会不会成气候不知道,我个人觉的难
它方法上可以看成一个大体量的对nonconvex的block coordinate descent,理论上来说,我知道的只有收敛到一阶critical point的global convergence结果。也可以看成是多block的ADMM,收敛结果更弱。至于会不会收敛到局部最小,还是个open question在每一次迭代中,对被选到的局部参数,需要用至少一定精确度的子问题的解去更新,才能达到最终全局收敛的结果。那对神经网络来说,可能需要同时选择参与优化的样本和参与优化的参数层,实际效果可能不会很好实际应用上,神经网络因为结构的叠加,需要优化的目标函数和一般的非凸函数还是很不一样的。对传统结构的神经网络,优化到后期,前置层的梯度会非常小。就是说,如果用layer-by-layer的方式,越到训练后期,很多层提供的改进会越小,但是每一次训练的复杂度是相对一样的。如果用saddle point来理解,到后期,每次所做的局部更新,可能只是在一个无法提供下降方向的空间里折腾。。使用layer-by-layer的好处可能就是,每次迭代只用更新很小一部分的参数,计算复杂度相对更新全部的参数会低很多。但是,现在的软硬件技术已经可以足够高效的同时训练所有参数,再加上batch normalization,res-net这样的大杀器,梯度更新已经是非常有效的了说到底,还是要看效果说话的,不论是理论还是实际应用。。


    推荐阅读