机器学习基石线性回归
Posted 桃陉
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了机器学习基石线性回归相关的知识,希望对你有一定的参考价值。
写在前面
本节主要介绍了线性回归原理以及它的可行性,最后与前面学过的线性分类进行了对比分析。
1. 线性回归问题
∙
\\bullet
∙ 引入
:我们假设现在有些用户已经申请到了信用卡,但是银行决定给他们发放多少钱。此时返回的结果就是一个实数区间。
∙
\\bullet
∙ 实现
:
▹ \\triangleright ▹ 现在我们有用户的信息,包括以下内容:年龄、年收入、工作年龄、当前负债。
▹ \\triangleright ▹ 我们还是像(二)中感知机模型提到的一样,为每一个维度分配一个权重,然后求得总和,最后在减去一个偏差(阈值)。为了优化,把这个偏差放到了第0维度。(具体实现看机器学习基石二中第一块内容)
所以当有d个维度时,自变量
x
=
(
x
0
,
x
1
,
.
.
.
x
d
)
x=(x_{0},x_{1},...x_{d})
x=(x0,x1,...xd),返回值
y
≈
∑
i
=
0
d
w
i
x
i
y≈\\sum_{i=0}^{d}w_{i}x_{i}
y≈i=0∑dwixi
线性回归假设:
h
(
x
)
=
w
T
x
h(x)=w^{T}x
h(x)=wTx
(它很像感知机模型,但是感知机模型最终求的是符号)
▹
\\triangleright
▹ 当
x
x
x 只有一个维度或者两个维度时,做出来的直线如下:
对于一维、二维的
x
x
x 来说,线性回归最终要找到的就是误差最小的直线以及平面。每个点到直线或者平面的竖直距离就是该点的误差。
▹
\\triangleright
▹ 计算误差的方法:最小二乘法。我们求解误差的平方和对应的权重,对于单点来说就是:
e
r
r
(
y
^
,
y
)
=
(
y
^
−
y
)
2
err(\\hat{y},y )=(\\hat{y}-y)^{2}
err(y^,y)=(y^−y)2
对于样本数据来说,计算方法为(选择对应误差最小的一组权重值):
E
i
n
(
w
)
=
1
N
∑
n
=
1
N
(
w
T
x
n
−
y
n
)
2
E_{in}(w)=\\frac{1}{N} \\sum_{n=1}^{N}(w^{T}x_{n}-y_{n})^{2}
Ein(w)=N1n=1∑N(wTxn−yn)2
对于整体数据来说,计算方法为(整体数据对应的误差结果):
E
o
u
t
(
w
)
=
ε
(
x
,
y
)
∼
P
(
w
T
x
−
y
)
2
E_{out}(w)= \\underset{(x,y)\\sim P}{\\varepsilon} (w^{T}x-y)^{2}
Eout(w)=(x,y)∼Pε(wTx−y)2
我们接下来需要实现的就是如何找到较小的 E i n ( w ) E_{in}(w) Ein(w)。
2. 求解最小的 E i n ( w ) E_{in}(w) Ein(w) 对应的 w w w
∙
\\bullet
∙上面我们已经得到了
E
i
n
(
w
)
E_{in}(w)
Ein(w) 的计算方法,接着我们对其进行转换:
E
i
n
(
w
)
=
1
N
∑
n
=
1
N
(
w
T
x
n
−
y
n
)
2
=
1
N
∑
n
=
1
N
(
x
n
T
w
−
y
n
)
2
=
1
N
∥
x
1
T
w
−
y
1
x
2
T
w
−
y
2
.
.
.
x
n
T
w
−
y
n
∥
2
=
1
N
∥
[
−
x
1
T
−
−
x
2
T
−
−
.
.
.
−
−
x
N
T
−
]
w
−
[
y
1
y
2
.
.
.
y
N
]
∥
2
=
1
N
∥
X
⏟
N
×
d
+
1
w
⏟
d
+
1
×
1
−
y
⏟
N
×
1
∥
\\begin{matrix} E_{in}(w)&= &\\frac{1}{N} \\sum_{n=1}^{N}(w^{T}x_{n}-y_{n})^{2}= &\\frac{1}{N} \\sum_{n=1}^{N}(x_{n}^{T}w-y_{n})^{2} \\\\ & = & \\frac{1}{N}\\begin{Vmatrix} x_{1}^{T}w-y_{1} \\\\ x_{2}^{T}w-y_{2}\\\\ ...\\\\ x_{n}^{T}w-y_{n} \\end{Vmatrix}^{2} & \\\\ & = &\\frac{1}{N}\\begin{Vmatrix} \\begin{bmatrix} -& x_{1}^{T} & -\\\\ -& x_{2}^{T} & - \\\\ -& ... & -\\\\ -& x_{N}^{T} & - \\end{bmatrix}w-\\begin{bmatrix} y_{1}\\\\ y_{2} \\\\ ...\\\\ y_{N} \\end{bmatrix} \\end{Vmatrix}^{2} & \\\\ & = & \\frac{1}{N}\\left \\| \\underset{N×d+1}{\\underbrace{X} } \\underset{d+1×1}{\\underbrace{w} } -\\underset{N×1}{\\underbrace{y} } \\right \\| & \\end{matrix}
Ein(w)====N1∑n=1N(wTxn−yn)2=N1∥∥∥∥∥∥∥∥x1Tw−y1x2Tw−y2...x《机器学习基石》---线性回归