Gradient descend 梯度下降
属于优化一种算法
机器学习的核心,其实是数学的最优解问题,这是一种思考方式,任何的问题都能被分解为寻求最优解的过程
原理: 一般来说,监督学习中,都会有loss function(cost func),目标是 minimize loss func() , 那如何求解呢.一般地这个loss function在几何空间中,是一个曲面,那就会有极值(合局最小,局部最小),但你不知道它在哪里.梯度算法的策略就是先随机初始化一个点,然后求解这的梯度,然后沿着梯度反方向,走一步,这个步子的大小有讲究,太大容易在关键时候跨过最低点,形成振荡现象,收敛不了;那太小呢,收敛速度变以缓慢. 那每走一步,都是通过迭代处理一个数据点,直至变化率为0.
算法的step:
注意的点:
- 在运行前,要先standard特征features, otherwise,极值难以收敛,出现振荡的现象
优点:
缺点:
参考资料:
<https://mp.weixin.qq.com/s?__biz=MjM5MTQzNzU2NA==∣=2651651978&idx=1&sn=aa8b93d0d330e084c23792d97806cb7e&chksm=bd4dd8198a3a510f20e6d5e5f94812135b18517068e8278740dc19a91e3f726c50c2c4a04c6d&mpshare=1&scene=24&srcid=0806FXnrjKJyjniZ9tkcPwxu&key=767377dd47054524a4cb60f7ffc7ec2a44276c4825faa8bb51fb2c1ceabda3e09faab4ec9892bdedb2fde0a0c868fccbc2a996064f5ae1908c20b2f7692379fbfd2a6aabbe519ec203208c11d421fefd&ascene=0&uin=MTQyNDMwNjIyMA%3D%3D&devicetype=iMac+MacBookPro13%2C1+OSX+OSX+10.12.5+build(16F73)&version=12020810&nettype=WIFI&fontScale=100&pass_ticket=MIFdrhBvQqQIE08gaY2ioayd2Ct%2FT9Hnd2sooS6si66j37jPSAzK%2F7x%2FcsglHjrK>;