觉得有帮助请点赞关注收藏~~~
一、优化算法
1)Adam算法: 基于一阶或二阶动量(Moments)的随机梯度下降算法,动量是非负超参数,主要作用是调整方向梯度下降并抑制波动。此算法适用于数据量和参数规模较大的场合。
(2)SGD算法: 动量梯度下降算法。
(3)Adagrad算法: 学习率与参数更新频率相关。
(4)Adamax算法:Adam算法的扩展型,词嵌入运算有时优于Adam算法。
(5)Ftrl算法:谷歌发明的算法,适用于大稀疏特征空间的场合。
(6)Nadam算法: 基于Adam算法,使用Nesterov动量。
(7)RMSprop算法:基于梯度平方均值。
(8)Adadelta算法:使用随机梯度下降算法和自适应学习率,避免训练过程中学习率持续劣化以及手动设定问题。
二、损失计算
Tensorflow的keras.losses库中定义了各种损失值得运算类,下面重点介绍常用的几种
(1)CategoricalCrossentropy类: 计算标签和预测值之间的交叉熵损失(Crossentropy Loss)。
(2)SparseCategoricalCrossentropy类: 原理与CategoricalCrossentropy类似。比较适用于有两个及以上标签类别的场景,如果运算基于独热表示标签,更适合使用CategoricalCr