MuXinCG's Blog

Back

在这篇博客中,我们来讨论线性回归问题,笔者才疏学浅,如有出错,请读者多多指正。

线性回归的变量定义#

我们首先研究的线性回归问题,机器学习通俗上来讲,实际上是给定一个函数的输入和输出,让计算机来给我们人类这个函数到底是什么的一种方式。而机器学习又可以分为几类问题,其中当预测的目标变量为连续值时,称这类学习问题为回归问题,而线性表示机器学习研究的这个函数是线性函数。

为了更好地研究我们这门课的问题,我们可以先进行一些约定

  • 约定用x(i)x^{(i)}表示”输入”变量,也称作输入特征
  • 约定用y(i)y^{(i)}表示”输出”变量,也称作目标变量
  • 一对()()

我们学习的线性回归问题是一个监督学习问题,可以形式化表述为:给定一个训练集,目标是学习一个函数h:XYh:\mathcal{X} \mapsto \mathcal{Y},该函数能够对输出xx进行预测,使其输出h(x)h(x)与”很好地”预测相应的真实值yy

出于历史原因,函数hh被称为假设

概率解释#

为了研究如何求解线性回归算法的最优值解法,我们需要建立一个模型来推导出我们需要最小化什么来求解出最后的线性回归结果。这句话有些绕口,其实就是

假设输入变量和输出变量之间的关系可以通过以下方程进行建模

y(i)=θTx(i)+ϵ(i)y^{(i)} = \theta^Tx^{(i)} + \epsilon^{(i)}

此处ϵ(i)\epsilon^{(i)}表示一个误差项,它包含了模型中未建模的因素以及随固有的随机噪声。我们进一步假定这些

最小均方算法#

我们考虑一种搜索算法:该算法从对θ\theta的某个”初始猜测”开始,然后不断地调整θ\theta的值,使其沿着使J(θ)J(\theta)减小的方向移动,直到最终收敛到最小化J(θ)J(\theta)θ\theta值。具体而言,我们考虑使用梯度下降算法。该算法从某个初始的θ\theta值开始,并重复执行以下更新步骤

局部加权线性回归#

现在我们再来仔细思考一下线性回归,如果我们要拟合的函数不是一个线性的函数,那么我们的拟合效果会很差,比如

CS229 Machine Learning - Linear Regression
https://muxincg2004.github.io/blog/cs229-lecture1
Author Ziheng Zhang
Published at March 2, 2026