吴恩达机器学习笔记(二)

一、 模型描述

提供训练集,学习算法的任务是输出一个函数,通常用 h 表示,h 表示假设函数 hypothesis

假设函数的作用是给定输入变量 x ,输出相应的预测值 yh 是一个引导 x 得到 y 的函数
在这里插入图片描述

二、代价函数

1.平方误差代价函数

在线性回归中,我们要解决的是一个最小化问题,我们希望 h(x)y 之间的差异要小
( h ( x ) i − y i ) 2 (h(x)^i - y^i)^2 (h(x)iyi)2
对所有的训练样本进行求和(m代表训练集的样本数)
∑ i = 1 m ( h ( x ) i − y i ) 2 \sum^{m}_{i = 1}{(h(x)^i - y^i)^2} i=1m(h(x)iyi)2
为了使公式更直白,我们计算
1 2 m ∑ i = 1 m ( h ( x ) i − y i ) 2 \frac{1}{2m}\sum^{m}_{i = 1}{(h(x)^i - y^i)^2} 2m1i=1m(h(x)iyi)2
因此,代价函数记为
J ( θ 1 , θ 2 ) = 1 2 m ∑ i = 1 m ( h ( x ) i − y i ) 2 J(\theta1,\theta2) = \frac{1}{2m}\sum^{m}_{i = 1}{(h(x)^i - y^i)^2} J(θ1,θ2)=2m1i=1m(h(x)iyi)2
我们的优化目标是 m i n i m i z e θ 1 , θ 2 J ( θ 1 , θ 2 ) minimize_{\theta1,\theta2}J(\theta1,\theta2) minimizeθ1,θ2J(θ1,θ2)在这里插入图片描述
2.令参数2=0
θ = 1 \theta = 1 θ=1时, J ( θ ) = J ( 1 ) = 0 J(\theta) = J(1) = 0 J(θ)=J(1)=0
在这里插入图片描述
θ = 0.5 \theta = 0.5 θ=0.5时, J ( θ ) = J ( 0.5 ) = 0.58 J(\theta) = J(0.5) = 0.58 J(θ)=J(0.5)=0.58
在这里插入图片描述
θ = 0 \theta = 0 θ=0时, J ( θ ) = J ( 0 ) = 2.3 J(\theta) = J(0) = 2.3 J(θ)=J(0)=2.3
在这里插入图片描述
经过一系列数值的计算,我们最终会得到函数 J ( θ ) J(\theta) J(θ)的形状
在这里插入图片描述
3.使用两个参数
代价函数会变为三维曲线
在这里插入图片描述
用等高线来表示,每一条等高线上的点对应的 J ( θ 0 , θ 1 ) J(\theta0,\theta1) J(θ0,θ1)都相等,最小值在中心原点处,距离原点越近,拟合越好
在这里插入图片描述

三、梯度下降法——可以将代价函数最小化

梯度下降是很常用的算法,它不仅被用在线性回归上,还被广泛用于机器学习的众多领域
1.思路:

  • 给定 θ 0 \theta_0 θ0 θ 1 \theta_1 θ1的初始值,通常将 θ 0 \theta_0 θ0 θ 1 \theta_1 θ1均设为0
  • 我们在梯度下降算法中要做的是不停地一点点改变 θ 0 \theta_0 θ0 θ 1 \theta_1 θ1,来使 J ( θ 0 , θ 1 ) J(\theta_0,\theta_1) J(θ0,θ1)变小
  • 直到我们找到 J J J的最小值或者局部最小值

2.特点: 从不同的起点出发,将有可能获得不同的局部最优解
在这里插入图片描述
3.数学定义
repeat until convergence(重复计算直至收敛){
θ j : = θ j − α ∂ ∂ θ j J ( θ 0 , θ 1 ) / / f o r j = 0 a n d j = 1 , 同 时 更 新 θ 0 和 θ 1 \theta_j := \theta_j - \alpha\frac{\partial}{\partial\theta_j}J(\theta_0,\theta_1) // for j = 0 and j = 1,同时更新\theta_0和\theta_1 θj:=θjαθjJ(θ0,θ1)//forj=0andj=1θ0θ1
}
在这里插入图片描述4.线性回归的梯度下降
在这里插入图片描述在这里插入图片描述
上式利用了简单的求导公式
在这里插入图片描述
该算法也叫做Batch梯度下降算法:每一步梯度下降,我们都遍历了整个训练集的样本,所以在梯度下降中,当计算偏导数时,我们计算总和。在每一个单独的梯度下降我们最终计算 m 个训练样本的总和,

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值