斯坦福机器学习公开课--整理笔记(…

来源:互联网 发布:mac自带解压软件 编辑:程序博客网 时间:2024/06/08 00:43
跟老板聊了很久之后,决定换一个研究方向,本来想专门写一篇博文说说数据挖掘与机器学习,后来转念也想也算了,毕竟之前还是有很多可以用上的知识,这几天准备把Andrew大牛的机器学习公开课重新刷一遍,简单做一下笔记好了。

第一课是基本介绍,略过。

第二课:监督学习应用.梯度下降:
这节课主要探究的是监督学习的最优化,即给定输入特征向量X,标准输出Y,要求用一个线性函数h(x)来拟合中间的处理过程,使得(h(X)-Y)的平方最小。下面的h(x)是要拟合的函数,J(Θ)损失函数,Θ是参数,要迭代求解的值,Θ求解出来了那最终要拟合的函数h(Θ)就出来了。其中m是训练集的记录条数,j是参数的个数。
斯坦福机器学习公开课--整理笔记(1)
由此引出两种梯度下降算法:
一、批量梯度下降:
基本思想如下图,相当于是一个下山的过程,每次迈一步,向最陡峭(梯度最大)的方向迈步,那么可以确保每次都是向着最低点走(当然不一定是全局最低,但一般情况下可以视为只有一个最低点,即局部最低=全局最低)
斯坦福机器学习公开课--整理笔记(1)
具体公式如下
(1)将J(Θ)对Θ求偏导,得到每个Θ对应的的梯度
斯坦福机器学习公开课--整理笔记(1)
(2)由于是要最小化风险函数,所以按每个参数Θ的梯度负方向,来更新每个Θ
斯坦福机器学习公开课--整理笔记(1)
(3)多次迭代反复更新参数Θ,直到收敛。另外,有时候会在迭代更新时引入一个系数,即第(2)步中写成α/m,引入的α可以有效控制每次迭代的步长,α过大,可能在迭代过程中错过最优值,α过小,迭代过程就会很漫长。


二、随机梯度下降:
批量梯度下降虽然可以确保迭代的收敛,但由于每次均需要用到整个训练集,因此如果训练样本过大,就不宜用此方法。此时可以使用随机梯度下降。基本思路和批量梯度下降大致相同,唯一区别在于,每次对Θ值更新时,只是用一个样本,即对于上面(2)中的公式,去掉1/m和累加符号即可,这样只需要遍历样本集一次即可,但缺点在于无法确保得到全局最优值,整个遍历过程如下图,会走各种弯路斯坦福机器学习公开课--整理笔记(1)

三、最小二乘法:
这个涉及极其庞大的数学推理过程,具体可以百度或者再刷视频,这里就不贴出来了,好吧,其实我也没看太懂,先记下结论好了

阅读全文
0 0
原创粉丝点击