机器学习&深度学习优化算法

梯度下降算法

1.给定数据集X = {x^{(1)},x^{(2)},x^{(3)},...,x^{(n)}}, 数据标记为:Y = {y^{(1)},y^{(2)},y^{(3)},...,y^{(n)}}

   学习器:f(x;w) =w _{1}x _{1} + w _{2}x _{2} + w _{3}x _{3} + ... + w _{n}x _{n}, 学习率:\alpha

   for i = 0 : \infty

   {

        w_{i} = w_{i} + \alpha * 1/m \sum_{i=1}^{m}(y^{i} - f(x^{(i)};w)) * x^{(i)}

   } 

    2.批量梯度下降算法(BGD)

批量梯度下降算法又称之为最速梯度下降,这里的“批量”指的是全部一起处理的意思。

2.给定数据集X = {x^{(1)},x^{(2)},x^{(3)},...,x^{(n)}}, 数据标记为:Y = {y^{(1)},y^{(2)},y^{(3)},...,y^{(n)}}

   学习器:f(x;w) =w _{1}x _{1} + w _{2}x _{2} + w _{3}x _{3} + ... + w _{n}x _{n}, 学习率:\alpha

 for i = 0 : \infty

   {

        w_{i} = w_{i} + \alpha * 1/N \sum_{i=1}^{N}(y^{i} - f(x^{(i)};w)) * x_{i}^{(j)}

   } 

这里的 指的是样本数量。我们计算一次梯度时,需要计算完所有的数据的误差梯度,累加后再平均,这就是我们要找的最速下降梯度。也就类似于:“环顾四周”。

    当然,实物具有两面性,有点是准确,但是在如今大数据的时代,这就造成了巨大的计算困难。

    3.随机梯度下降算法(SGD)

2.给定数据集X = {x^{(1)},x^{(2)},x^{(3)},...,x^{(n)}}, 数据标记为:Y = {y^{(1)},y^{(2)},y^{(3)},...,y^{(n)}}

   学习器:f(x;w) =w _{1}x _{1} + w _{2}x _{2} + w _{3}x _{3} + ... + w _{n}x _{n}, 学习率:\alpha

 for i = 0 : \infty

   {

        随机选择一条数据x^{(j)};

        w_{i} = w_{i} + \alpha * (y^{(j)} - f(x^{(j)};w)) * x_{i}^{(j)};

   } 

  SGD最大的好处就是我们不需要考虑数据集的尺寸,我们看见一条数据就修改一条数据,我们的机器学习就可以边学习边工作,也就是现在流行的 在线学习(Online Learing)。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值