深度学习基础_常见优化器

反向传播算法

反向传播算法是一种高效计算数据流图中梯度的技术

每一层的导数都是后一层的导数与前一层输出之积,这正是链式法则的奇妙之处,误差反向传播算法利用的正是这一特点。

前馈时,从输入开始,逐一计算每个隐含层的输出,直到输出层。然后开始计算导数,并从输出层经各隐含层逐一反向传播。

为了减少计算量,还需对所有已完成计算的元素进行复用。这便是反向传播算法名称的由来。

常见的优化函数

优化器(optimizer)是编译模型的所需的两个参数之一。可以先实例化一个优化器对象,然后将它传入model.compile(),或者可以通过名称来调用优化器。在后一种情况下,将使用优化器的默认参数。

SGD:随机梯度下降优化器

随机梯度下降优化器SGD和min-batch是同一个意思,抽取m个小批量(独立同分布)样本,通过计算他们平梯度均值。

RMSProp优化器

RMSProp被证明有效且实用的深度学习网络优化算法.

RMSProp增加了一个衰减系数来控制历史信息的获取多少,

RMSProp会对学习率进行衰减。

Adam优化器:

Adam算法可以看做是修正后的Momentum+ RMSProp算法.

Adam通常被认为对超参数的选择相当鲁棒,学习率建议为0.001

设置优化器的学习速率

model.compile(optimizer=tf.keras.optimizer.Adam(learning_rate=0.01),
							loss='categorical_crossentropy',
							metrics=['acc'])

你可能感兴趣的:(深度学习,深度学习)