传统的机器学习方法或多或少都有线性回归模型的影子:
- 线性模型往往不能很好地拟合数据,因此有三种方案克服这一劣势:
a. 对特征的维数进行变换,例如多项式回归模型就是在线性特征的基础上加入高次项。
b. 在线性方程后面加入一个非线性变换,即引入一个非线性的激活函数,典型的有线性分类模型如感知机。
c. 对于一致的线性系数,我们进行多次变换,这样同一个特征不仅仅被单个系数影响,例如多层感知机(深度前馈网络)。- 线性回归在整个样本空间都是线性的,我们修改这个限制,在不同区域引入不同的线性或非线性,例如线性样条回归和决策树模型。
- 线性回归中使用了所有的样本,但是对数据预先进行加工学习的效果可能更好(所谓的维数灾难,高维度数据更难学习),例如 PCA 算法和流形学习。
作者:tsyw
链接:线性回归 · 语雀 (yuque.com)
{
频率派
→
统计机器学习
→
线性回归
f
(
ω
,
b
)
=
ω
T
x
+
b
x
∈
R
p
{
线性
↛
{
属性非线性
:
特征转换
(
多项式回归
)
全局非线性
:
线性分类
(
激活函数是非线性的
,
如感知机
)
系数非线性
:
神经网络
全局性
↛
线性样条回归
,
决策树
数据未加工
↛
P
C
A
,
流形
贝叶斯派
→
概率图模型
\left\{
线性回归
⇒
降维
激活函数
线性分类
{
硬输出
,
y
∈
{
0
,
1
}
{
线性判别分析
感知机
软输出
,
p
(
y
=
1
)
=
p
/
1
−
p
{
生成式
:
高斯判别分析
判别式
:
逻辑回归
线性回归 \overset{激活函数}{\underset{降维}{\Rightarrow }}线性分类\left\{
感知机模型为
f
(
x
)
=
s
i
g
n
(
ω
T
x
)
,
x
∈
R
p
,
ω
∈
R
p
f(x)=sign(\omega^{T}x),x \in \mathbb{R}^{p},\omega \in \mathbb{R}^{p}
f(x)=sign(ωTx),x∈Rp,ω∈Rp
其中激活函数为
s
i
g
n
(
a
)
=
{
+
1
a
≥
0
−
1
a
<
0
sign(a)=\left\{
通过激活函数
s
i
g
n
sign
sign就可以把线性回归的结果映射到两个分类结果上了
如果定义随时函数为错误分类的数目,即
L
(
ω
)
=
∑
i
=
1
N
I
{
y
i
ω
T
x
i
<
0
}
L(\omega)=\sum\limits_{i=1}^{N}I \left\{y_{i}\omega^{T}x_{i}<0\right\}
L(ω)=i=1∑NI{yiωTxi<0}
显然该函数是不可导的,因此定义
L
(
ω
)
=
∑
x
i
∈
D
−
y
i
ω
T
x
i
L(\omega)=\sum\limits_{x_{i}\in D}^{}-y_{i}\omega^{T}x_{i}
L(ω)=xi∈D∑−yiωTxi
其中
D
D
D为错误分类的集合,每次更新
ω
\omega
ω采用梯度下降的算法,上式对
ω
\omega
ω的梯度为
∇
ω
L
=
∑
x
i
∈
D
−
y
i
x
i
\nabla_{\omega}L=\sum\limits_{x_{i}\in D}^{}-y_{i}x_{i}
∇ωL=xi∈D∑−yixi
CSDN话题挑战赛第2期
参赛话题:学习笔记