Solver通过协调前向通道结果和反向通道导数来形成参数更新以控制模型优化。学习的任务由Solver和Net承担,Solver负责监督优化和形成参数更新;Net负责产生loss和gradient。
Caffe Solver有以下几种:
随机梯度下降法(Stochastic Gradient Descent,SGD)
AdaDelta
自适应梯度法(Adaptive Gradient, AdaGrad)
Adam
Nesterov加速梯度法(Nesterov’s Accelerated Gradient,NAG)
RMSprop
求解器:
1,构建起了优化过程的记录,并创建了训练网络用来学习和训练网络模型
2,通过调用前向和反向通道方法迭代地优化和更新参数
3,间歇性地评估测试网络
4,在优化过程中对模型和求解器状态进行快照
求解器在每次迭代过程中要进行:
1,调用网络的前向通道来计算输出和损失函数
2,调用反向通道来计算梯度
3,根据求解器方法,将梯度转化为参数的更新
4,根据学习速率,历史和所用方法更新求解器状态
方法
求解器方法就是求损失函数的全局最小值的方法。对于数据集D,最优化的目标是对于全数据集,损失函数平均值最小。
未完待续……