吴恩达机器学习第二章

算法一:线性回归

1.建立一元线性回归模型:

给出一组训练集:

m:为训练集的数据项个数

x:为输入,是自变量

y:为输出,是因变量

h(x):给出训练集通过一些算法可以得到一个函数 ,输入一个x就可以得到接近真实数值的y

而机器学习的目的就在于找到这个一元线性函数h(x)=kx+b,找到最合适的k和b

2.找到代价函数或称平方误差函数

在求一个函数的系数的时候,即h(x)=kx+b,找到最合适的k和b,就需要找其应用的约束条件,由于计算出的函数值h(x)应该与训练集中x对应的真实值y越接近越好,所h(x)-y越小越好,所以首先应该取训练集所有预测值和真实值的差的平方的和,故这是带有k和b参数的表达式,可以称为代价函数J(k,b),在其函数值最小时,即预测和真实值最接近时,取得的k,b即为函数系数

3.保留一个参数的代价函数J(k)

 

训练集为{1,1}{2,2}{3,3}

4.保留两个参数的代价函数J(k,b)

高度即z轴的数值最小的点就是代价函数值最小的点

5.寻找代价函数值最小值的方法:梯度下降法

 

初始值:J(k1=0,k2=0...kn=0)

特点:选择下山最小路径时,越是在顶部越容易差生较大的差距 

梯度下降法公式如下

1. 公式a:=b,是将b赋值给a的意思,下降梯度公式如上

2.  k1,k2要同步更新,因为如果有一个数值变了,另一个对J(k1,k2)求偏导就会有偏差

3.初始化位置:

假设只考虑一个参数,上半部分图是初始化点在最低点右侧时,对函数求导数也就是初始化的一点的导数为正的,所以参数k是逐渐减小的,当初始化一点是在最小值左边时如下半部分图,初始化一点的导师为负数,那么参数k是逐渐增加的,因此初始化时要在最小值的右侧部分

4. 学习速率的大小

学习速率太小时,下降的慢,学习速率太大时可能错过最低点反而使参数值升高 

5.局部最优点

此时这个点的导数为0,参数继续减小时导数为负数反而增加,所以这个点是局部最优点

6.梯度下降法的好处

例如此函数,初始化的k越大,导数越大,根据公式可知J(k)下降越快,粒度越粗,逐渐的函数图像变得平缓,导数也减小,J(k)下降的越慢,粒度越来越细,当导数为0时,即使最低点,J(k)最小的点

 

6.平方误差函数和梯度下降法的结合

结合之前的平方误差公式,把J(k,b)带入梯度下降公式,求出偏导:

最终得到公式:

在此基础上建立假设函数和多个参数的代价函数的模型

 

中心位置即为全集最优解 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值