TensorFlow 梯度下降算法
训练神经网络时,参数的初始值会很大程度影响最后得到的结果,只有当损失函数为凸函数时,梯度下降算法才能保证达到全局最优解。
优化点
参数初始值对结果影响很大,随机初始化
bacth梯度下降
设置学习率:太大参数容易摇摆,太小大大降低优化速度;
正则化
L1正则、L2正则、也可以同时使用。,刻画模型复杂度,表示所有参数,包括权重和偏置。一般来说模型复杂度只有权重决定。
TensorFlow中有两种方式来写,第一种如下,这样的方式可能导致损失函数loss的定义很长,可读性差易出错。TensorFlow提供了集合来解决这个问题。
滑动平均模型
在采用随机梯度下降法训练模型时,使用滑动平均模型在很多应用中都可以一定程度提高最终模型在测试数据上的表现。滑动平均值,是对参数的更新做一个改进。
总结
神经网络的结构(隐层、**函数)对最终模型有本质性的影响;第二重要的是正则化损失函数;