单变量线性回归模型

1.模型描述

拟合函数
\(h_{\theta}(x)=\theta_{0}+\theta_{1} x\)
\(x=(x^{(1)},x^{(2)}...x^{(m)})\)训练集
\(h=(h^{(1)},h^{(2)}...h^{(m)})\)训练集
共m个样本

参数

\(\theta_{0}\)是回归系数
\(\theta_{1}\)是常数项,均是未知的
在线性模型中,就是找到一个样本\((x^(i),y^(i))\)得到最近接真实值的参数\(a\)\(b\),进而得到线性模型

代价函数/损失函数

参考知乎
预测值与实际值差的平方和的最小值
取值才能让这条直线最佳地拟合这些数据呢?这就是代价函数登场的时刻了
\(J\left(\theta_{0}, \theta_{1}\right)=\frac{1}{2 m} \sum_{i=1}^{m}\left(\hat{y}_{i}-y_{i}\right)^{2}=\frac{1}{2 m} \sum_{i=1}^{m}\left(h_{\theta}\left(x_{i}\right)-y_{i}\right)^{2}\)
这就是一次函数的代价函数 \(J\left(\theta_{0}, \theta_{1}\right)\)。看到这个复杂的函数有没有头很晕的感觉呢?没关系,让我们一步步来分析这个函数。判断拟合的这个函数是否准确就是判断通过这个函数的出来的结果与实际结果有多大的误差:
\(\left(h_{\theta}\left(x_{i}\right)-y_{i}\right)^{2}\)
i 为第 i 个数据,上式表示我通过拟合函数 \(h_{\theta}(x)\)得到的第 i 个数据与真实的第 i 个数据的误差。总共有 m 个数据,那么我们就应该把 m 个数据的误差求和然后再求出平均误差,得到下面这个式子。
\(\frac{1}{2 m} \sum_{i=1}^{m}\left(h_{\theta}\left(x_{i}\right)-y_{i}\right)^{2}\)
只要我让这个值尽可能的小,我所做的拟合函数就越准确,那么刚才求拟合函数的问题就转化成了通过 \(θ_0\)\(θ_1\)求$ \(J\left(\theta_{0}, \theta_{1}\right)\)的最小值。
如果有人比较懒,不希望每次都要我亲自处理这些数据,从代价函数图中找到最小值所在的点。有没有一种算法可以自动地求出使得代价函数最小的点呢?有,那就是梯度下降
后面介绍

猜你喜欢

转载自www.cnblogs.com/gaowenxingxing/p/12228942.html