文章目录
线性回归
目的
找到一个线性函数,尽可能地准确预测实值输出标记。
f
(
x
)
=
ω
x
+
b
f(x)=\omega x+ b
f(x)=ωx+b
于是我们需要找的合适的
ω
\omega
ω与
b
b
b。
优化问题
我们需要借助性能指标之一——损失函数。
值得一提的是,损失函数既可以作为模型的评价指标,也可以作为模型的优化工具。前者应用在测试集与验证集,后者应用在训练集。
此处采用的损失函数为均方误差(MSE)。
E
(
f
(
x
)
;
D
)
=
∑
i
=
1
m
(
y
i
−
f
(
x
i
)
)
2
E(f(x);D)=\sum_{i=1}^m(y_i - f(x_i))^2
E(f(x);D)=i=1∑m(yi−f(xi))2
我们的目的是为了让损失函数较小,则此时转化为了无约束的最优化问题。我们采用求导的方式,得到参数,这也被称为最小二乘法。
矩阵推导:
线性模型的特点
1.形式简单,易于建模;
2.可解释性强;
3.非线性模型的基础;
4.对异常点鲁棒性差。
线性的含义
线性并不指对输入变量的线性,而是对空间参数的线性。即
ω
\omega
ω是线性的。
对于输入来说,完全可以先对其进行非线性变化,再进行线性组合。
Logistic回归(广义线性回归的特例)
这完成的是一个分类问题。
流程为:
1.预测函数;
2.阈值判定/概率最大值。
分类问题的核心就是确定并优化这个预测函数。
Logistic分布
设X是连续型随机变量,X~Logistic指的是X具有一下分布函数和密度函数。
F
(
x
)
=
P
(
X
≤
x
)
=
1
1
+
e
−
(
x
−
μ
)
γ
F(x)=P(X\le x)=\frac{1}{1+e^{\frac{-(x-\mu)}{\gamma}}}
F(x)=P(X≤x)=1+eγ−(x−μ)1
f
(
x
)
=
e
−
(
x
−
μ
)
γ
γ
(
1
+
e
−
(
x
−
μ
)
γ
)
2
f(x)=\frac{e^{\frac{-(x-\mu)}{\gamma}}}{\gamma(1+e^{\frac{-(x-\mu)}{\gamma}})^2}
f(x)=γ(1+eγ−(x−μ))2eγ−(x−μ)
其分布函数又称为Sigmoid函数。是一条S型的曲线。
该分布与正态分布类似,样本集中于均值附近。
Logistic回归模型
将Logistic分布函数作为条件概率,简称为logistic函数。(
μ
=
0
,
γ
=
1
\mu=0,\gamma=1
μ=0,γ=1)
选择这个函数的原因可能只是单纯地性质好。
P
(
Y
=
1
∣
x
)
=
e
x
p
(
ω
x
+
b
)
1
+
e
x
p
(
ω
x
+
b
)
P(Y=1|x)=\frac{exp(\omega x+b)}{1+exp(\omega x+b)}
P(Y=1∣x)=1+exp(ωx+b)exp(ωx+b)
P
(
Y
=
0
∣
x
)
=
1
1
+
e
x
p
(
ω
x
+
b
)
P(Y=0|x)=\frac{1}{1+exp(\omega x+ b)}
P(Y=0∣x)=1+exp(ωx+b)1
为了比较x的类别取值,我们希望得到一个判别函数,于是将两者作比值,
p
1
−
p
\frac{p}{1-p}
1−pp,称为Y=1的几率。
几率越大,该事件发生的概率越大。
进一步化简,将几率对数化,就是logit函数:
l
o
g
i
t
(
p
)
=
l
o
g
p
1
−
p
=
ω
x
+
b
logit(p)=log\frac{p}{1-p}=\omega x+b
logit(p)=log1−pp=ωx+b
震惊:输入Y=1的对数几率是输入x的线性函数!分类的判别函数与回归的函数一致!
优化问题
我们采用的是极大似然法来估计模型的参数。
即损失函数是负对数似然函数。
该最优化问题采用梯度下降法或牛顿法求解。
优点
1.无需实现假设数据分布;
2.可得到类别的近似概率预测;
3.可直接应用现有数值优化算法求取最优解。
线性判别分析LDA(Linear Discriminant Analysis)
LDA也可视为一种监督降维技术。也称为Fisher判别法。
思想
1.使同类样例的投影点尽可能接近,可以让同类样例投影点的协方差近可能小。
2.欲使异类样例的投影点尽可能远离,可以让类中心之间的距离尽可能大。
投影的位置是一条直线。
需要用到的变量
假设投影到一条直线(数轴)上。
直线为一维空间。
含义 | 符号 |
---|---|
第i类示例的集合 | X i X_i Xi |
第i类示例的均值向量 | μ i \mu_i μi |
第i类示例的协方差矩阵 | ∑ i \sum_i ∑i |
两类样本的中心在直线上的投影 | ω T μ 0 \omega^T\mu_0 ωTμ0和 ω T μ 1 \omega^T\mu_1 ωTμ1 |
两类样本的方差 | ω T ∑ 0 ω \omega^T\sum_0\omega ωT∑0ω和 ω T ∑ 1 ω \omega^T\sum_1\omega ωT∑1ω |
预测函数(二分类问题)
从几何角度来讲,将数据映射到一条直线上,尽量分开一些。
几何意义 | 公式 |
---|---|
投影后的类中心距离 | ∥ ω T μ 0 − ω T μ 1 ∥ 2 2 \|\omega^T\mu_0-\omega^T\mu_1\|_2^2 ∥ωTμ0−ωTμ1∥22 |
同类样本投影点之间的相关性 | ω T ∑ 0 ω + ω T ∑ 1 ω \omega^T\sum_0\omega+\omega^T\sum_1\omega ωT∑0ω+ωT∑1ω |
类内散度矩阵 | S ω = ∑ 0 + ∑ 1 S_\omega=\sum_0+\sum_1 Sω=∑0+∑1 |
类间散度矩阵 | S b = ( μ 0 − μ 1 ) ( μ 0 − μ 1 ) T S_b=(\mu_0-\mu_1)(\mu_0-\mu_1)^T Sb=(μ0−μ1)(μ0−μ1)T |
最后,我们对
S
ω
S_\omega
Sω进行奇异值分解来求解。
重点:
1.目标函数:分母:中心欧氏距离;分子:两类方差和;
2.Lagrange乘子法;
3.设1法;
4.矩阵求导;
5.奇异值分解;
根据贝叶斯决策论解释:
两类数据同先验、满足高斯分布且协方差相等时,LDA达到最优。
多分类学习任务
可利用二分类学习器决定多分类问题。
步骤:
1.对问题拆分,为拆出的每个二分类问题训练一个分类器;
2.对每个分类器集成,获得多分类结果。
一对一拆分
一对多拆分
两种策略比较
1.OvO的存储开销和测试开销通常比OvR大。
在分类器的数量上,OvR少于OvO。
2.类别多时,OvO的训练开销通常比OvR小。
在训练数据上,OvO涉及的样本数量少。
3.预测性能差不多。
多对多拆分策略——ECOC
海明距离:不一样的位置数量。
操作方法:
1.设定分类器数目以及分类对象;
2.标注码值;
3.计算海明距离。
说明:
1.M划分的最低大小是基于仅将类别两组两组地进行比较,且不重复。
2.只要不同的个数在阈值及一下,肯定能判定正确;
3.设计策略采用的分类器数量,分类器划分方式都是明确的。
类别不平衡问题
不同类别训练样例数相差很大。
概率型二分类问题,常用几率表示预测函数。
通常情况下,我们认为正反比例是一致的,所以将几率判定的阈值设为1.
但实际上,由于类别比例不同,应该将阈值设为
m
+
m
−
\frac{m_+}{m_-}
m−m+.
以上都是基于假设我们的训练集是对真实样本总体的无偏采样。
但这样的假设在大多数情况下是不成立的。
也就是说,一般而言,真实分布为对半开,但是我们收集到的却是有偏差的。
再缩放/阈值移动
y
′
1
−
y
′
=
y
1
−
y
∗
m
−
m
+
\frac{y'}{1-y'}=\frac{y}{1-y}*\frac{m_-}{m_+}
1−y′y′=1−yy∗m+m−
这样操作的目的是:倘若样本中正例数量偏多。得到的几率会偏向于正例。
欠采样/下采样
去除一些反例,使正反例数目接近;
过采样/上采样
增加一些正例,使正反例数目接近;