深度学习(Deep Learning)读书思考四:模型训练优化

本文探讨了深度学习模型的优化挑战,包括病态条件数、局部最小值、鞍点等问题,以及优化算法如SGD、Momentum、Nesterov Momentum和自适应学习率算法。此外,还介绍了批量正则化和其他优化策略,帮助解决梯度爆炸、长依赖问题等优化难题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

概述

机器学习应用包括模型构建、求解和评估,对于深度模型而言也是类似,根据之前的介绍可以构建自己的深度神经网络结构。相对于一般的优化问题,深度模型更难优化,本节主要介绍深度学习模型优化挑战、优化算法以及优化策略等。

  1. 深度学习模型优化挑战
  2. 深度学习优化算法
  3. 深度学习中的特殊策略

另外,关于更多数值优化技术可以参考。数值优化技术

深度学习优化挑战

机器学习优化问题

深度学习模型是机器学习模型中一类一种,而一般机器学习优化问题相对于纯优化问题,主要有以下不同:

经验风险最小化

机器学习中优化的终极目标是模型参数能够拟合全部数据,即

min  J(θ)=E(x,y) p(data)L(f(x;θ),y)
然而在大多数情况下,无法获取全部的训练数据或者不知道样本x的分布,因此

机器学习优化问题转化为优化问题采用最简单的思路就是,让模型去更好拟合训练数据。

min  J(θ)=E(x,y) p˜(data)L(f(x;θ),y)
该过程也称之为 经验风险最小化。

替代损失函数

有时为了更好的进行模型优化,常常不直接对损失建模,而是采用更容易优化的目标函数进行替代,例如对于0-1损失问题,不是直接采用最小化0-1损失,而是采用sigmoid函数。

minibatch优化算法

minibatch算法是指在优化 J(θ) 的过程中,每次随机选择m个训练样本进行优化,直到达到最优。
该方法在机器学习模型优化中常常被采用,主要原因有:

  1. 采用批量或者全量样本进行优化,能够得到准确的梯度,但不是线性关系。例如每次训练时喂入10000个样本和每次100个样本,虽然有100倍关系,但是准确度只能提升大概10倍左右。
  2. 采用minibatch方法可以更方便并行,处理更大的样本集合。
  3. 能够起到正则化的左右

另外需要注意的是:minibatch算法最好要求每次喂入算法的样本都是随机选择的。

深度学习模型的挑战

病态条件数

Ill-Conditioning 主要指训练过程中,目标函数值发生抖动,而不是一直下降。通过将目标函数进行二次泰勒展开可以看到学习率对梯度的影响,即每次梯度更新受以下因素影响

12ϵ2gTHgϵg
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值