线性回归

线性回归

原理推导

根据特征预测结果,找一条最合适的线来拟合数据。

拟合的平面(\(\theta_0\) 是偏置项):\(h_{\theta}(x)=\theta_{0}+\theta_{1}x_{1}+\theta_{2}x_{2}\)

\(x_0=1\) \(\rightarrow x_0\cdot\theta_0=\theta_0\) 整合得:\(h_\theta(x)=\sum_{i=0}^{n}\theta_ix_i=\theta^{T}x\)

误差

真实值与预测值之间得误差用 \(\varepsilon\) 表示,对于每个样本:

\[y^{(i)}=\theta^{T}x^{(i)}+\varepsilon^{(i)}\tag{1} \]

\(\varepsilon^{(i)}\) 是独立且具有相同的分布,并且服从均值为0方差为 \(\theta^{2}\) 的高斯分布。

​​📐​​高斯分布概率密度函数:

\[f(x)=\frac{1}{\sqrt{2\pi}\sigma}\mathrm{exp}\left(-\frac{(x-\mu)^{2}}{2\sigma^{2}}\right) \]

误差服从高斯分布:

\[p(\epsilon^{(i)})=\frac{1}{\sqrt{2\pi}\sigma}\mathrm{exp}\left(-\frac{(\epsilon^{(i)})^{2}}{2\sigma^{2}}\right)\tag{2} \]

将(1)代入(2)得:

\[p(y^{(i)}|x^{(i)};\theta)=\frac{1}{\sqrt{2\pi}\sigma}\mathrm{exp}\left(-\frac{\left(y^{(i)}-\theta^{T}x^{(i)}\right)^{2}}{2\sigma^{2}}\right) \]

\(\theta\)\(x^{(i)}\) 组合的预测值接近真实值 \(y^{(i)}\) 的概率越高越好。

似然函数:

\[L(\theta)=\prod_{i=1}^{m}p(y^{(i)}|x^{(i)};\theta)=\prod_{i=1}^{m}\frac{1}{\sqrt[]{2\pi}\sigma}\mathrm{exp}\left(-\frac{\left(y^{(i)}-\theta^{T}x^{(i)}\right)^{2}}{2\sigma^{2}}\right) \]

​​📐极大似然估计的意义:刻画参数 \(\theta\) 与数据的匹配程度。

  • 联合概率密度等于边缘概率密度的乘积。

📌图解联合概率密度、边缘概率密度、条件概率密度之间的关系

累乘求结果太难,取对数转换为求和。

对数似然函数:

\[\log_{}{L(\theta)}=\log_{}{\prod_{i=1}^{m}\frac{1}{\sqrt[]{2\pi}\sigma}\mathrm{exp}\left(-\frac{\left(y^{(i)}-\theta^{T}x^{(i)}\right)^{2}}{2\sigma^{2}}\right)} \]

下图截自统计计算:似然函数
img

展开化简:

\[\begin{split} &\sum_{i=1}^{m}\mathrm{log_{}{\frac{1}{\sqrt{2\pi}\sigma}}}\mathrm{exp}\left(-\frac{\left(y^{(i)}-\theta^{T}x^{(i)}\right)^{2}}{2\sigma^{2}}\right)\\ &=m\mathrm{log_{}{\frac{1}{\sqrt{2\pi}\sigma}}}-\frac{1}{\sigma^{2}}\cdot\frac{1}{2}\sum_{i=1}^{m}(y^{(i)}-\theta^{T}x^{(i)})^{2} \end{split}\]

目的是让概率越大越好,减号前是常数,减号后的值恒正,值越小越好。

步骤如下:

  1. 目标函数/损失函数/loss function(最小二乘法):

\[\begin{split} J(\theta)&=\frac{1}{2}\sum_{i=1}^{m}(y^{(i)}-\theta^{T}x^{(i)})^{2}\\ &=\frac{1}{2}\sum_{i=1}^{m}\left(h_\theta(x^{(i)})-y^{(i)}\right)^{2}\\ &=\frac{1}{2}(X\theta-Y)^{T}(X\theta-Y) \end{split}\]

其中 \(h_\theta(x^{(i)})=X\theta\)\(m\times 1\) 的向量,\(\theta\)\(n\times1\) 的向量,\(X\)\(m\times n\) 的矩阵,\(Y\)\(m\times 1\) 向量。\(m\) 代表样本的个数,\(n\) 代表样本的特征数。
2. 对 \(\theta\) 求偏导:

\[\begin{split} \frac{\partial}{\partial\theta}J(\theta)&=\frac{\partial}{\partial\theta}\left(\frac{1}{2}(X\theta-Y)^{T}(X\theta-Y)\right)\\ &=\frac{\partial}{\partial\theta}\left(\frac{1}{2}(\theta^{T}X^{T}-Y^{T})(X\theta-Y)\right)\\ &=\frac{\partial}{\partial\theta}\left(\frac{1}{2}(\theta^{T}X^{T}X\theta-\theta^{T}X^{T}Y-Y^{T}X\theta+Y^{T}Y)\right)\\ &=\frac{1}{2}\left(2X^{T}X\theta-X^{T}Y-(Y^{T}X)^{T}\right)\\ &=X^{T}X\theta-X^{T}Y\\ &=X^{T}(X\theta-Y) \end{split}\]

  1. 设偏导 \(\frac{\partial}{\partial\theta}J(\theta)=0\) 取极值,整理得:

    \[\theta=(X^{T}X)^{-1}X^{T}Y \]

下图转自多项式最小二乘法拟合的python代码实现
img

posted @ 2023-04-19 21:19  青衫扶夕  阅读(32)  评论(0)    收藏  举报