在对模型进行编译(Compile)的过程中,要选择并指定优化器。优化器决定模型如何根据其看到的数据和自身的损失函数对模型参数进行更新,以最小化损失函数。Keras中的优化器有:
那么,该如何选择呢?首先,Keras的优化器可以分为:
在大多数情况下,Adam 是自适应优化器中最好的,无脑选择Adam,没问题。使用Adam这种自适应优化器,还不需要关心学习率的问题。
使用SGD只有在机器学习专家,能手动设计出良好的学习率退火策略(learning rate annealing schedule),效果才能超过Adam。