【机器学习300问】10、学习率设置过大或过小对训练有何影响?

在上一篇文章中,首次出现了学习率这个词,在这篇文章中我会详细介绍一下它是什么,到底对机器学习的训练有着怎样的影响。

一、学习率是什么?

先来复习一下梯度下降算法,在每次迭代过程中,算法计算目标函数关于当前参数值的梯度(即函数在该点的斜率或方向导数向量),然后沿着梯度的反方向移动一定的步长。更新规则可以表示为:

其中:

  • θ 表示模型参数。
  • η是学习率,决定了每一步沿梯度方向调整参数的幅度。
  • ∇f(θ) 是目标函数 f 关于参数 θ 的梯度。

学习率就是这里所说的步长,它是一个超参数,用于控制我们在梯度下降过程中每步的跳跃大小。也就是在每次梯度下降更新参数(如线性回归的权重和偏置)的时候,学习率决定了我们沿着负梯度方向走的步长。直观理解,就像你在山上往下走,而你的目标是走到山谷(函数最小值),每一步你到底能走多远,就是由学习率决定的。

超参数是指区别于机器学习最终要学到的模型参数而言的另一种参数。学习率这样的种超参数是由人工来设定的,那么就存在到底要设置多少合适的问题。

二、学习率设置过大或过小会对训练产生怎样的影响

(1)学习率设置过小

如果学习率太低,那么可能它需要非常多的迭代才能找到最低点。而且如果在遇到了下面这种情况,他还会陷入局部最小值而无法找到全局的最低点。
要很久才能找到最小值
陷入了局部最小值

(2)学习率设置过大

如果学习率设置得过大,那么在更新权重和偏置时,每一步可能会"跳过"最优解,也就是说,每一步修改的幅度过大,可能会错过最小的损失值。在图像中,表现为来回震荡并且可能导致发散,模型无法收敛,即使能收敛也需要非常多的时间。
左图会花很多时间 右图无法收敛

相关推荐
liruiqiang058 分钟前
线性模型 - Logistic 回归
人工智能·机器学习·数据挖掘·回归
lqqjuly2 小时前
人工智能驱动的自动驾驶:技术解析与发展趋势
人工智能·机器学习·自动驾驶
thinkMoreAndDoMore2 小时前
深度学习(2)-深度学习关键网络架构
人工智能·深度学习·机器学习
山海青风2 小时前
从零开始玩转TensorFlow:小明的机器学习故事 1
人工智能·机器学习·tensorflow
陈无左耳、3 小时前
HarmonyOS学习第2天: 解锁语言与框架的无限可能
学习·华为·harmonyos
orion-orion3 小时前
学习理论:预测器-拒绝器多分类弃权学习
机器学习·统计学习·学习理论
B站计算机毕业设计超人3 小时前
计算机毕业设计hadoop+spark旅游景点推荐 旅游推荐系统 旅游可视化 旅游爬虫 景区客流量预测 旅游大数据 大数据毕业设计
大数据·hadoop·爬虫·深度学习·机器学习·数据可视化·推荐算法
朝九晚五ฺ3 小时前
【Linux探索学习】第三十弹——线程互斥与同步(上):深入理解线程保证安全的机制
linux·运维·学习
柃歌3 小时前
【UCB CS 61B SP24】Lecture 5 - Lists 3: DLLists and Arrays学习笔记
java·数据结构·笔记·学习·算法
大数据追光猿3 小时前
【深度学习】Pytorch的深入理解和研究
人工智能·pytorch·python·深度学习·机器学习·ai编程