- 主题:对于MSE这样单纯的凸函数,判断前进方向一定要用梯度么?
对于MSE这样单纯的凸函数,使用梯度下降法,通过对函数上的一点求导来决定前进方向。
直观来说,假设不求导(不计算梯度),在起始点之后,随机往左或往右滑动θ一次,
再求MSE的大小与起始点对比,不也能决定前进方向么?
那为什么还要使用梯度呢?比如说是因为高维情况的效率么?
这个问题我一直没想明白。
//bow~
--
FROM 124.202.17.*
参数多了随机滑的话有可能一万次你也滑不出比起始点小
--
FROM 223.104.175.*
嗯,确实是出于计算效率的考虑吧。。
假设有10k个参数,假设随机蒙对的概率为0.5,那么每迭代一次就要多耗费5k次运算。
能这么理解吧?
另外,梯度法可以根据梯度变化动态调整学习率,
不过我不知道是不是所有库(sklearn、tf等)都支持动态调整。
【 在 cutepie 的大作中提到: 】
: 参数多了随机滑的话有可能一万次你也滑不出比起始点小
--
FROM 124.202.17.*
不能这么算,他们是乘法关系,不是加法关系
【 在 i00i 的大作中提到: 】
: 嗯,确实是出于计算效率的考虑吧。。
: 假设有10k个参数,假设随机蒙对的概率为0.5,那么每迭代一次就要多耗费5k次运算。
: 能这么理解吧?
: ...................
--
FROM 223.104.175.*
好的,多谢提醒噢。
【 在 cutepie 的大作中提到: 】
: 不能这么算,他们是乘法关系,不是加法关系
--
FROM 124.202.17.*