线性回归
算法概述
一个例子
数据:工资和年龄(2个特征)
目标:预测银行会贷款给我多少钱(标签)
考虑:工资和年龄都会影响最终银行贷款的结果那么它们各自有多大的影响呢?(参数)
工资 | 年龄 | 额度 |
---|---|---|
4000 | 25 | 20000 |
4000 | 25 | 20000 |
4000 | 25 | 20000 |
4000 | 25 | 20000 |
通俗解释
X1,X2就是我们的两个特征(工资,年龄)Y是银行最终会贷款借给我们多少钱
找到最合适的一条线(想象出一个高维)来最好的拟合我们的数据点
数学来了
假设
θ
1
\theta_1
θ1是年龄的参数,
θ
2
\theta_2
θ2是工资的参数
拟合的平面:
h
θ
(
x
)
=
θ
0
+
θ
1
x
1
+
θ
2
x
2
h_{\theta }(x)=\theta _{0}+\theta_{1}x_{1}+\theta_{2}x_{2}
hθ(x)=θ0+θ1x1+θ2x2,其中
θ
0
\theta _{0}
θ0是偏置项
写成矩阵:
h
θ
(
x
)
=
∑
i
=
0
n
θ
i
x
i
=
θ
T
x
h_{\theta}(x)=\sum_{i= 0}^{n}\theta_{i}x_{i}=\theta^Tx
hθ(x)=∑i=0nθixi=θTx
误差项分析
真实值和预测值之间肯定是存在差异的(用
ε
\varepsilon
ε来表示该误差)
那么对于每个样本来说:
y
(
i
)
=
θ
T
x
(
i
)
+
ε
(
i
)
y^{(i)}=\theta^{T}x^{(i)}+\varepsilon ^{(i)}
y(i)=θTx(i)+ε(i)
误差
ε
(
i
)
\varepsilon^{(i)}
ε(i)是独立并且具有相同分布,并且服从均值为0,方差为
θ
2
\theta^{2}
θ2的高斯分布。
那么什么叫独立同呢?
独立:假设张三和李四不认识,银行借给张三多少钱和借给李四多少钱他们俩之间没有任何关系,所有的人来了都要根据各自的指标进行评估,银行行长贷款和普通人贷款,不能因为行长就多贷,普通人就少贷款,他们之间没有任何关系,算法会同等的对待每一个样本,每一个样本之间是没有任何关系的。简单来说 就是张三和李四一起来贷款,他们之间没关系
同分布:张三和李四都是去相同的银行,如果张三去的是农业银行,李四去的是中国银行,他们去的银行不一样,不同的银行数据是不一样的,混在一起指标不一样没法预测,同样的分布才可以预测。简单来说 他俩都必须来我们假定的一家银行。
高斯分布:银行可能会多给,也可能会少给,但是绝大多情况下,这个浮动不会太大,极小情况下浮动会比较大,符合正常情况。
预测值与误差:
y
(
i
)
=
θ
T
x
(
i
)
+
ε
(
i
)
y^{(i)}=\theta^{T}x^{(i)}+\varepsilon ^{(i)}
y(i)=θTx(i)+ε(i)(1)
由于误差服从高斯分布:
p
(
ε
(
i
)
)
=
1
2
π
σ
e
x
p
(
−
(
ε
(
i
)
)
2
2
σ
2
)
p(\varepsilon ^{(i)})=\frac{1}{\sqrt{2\pi }\sigma }exp(-\frac{(\varepsilon^{(i)})^2}{2\sigma ^{2}})
p(ε(i))=2πσ1exp(−2σ2(ε(i))2)(2)
将(1)式带入(2)式:
p
(
y
(
i
)
∣
x
i
;
θ
)
=
1
2
π
σ
e
x
p
(
−
(
y
i
−
θ
T
x
(
i
)
)
2
2
σ
2
)
p(y^{(i)}|x^{i};\theta)=\frac{1}{\sqrt{2\pi }\sigma }exp(-\frac{(y^{i}-\theta^{T}x^{(i)})^2}{2\sigma ^{2}})
p(y(i)∣xi;θ)=2πσ1exp(−2σ2(yi−θTx(i))2)
似然函数求解(最小二乘)
似然函数:
L
(
θ
)
=
∏
m
i
=
1
p
(
y
(
i
)
∣
x
i
;
θ
)
=
∏
m
i
=
1
1
2
π
σ
e
x
p
(
−
(
y
i
−
θ
T
x
(
i
)
)
2
2
σ
2
)
L(\theta)=\prod_{m}^{i=1}p(y^{(i)}|x^{i};\theta)=\prod_{m}^{i=1}\frac{1}{\sqrt{2\pi }\sigma }exp(-\frac{(y^{i}-\theta^{T}x^{(i)})^2}{2\sigma ^{2}})
L(θ)=∏mi=1p(y(i)∣xi;θ)=∏mi=12πσ1exp(−2σ2(yi−θTx(i))2)
解释:什么样的参数跟我们的数据组合后恰好是真实值
对数似然:
l
o
g
L
(
θ
)
=
l
o
g
∏
m
i
=
1
1
2
π
σ
e
x
p
(
−
(
y
i
−
θ
T
x
(
i
)
)
2
2
σ
2
)
logL(\theta)=log\prod_{m}^{i=1}\frac{1}{\sqrt{2\pi }\sigma }exp(-\frac{(y^{i}-\theta^{T}x^{(i)})^2}{2\sigma ^{2}})
logL(θ)=log∏mi=12πσ1exp(−2σ2(yi−θTx(i))2)
解释:乘法难解,加法就容易了,对数里面乘法可以转换加法
展开化简:
∑
i
=
1
m
l
o
g
1
2
π
σ
e
x
p
(
−
(
y
i
−
θ
T
x
(
i
)
)
2
2
σ
2
)
=
m
l
o
g
1
2
π
σ
−
1
σ
2
⋅
1
2
∑
i
=
1
m
(
y
(
i
)
−
θ
(
i
)
)
2
\sum_{i=1}^{m}log\frac{1}{\sqrt{2\pi }\sigma }exp(-\frac{(y^{i}-\theta^{T}x^{(i)})^2}{2\sigma ^{2}}) =mlog\frac{1}{\sqrt{2\pi }\sigma }-\frac{1}{\sigma ^{2}}\cdot \frac{1}{2}\sum_{i=1}^{m}(y^{(i)}-\theta^{(i)})^{2}
∑i=1mlog2πσ1exp(−2σ2(yi−θTx(i))2)=mlog2πσ1−σ21⋅21∑i=1m(y(i)−θ(i))2
目标:让似然函数越大越好
J
(
θ
)
=
1
2
∑
i
=
1
m
(
y
(
i
)
−
θ
(
i
)
)
2
J(\theta)=\frac{1}{2}\sum_{i=1}^{m}(y^{(i)}-\theta^{(i)})^{2}
J(θ)=21∑i=1m(y(i)−θ(i))2(最小二乘法)
目标函数推导
目标函数:
J
(
θ
)
=
1
2
∑
i
=
1
m
(
y
(
i
)
−
θ
(
i
)
)
2
=
1
2
(
X
θ
−
y
)
T
(
X
θ
−
y
)
J(\theta)=\frac{1}{2}\sum_{i=1}^{m}(y^{(i)}-\theta^{(i)})^{2}=\frac{1}{2}(X\theta-y)^{T}(X\theta-y)
J(θ)=21∑i=1m(y(i)−θ(i))2=21(Xθ−y)T(Xθ−y)
求偏导:
▽
θ
J
(
θ
)
=
▽
θ
(
1
2
(
X
θ
−
y
)
T
(
X
θ
−
y
)
)
=
▽
θ
(
1
2
(
θ
T
X
T
−
y
T
)
(
X
θ
−
y
)
)
\bigtriangledown _{\theta}J(\theta)=\bigtriangledown _{\theta}(\frac{1}{2}(X\theta-y)^{T}(X\theta-y))=\bigtriangledown _{\theta}\left ( \frac{1}{2}(\theta^{T}X^{T}-y^{T})(X\theta-y) \right )
▽θJ(θ)=▽θ(21(Xθ−y)T(Xθ−y))=▽θ(21(θTXT−yT)(Xθ−y))
=
▽
θ
(
1
2
(
θ
T
X
T
X
θ
−
θ
T
X
T
y
−
y
T
X
θ
+
y
T
y
)
)
=\bigtriangledown _{\theta}\left ( \frac{1}{2}(\theta^{T}X^{T}X\theta-\theta^{T}X^{T}y-y^{T}X\theta+y^{T}y) \right )
=▽θ(21(θTXTXθ−θTXTy−yTXθ+yTy))
=
1
2
(
2
X
T
X
θ
−
X
T
y
−
(
y
T
X
)
T
)
=
X
T
X
θ
−
X
T
y
=\frac{1}{2}(2X^{T}X\theta-X^{T}y-(y^{T}X)^{T})=X^{T}X\theta-X^{T}y
=21(2XTXθ−XTy−(yTX)T)=XTXθ−XTy
偏导数为0:
θ
=
(
X
T
X
)
−
1
X
T
y
\theta=(X^{T}X)^{-1}X^{T}y
θ=(XTX)−1XTy
评估方法
最常用的评估项
R
2
R^{2}
R2:
1
−
∑
i
=
1
m
(
y
^
i
−
y
i
)
2
∑
i
=
1
m
(
y
i
−
y
ˉ
)
2
1-\frac{\sum_{i=1}^{m}(\hat{y}_{i}-y_{i})^{2}}{\sum_{i=1}^{m}(y_{i}-\bar{y})^{2}}
1−∑i=1m(yi−yˉ)2∑i=1m(y^i−yi)2
分子是残差平方和,分母类似方差项
我们认为
R
2
R^{2}
R2的取值越接近1我们认为模型拟合的越好