(早期)神经网络通常使用随机初始化和标准的梯度下降法来训练,但是效果不好,这是由于非线性激活层饱和(虽然有时能够自己走出饱和区域)。
目前已经通过良好的初始化和一些训练策略取得了较好的训练效果。
尤其是无监督的预训练(目前来看已经是标准的初始化操作),可能的原因是由于无监督的预训练相当于正则化矩阵,将参数设为更加容易收敛的状态。
但是目前我们致力于分析是什么样的原因使得训练多层深度网络变差。
无限数据集训练,(怎样制作数据集暂时省略)。
训练细节,设置网络层数为1-5层,代价函数为似然对数函数,-log(y,x),x是输入图片,y是目标类别。通过随机梯度下降法训练,mini-batch = 10,设置初始偏执为0,每一层的权重为服从如下的分布:n为前一层w的列数。
设置不同的激活函数:
1、sigmod:最佳深度为四层,下图为激活层输出。