在之前的课程中我们提到了监督学习:
监督学习(Supervised Learning)-训练数据包括正确结果(标签label),我们为机器提供正确的分类。应用场景:人脸识别、语音诊断等
而线性回归则是监督学习的一种算法。
回归分析
什么是回归分析(Regression Analysis)?
研究自变量(或者预测变量)与因变量之间的关系。它根据数据,确定两种或两种以上变量间相互依赖的定量关系。
它可以在一堆数据中,对数据进行拟合:
拟合(Fitting)是统计学和机器学习中的一个重要概念,指的是通过一个数学模型来逼近或匹配观测数据的过程。拟合的目标是使模型能够在给定的数据集上尽可能地接近实际观测值,从而可以用模型来进行预测、推断或分析。
举一个简单的例子:在xy坐标轴上,把一个个点计算出一个趋势,画出一条最趋近于这些点的线。比如人口与房价的关系,医疗水平与人均寿命的关系等等。
↑看到点里那条神奇的线了嘛?
回归分析的分类
回归分析根据变量数可以分为
- 一元回归:y=f(x)
- 多元回归y=f(x1,x2,...,xn)
根据函数关系可以分为
- 线性回归:y=ax+b
- 非线性回归:y=ax²+bx+c
线性回归
根据刚才提到的,变量x和因变量y之间存在线性关系,表达式为y=ax+b
回归问题求解
假设房价为P、房子面积为A。为了预测110平米的房子卖150万是否合理,我们应该确定P和A之间的定量关系,也就是P=f(A)。而线性模型为y=ax+b,则我们的目标为:寻找合理的a和b。
how?
设x为变量,y是结果,y'是模型输出结果,则我们求a和b的目标变成了:y'尽可能接近y:
平方是因为可能有负数出现。
后续的计算需要除以m且求导,因此原式上加入1/2m,这个公式就是损失函数HMSE,也就是MSE均方误差函数的一半(把2去了就是MSE)。
公式有了,接下来我们需要将a和b代入进公式,也就是求下面的J:
梯度下降法
通过向函数上当前点对应梯度(或者近似梯度)的反方向规定步长距离点进行迭代搜索,直到在极小点收敛。