前言
最近准备开始学习机器学习,后续将对学习内容进行记录,该文主要针对线性回归中涉及得数学公式推导以及算法的理解进行记录!一、线性回归是什么?
线性回归试图学得一个线性模型以尽可能准确地预测实值输出标记。
二、数学推导
1.问题引入
银行贷款会根据需要贷款人的工资和年龄进行额度的确定,这里给定5个数据样本如下图
那么我们最终拟合所得线性模型应为 f(x)=w1x1+w2x2+b,
其中w1可以理解工资这个特征对于最终额度的影响,w2可以理解年龄这个特诊对于最终额度的影响,b可以理解为偏置项(即实际额度可能有小额的偏差)
2.数学推导
对于参数给出相关定义
其中
θ
0
\theta_0
θ0为偏置系数,与数据无关,影响较小;
θ
1
\theta_1
θ1与
θ
2
\theta_2
θ2为权重系数,与数据有关,影响较大。
h
θ
(
x
)
=
∑
i
=
0
n
θ
i
x
i
=
θ
0
x
0
+
θ
1
x
1
+
θ
2
x
2
h_\theta(x)=\sum_{i=0}^n\theta_ix_i=\theta_0x_0+\theta_1x_1+\theta_2x_2
hθ(x)=∑i=0nθixi=θ0x0+θ1x1+θ2x2
那么
x
0
x_0
x0如何理解呢?可以为每一个样本引入一个新特征
x
0
x_0
x0,每个样本满足该特征
x
0
=
1
x_0=1
x0=1,
这样就可以将拟合的平面函数转化成矩阵操作
h
θ
(
x
)
=
∑
i
=
0
n
θ
i
x
i
=
θ
0
x
0
+
θ
1
x
1
+
θ
2
x
2
=
θ
T
x
h_\theta(x)=\sum_{i=0}^n\theta_ix_i=\theta_0x_0+\theta_1x_1+\theta_2x_2=\mathbb{\theta^Tx}
hθ(x)=∑i=0nθixi=θ0x0+θ1x1+θ2x2=θTx
3.误差说明
1.为什么误差服从高斯分布?
可通过中心极限定理的另一种解释得到。受多种独立因素影响的随机变量,是服从正态分布的。而误差都是有多种独立(无相互影响)的误差源,因此,误差近似为正态分布。
2.如何理解独立?
样本与样本之间无关,算法同等对待每个样本
3.如何理解同分布?
每一个样本使用的算法确定且一致
3.推导
1.假设
ϵ
\epsilon
ϵ~
N
(
0
,
σ
2
)
N(0,\sigma^2)
N(0,σ2)可得式(2)
2.将(1)代入(2)后得到的式子可理解为真实存在的
y
y
y在不同
θ
\theta
θ取值下,出现的概率
3.极大似然函数就是去找到参数估计值,使得前面已经实现的样本值发生概率最大。因为你手头上的样本已经实现了,其发生概率最大才符合逻辑。(利用已知的样本结果,反推最有可能导致这样结果的参数值)
4.这时是求样本所有观测的联合概率最大化(每个真实存在的
y
y
y在不同
θ
\theta
θ取值下,出现概率最大),是个连乘积,只要取对数,就变成了线性加总。此时通过对参数求导数,并令一阶导数为零,就可以通过解方程(组),得到最大似然估计值。
5.通过化简后可知当
J
(
θ
)
J(\theta)
J(θ)函数最小时,似然函数取极大
6.目标函数转化为矩阵的操作,读者可根据矩阵具体的行列进行推导
假设一共有5个样本,3个特征,那么
X
X
X为53矩阵,
θ
\theta
θ为31矩阵,
y
y
y为5*1矩阵,可根据矩阵维度帮助理解目标函数转为矩阵操作
7.所用到矩阵求导公式:
d
y
d
x
=
d
(
X
T
A
X
)
d
X
=
2
A
X
\frac{dy}{dx}=\frac{d(X^TAX)}{dX}=2AX
dxdy=dXd(XTAX)=2AX
d
y
d
x
=
d
(
A
X
)
d
X
=
A
T
\frac{dy}{dx}=\frac{d(AX)}{dX}=A^T
dxdy=dXd(AX)=AT
d
y
d
x
=
d
(
X
A
)
d
X
=
A
\frac{dy}{dx}=\frac{d(XA)}{dX}=A
dxdy=dXd(XA)=A
R
2
R^2
R2越接近1,模型效果越棒
总结
未完待续!