西瓜书笔记
第一章、模型评估与选择
- 经验误差与过拟合
训练误差:经验误差,
泛化误差:测试误差,
过拟合和欠拟合:过拟合通常变现为学习能力过强,对于训练数据集具有很好的表现,而对于测试数据集变现却不好。欠拟合反之。 - 评估方法
留出法:即从样本中留出一部分作为测试集。
交叉验证法:将样本划分为k个互斥集合,每次用k-1个集合作为训练数据,剩余的作为测试数据。
自助法:每次随机从包含m个样本集的D中抽取一个样本,然后放回,重复m次,获得m个样本的数据集D’。概率: ( 1 − 1 m ) m (1-\frac{1}{m})^m (1−m1)m。极限为: 1 e ≈ 0.368 \frac{1}{e}\approx0.368 e1≈0.368。也就是有36.8%的样本不会出现,可用于作为测试集。 - 性能度量
均方误差: E ( f ; D ) = 1 m ∑ i = 1 m ( f ( x i ) − y i ) 2 E(f;D)=\frac{1}{m}\sum_{i=1}^m(f(x_i)-y_i)^2 E(f;D)=m1∑i=1m(f(xi)−yi)2
错误率与精度: E ( f ; D ) = 1 m ∑ i = 1 m I I ( f ( x i ) ≠ y i ) E(f;D)=\frac{1}{m}\sum_{i=1}^mII(f(x_i)\ne y_i) E(f;D)=m1∑i=1mII(f(xi)̸=yi)
a c c ( f ; D ) 1 m ∑ i = 1 m I I ( f ( x i ) = y i ) acc(f;D)\frac{1}{m}\sum_{i=1}^mII(f(x_i) = y_i) acc(f;D)m1∑i=1mII(f(xi)=yi)
查准率、查全率与F1:
预测结果 | ||
---|---|---|
真实情况 | 正例 | 反例 |
正例 | TP(真正例) | FN(假反例) |
反例 | FP(假正例) | TN(真反例) |
查准率:
P
=
T
P
T
P
+
F
P
P=\frac{TP}{TP+FP}
P=TP+FPTP, 查全率:
P
=
T
P
T
P
+
F
N
P=\frac{TP}{TP+FN}
P=TP+FNTP
F1度量:
F
1
=
2
×
P
×
R
P
+
R
=
2
×
T
P
样
本
总
数
+
T
P
−
T
N
F1=\frac{2\times P\times R}{P+R}=\frac{2\times TP}{样本总数+TP-TN}
F1=P+R2×P×R=样本总数+TP−TN2×TP
ROC和AUC:ROC的纵轴是“真正例率”: T P R = T P T P + F N TPR=\frac{TP}{TP+FN} TPR=TP+FNTP,横轴是“假正例率”: T P R = F P T N + F P TPR=\frac{FP}{TN+FP} TPR=TN+FPFP。AUC表示ROC曲线的面积。面积越大,精度越高。
- 比较检验
性能比较:a、不同的评估方法,结果未必相同。b、测试集不同,评估结果不同。c、很多算法本身具有随机性,相同的参数,结果也有可能不完全相同。
假设检验:
泛化误差率为 ϵ \epsilon ϵ的学习器被测得测试误差率为 ϵ ^ \hat{\epsilon} ϵ^的概率为:
P ( ϵ ^ , ϵ ) = ϵ ϵ × m ^ ( 1 − ϵ ) m − ϵ ^ × m P(\hat{\epsilon},\epsilon)=\epsilon^{\hat{\epsilon\times m}}(1-\epsilon)^{m-\hat{\epsilon}\times m} P(ϵ^,ϵ)=ϵϵ×m^(1−ϵ)m−ϵ^×m
二项检验:若假设: ϵ < = ϵ 0 \epsilon<=\epsilon_0 ϵ<=ϵ0,则在1- α \alpha α的概率内最大的观测误差率为: ϵ ˉ = \bar{\epsilon}= ϵˉ=max ϵ \epsilon ϵ s.t. ∑ i = ϵ 0 × m + 1 m ϵ i ( 1 − ϵ ) m − i < α \sum_{i=\epsilon_0\times m+1}^{m} \epsilon^i(1-\epsilon)^{m-i}<\alpha ∑i=ϵ0×m+1mϵi(1−ϵ)m−i<α,若此时的测试误差 ϵ ^ \hat{\epsilon} ϵ^小于 ϵ ˉ \bar{\epsilon} ϵˉ。则接受在 α \alpha α的显著度下,假设“ ϵ < = ϵ 0 \epsilon<=\epsilon_0 ϵ<=ϵ0”不能被拒绝。
t检验:K次测试错误率, ϵ ^ 1 , ϵ ^ 2 , . . . , ϵ ^ k \hat{\epsilon}_1,\hat{\epsilon}_2,...,\hat{\epsilon}_k ϵ^1,ϵ^2,...,ϵ^k的平均错误率和方差: μ = 1 k ∑ i = 1 k ϵ ^ i \mu=\frac{1}{k}\sum_{i=1}^{k}\hat{\epsilon}_i μ=k1∑i=1kϵ^i, σ 2 = 1 k − 1 ∑ i = 1 k ( ϵ ^ i − μ ) 2 \sigma^2=\frac{1}{k-1}\sum_{i=1}^{k}(\hat{\epsilon}_i-\mu)^2 σ2=k−11∑i=1k(ϵ^i−μ)2。 τ t = k ( μ − ϵ 0 ) σ \tau_t=\frac{\sqrt{k}(\mu-\epsilon_0)}{\sigma} τt=σk(μ−ϵ0)服从自由度为k-1的t分布。若 ∣ μ − ϵ 0 ∣ |\mu-\epsilon_0| ∣μ−ϵ0∣位于置信区间内,则接受假设检验。
交叉验证t检验(针对多个分类器): Δ i = ϵ i A − ϵ i B \Delta_i=\epsilon_i^{A}-\epsilon_i^{B} Δi=ϵiA−ϵiB,计算 Δ i \Delta_i Δi的均值和方差进行t检验: τ t = k μ σ \tau_t=\frac{\sqrt{k}\mu}{\sigma} τt=σkμ。
McNemar检验:
算法A | ||
---|---|---|
算法B | 正确 | 错误 |
正确 | e 00 e_{00} e00 | e 01 e_{01} e01 |
错误 | e 10 e_{10} e10 | e 11 e_{11} e11 |
τ χ 2 = ( ∣ e 01 − e 10 ∣ − 1 ) 2 e 01 + e 10 \tau_{\chi^2}=\frac{(|e_{01}-e_{10}|-1)^2}{e_{01}+e_{10}} τχ2=e01+e10(∣e01−e10∣−1)2.
Friedman检验和Nemenyi检验。多个算法检验。
第二章、线性模型
- 基本形式
f ( x ) = w T x + b f(x)=w^Tx+b f(x)=wTx+b - 线性回归
数据集 D = { ( x 1 , y 1 ) , ( x 2 , y 2 ) . . . ( x m , y m ) } D=\{(x_1,y_1),(x_2,y_2)...(x_m,y_m)\} D={(x1,y1),(x2,y2)...(xm,ym)}。
f ( x i ) = w x i + b f(x_i)=wx_i+b f(xi)=wxi+b,
优化: ( w ∗ , b ∗ ) = a r g m i n ∑ i = 1 m ( y i − w x i − b ) 2 (w^*,b^*)=arg min\sum_{i=1}^m(y_i-wx_i-b)^2 (w∗,b∗)=argmin∑i=1m(yi−wxi−b)2
求导: ∂ E ( w , b ) ∂ w = 2 ( w ∑ i = 1 m x i 2 − ∑ i = 1 m ( y i − b ) x i ) \frac{\partial E(w,b)}{\partial w}=2(w\sum_{i=1}^{m}x_i^2-\sum_{i=1}^{m}(y_i-b)x_i) ∂w∂E(w,b)=2(w∑i=1mxi2−∑i=1m(yi−b)xi)
∂ E ( w , b ) ∂ b = 2 ( m b − ∑ i = 1 m ( y i − w x i ) ) \frac{\partial E(w,b)}{\partial b}=2(mb-\sum_{i=1}^{m}(y_i-wx_i)) ∂b∂E(w,b)=2(mb−∑i=1m(yi−wxi))
矩阵形式: w ^ = ( w ; b ) \hat{w}=(w;b) w^=(w;b), w ^ ∗ = a r g m i n ( y − X w ^ ) T ( y − X w ^ ) \hat{w}^* = argmin(y-X\hat{w})^T(y-X\hat{w}) w^∗=argmin(y−Xw^)T(y−Xw^).
∂ E w ^ ∂ w ^ = 2 X T ( X w ^ − y ) \frac{\partial E_{\hat{w}}}{\partial \hat{w}}=2X^T(X\hat{w}-y) ∂w^∂Ew^=2XT(Xw^−y) - 对数几率回归
即Logistic回归,在机器学习中,最重要的是找到Loss,从而优化。在逻辑回归中,加入了对数几率函数,即预测一个概率值 h ( z ) = 1 1 + e − z = 1 1 + e − ( w T x + b ) h(z)=\frac{1}{1+e^{-z}}=\frac{1}{1+e^{-(w^Tx+b)}} h(z)=1+e−z1=1+e−(wTx+b)1.则损失函数可以定义为:
l o s s = { y = 1 时 , − l o g ( h ( z ) ) ; y = 0 时 , − l o g ( 1 − h ( z ) ) } loss =\{y=1时,-log(h(z));y=0时,-log(1-h(z))\} loss={y=1时,−log(h(z));y=0时,−log(1−h(z))}所以
: l o s s = − y l o g ( h ( z ) ) − ( 1 − y ) l o g ( 1 − h ( z ) ) loss=-ylog(h(z))-(1-y)log(1-h(z)) loss=−ylog(h(z))−(1−y)log(1−h(z))
另一个角度:
p ( y ∣ x ; z ) = ( h ( z ) ) = ( h ( z ) ) y ( 1 − h ( z ) ) 1 − y p(y|x;z)=(h(z))=(h(z))^y(1-h(z))^{1-y} p(y∣x;z)=(h(z))=(h(z))y(1−h(z))1−y
则极大似然估计有:
L ( z ) = ∏ i = 1 m p ( y i ∣ x i ; z ) = ∏ i = 1 m ( h ( z ) ) y i ( 1 − h ( z ) ) 1 − y i L(z)=\prod_{i=1}^{m}p(y^i|x^i;z)=\prod_{i=1}^m(h(z))^{y^i}(1-h(z))^{1-y^i} L(z)=∏i=1mp(yi∣xi;z)=∏i=1m(h(z))yi(1−h(z))1−yi.取对数似然函数后,与通过loss求解的方式的优化函数相同。 - 线性判别分析
俗称LDA,基本思想:给定训练样本集,设法将样例投影到一条直线上,使得同类样例的投影点尽可能接近、异类样例的投影点尽可能远离。两个样本集投影的均值分别为: w T μ 0 , w T μ 1 w^T\mu_0,w^T\mu_1 wTμ0,wTμ1,投影的协方差分别为: w T Σ 0 w , w T Σ 1 w w^T\Sigma_0w,w^T\Sigma_1w wTΣ0w,wTΣ1w.目标就是: w T Σ 0 w + w T Σ 1 w w^T\Sigma_0w+w^T\Sigma_1w wTΣ0w+wTΣ1w尽可能小, ∣ ∣ w T μ 0 − w T μ 1 ∣ ∣ 2 2 ||w^T\mu_0-w^T\mu_1||_2^2 ∣∣wTμ0−wTμ1∣∣22尽可能大。
J = ∣ ∣ w T μ 0 − w T μ 1 ∣ ∣ 2 2 w T Σ 0 w + w T Σ 1 w = w T ( μ 0 − μ 1 ) ( μ 0 − μ 1 ) T w w T ( Σ 0 + Σ 1 ) w = w T S b w w T S w w J=\frac{||w^T\mu_0-w^T\mu_1||_2^2}{w^T\Sigma_0w+w^T\Sigma_1w}=\frac{w^T(\mu_0-\mu_1)(\mu_0-\mu_1)^Tw}{w^T(\Sigma_0+\Sigma_1)w}=\frac{w^T S_bw}{w^TS_ww} J=wTΣ0w+wTΣ1w∣∣wTμ0−wTμ1∣∣22=wT(Σ0+Σ1)wwT(μ0−μ1)(μ0−μ1)Tw=wTSwwwTSbw
等价于:min − w T S b w -w^TS_bw −wTSbw. s.t. w T S w w = 1. w^TS_ww=1. wTSww=1.利用拉格朗日乘子法求解。 - 多分类任务
一对一:将分类任务,分为两两组合,需要 N ( N − 1 ) / 2 N(N-1)/2 N(N−1)/2个分类器。
一对多:一个类别和剩余的类别分别作为正类和负类。训练N个分类器。
多对多:EOOC。编码:将N个类别做M次划分,每次划分将一部分类别划分为正类,一部分划分为反类,从而形成一个二分类训练集;这样一共产生M个训练集,可训练出M个分类器。解码:M个分类器分别对测试样本进行预测,这些预测标记组成一个编码。将这个预测编码于每个类别各自的编码进行比较,返回其中距离最小的类别作为最终预测结果。 - 类别不平衡
a、减少样本较多的类别的样本(欠采样)b、增加样本较少的类别的样本(过采样)c、进行阈值移动,即在不同类别的代价函数引入权重。
第三章、决策树
- 基本流程
基本思想:分而治之。
- 划分选择
信息熵: p k p_k pk指第k类样本所占的比例。 E n t ( D ) = − ∑ k = 1 ∣ y ∣ p k l o g 2 p k . Ent(D)=-\sum_{k=1}^{|y|}p_klog_2p_k. Ent(D)=−∑k=1∣y∣pklog2pk.越小,D的纯度越高。
信息增益: G a i n ( D , a ) = E n t ( D ) − ∑ v = 1 V ∣ D v ∣ ∣ D ∣ E n t ( D v ) . Gain(D,a)=Ent(D)-\sum_{v=1}^{V}\frac{|D^v|}{|D|}Ent(D^v). Gain(D,a)=Ent(D)−∑v=1V∣D∣∣Dv∣Ent(Dv).信息增益越大,属性a划分所获得的“纯度”提升越大。(缺点:倾向于选择更多的属性)。
增益率: G a i n r a t i o ( D , a ) = G a i n ( D , a ) I V ( a ) Gain_ratio(D,a)=\frac{Gain(D,a)}{IV(a)} Gainratio(D,a)=IV(a)Gain(D,a),
I V ( a ) = − ∑ v = 1 V ∣ D v ∣ ∣ D ∣ l o g 2 ∣ D v ∣ ∣ D ∣ IV(a)=-\sum_{v=1}^{V}\frac{|D^v|}{|D|}log_2\frac{|D^v|}{|D|} IV(a)=−∑v=1V∣D∣∣Dv∣log2∣D∣∣Dv∣(对可取数目较少的属性有偏好)。
基尼指数: G i n i ( D ) = 1 − ∑ k = 1 ∣ y ∣ p k 2 Gini(D)=1-\sum_{k=1}^{|y|}p_k^2 Gini(D)=1−∑k=1∣y∣pk2,
G i n i _ i n d e x ( D , a ) = ∑ v = 1 V ∣ D v ∣ ∣ D ∣ G i n i ( D v ) Gini\_index(D,a)=\sum_{v=1}^{V}\frac{|D^v|}{|D|}Gini(D^v) Gini_index(D,a)=∑v=1V∣D∣∣Dv∣Gini(Dv). - 剪枝处理
解决决策树“过拟合”的问题。分为“预剪枝”和“后剪枝”。
预剪枝:按照某个属性划分前和划分后,比较其泛化能力,若验证集的精度提升,则按照将该属性作为新的属性划分。
后剪枝:比较剪枝前和剪枝后的泛化能力。 - 连续与缺失值
连续值:对连续属性 a a a,考虑包含 n − 1 n-1 n−1个属性划分: T a = { a i + a i + 1 2 ∣ 1 ≤ i ≤ n − 1 } T_a=\{\frac{a^i+a^{i +1}}{2}|1\le i\le n-1\} Ta={2ai+ai+1∣1≤i≤n−1}其中, a i a^i ai为属性 a a a的可能的第 i i i个值。
缺失值:
新的增益函数为:
- 多变量决策树
划分不再以单个属性划分,而是以多个属性的线性函数划分,实现斜划分。
第四章、神经网络
- 神经元模型
激活函数:
- 感知机与多层网络
感知机由两层神经网络构成。能很容易实现“与”、“或”、“非”。“异或”的网络:
- 误差反向传播
公式推导:
假设训练集
(
x
k
,
y
k
)
(x_k,y_k)
(xk,yk),输出为
y
^
k
=
{
y
^
j
k
(
j
=
1
,
2
,
.
.
.
l
)
}
\hat{y}_k=\{\hat{y}^k_j(j=1,2,...l)\}
y^k={y^jk(j=1,2,...l)}.
y
^
j
k
=
f
(
β
j
−
θ
j
)
\hat{y}^k_j = f(\beta_j-\theta_j)
y^jk=f(βj−θj)
则均方误差:
E
k
=
1
2
∑
j
=
1
l
(
y
^
j
k
−
y
j
k
)
2
E_k = \frac{1}{2}\sum_{j=1}^{l}(\hat{y}^k_j - y_j^k)^2
Ek=21∑j=1l(y^jk−yjk)2
则
w
h
j
w_{hj}
whj更新量:
Δ
w
h
j
=
−
η
∂
E
k
∂
w
h
j
\Delta w_{hj} = -\eta\frac{\partial E_k}{\partial w_{hj}}
Δwhj=−η∂whj∂Ek
其中:
∂
E
k
∂
w
h
j
=
∂
E
k
∂
y
^
j
k
∂
y
^
j
k
∂
β
j
∂
β
j
∂
w
h
j
=
(
y
^
j
k
−
y
j
k
)
f
′
(
β
j
−
θ
j
)
b
h
\frac{\partial E_k}{\partial w_{hj}} = \frac{\partial E_k}{\partial \hat{y}_j^k}\frac{\partial \hat{y}_j^k}{\partial \beta_j}\frac{\partial \beta_j}{\partial w_{hj}} = (\hat{y}^k_j - y_j^k)f'(\beta_j-\theta_j)b_h
∂whj∂Ek=∂y^jk∂Ek∂βj∂y^jk∂whj∂βj=(y^jk−yjk)f′(βj−θj)bh
- 全局最小和局部最小
几种试图跳出局部最小的方法:a、多组不同初始化的神经开始训练,选择误差最小的网络作为最终解。b、使用模拟退火,即以一定概率接受比当前解更差的结果。c、使用随机梯度下降。 - 深度学习
多层神经网络。
第五章、支持向量机
- 间隔和支持向量
超平面表示为: w T x + b = 0 w^Tx+b = 0 wTx+b=0,其中, w = ( w 1 ; w 2 ; . . . w n ) w=(w_1;w_2;...w_n) w=(w1;w2;...wn)法向量,决定超平面的方向。 b b b为位移项,决定超平面与原点的距离。
空间点到超平面的距离: r = ∣ w T x + b ∣ ∣ ∣ w ∣ ∣ r=\frac{|w^Tx+b|}{||w||} r=∣∣w∣∣∣wTx+b∣.
假设超平面可将样本集正确分类:所有样本满足
w T x i + b ≥ + 1 , y i = + 1 w^Tx_i+b\ge+1, y_i=+1 wTxi+b≥+1,yi=+1, w T x i + b ≤ − 1 , y i = − 1 w^Tx_i+b\le-1, y_i=-1 wTxi+b≤−1,yi=−1.
因此:两个异类支持向量的距离为: r = 2 ∣ ∣ w ∣ ∣ r=\frac{2}{||w||} r=∣∣w∣∣2.
最优化式子为:
m a x w , b 2 ∣ ∣ w ∣ ∣ max_{w,b} \frac{2}{||w||} maxw,b∣∣w∣∣2 s.t. y i ( w T x i + b ) ≥ 1 y_i(w^Tx_i+b)\ge1 yi(wTxi+b)≥1
等价于:
m i n w , b 1 2 ∣ ∣ w ∣ ∣ 2 min_{w,b} \frac{1}{2}||w||^2 minw,b21∣∣w∣∣2 s.t. y i ( w T x i + b ) ≥ 1 y_i(w^Tx_i+b)\ge1 yi(wTxi+b)≥1 - 对偶问题
上式利用拉格朗日乘子法求解:
L ( w , b , α ) = 1 2 ∣ ∣ w ∣ ∣ 2 + ∑ i = 1 m α i ( 1 − y i ( w T x i + b ) ) L(w,b,\alpha)=\frac{1}{2}||w||^2+\sum_{i=1}^{m}\alpha_i(1-y_i(w^Tx_i+b)) L(w,b,α)=21∣∣w∣∣2+∑i=1mαi(1−yi(wTxi+b))
偏导数为0,可以求得:
w = ∑ i = 1 m α i y i x i w=\sum_{i=1}^{m}\alpha_iy_ix_i w=∑i=1mαiyixi, 0 = ∑ i = 1 m α i y i 0=\sum_{i=1}^{m}\alpha_iy_i 0=∑i=1mαiyi
带入原式,得到对偶问题为:
max α ∑ i = 1 m α i − 1 2 ∑ i = 1 m ∑ j = 1 m α i α j y i y j x i T x j _{\alpha} \sum_{i=1}^{m}\alpha_i-\frac{1}{2}\sum_{i=1}^{m}\sum_{j=1}^{m}\alpha_i\alpha_jy_iy_jx_i^Tx_j α∑i=1mαi−21∑i=1m∑j=1mαiαjyiyjxiTxj
s.t. ∑ i = 1 m α i y i = 0 \sum_{i=1}^{m}\alpha_iy_i=0 ∑i=1mαiyi=0, α i ≥ 0 \alpha_i\ge0 αi≥0
求出 α \alpha α,即可求得模型:
f ( x ) = ∑ i = 1 m α i y i x i T x + b f(x)=\sum_{i=1}^{m}\alpha_iy_ix_i^Tx+b f(x)=∑i=1mαiyixiTx+b
上式求解过程中,应满足kkt条件:
α i ≥ 0 \alpha_i\ge0 αi≥0, y i f ( x i ) − 1 ≥ 0 y_if(x_i)-1\ge0 yif(xi)−1≥0, α i ( y i f ( x i ) − 1 ) = 0 \alpha_i(y_if(x_i)-1)=0 αi(yif(xi)−1)=0 - 核函数
常用核函数:
线性核函数: k ( x i , x j ) = x i T x j k(x_i,x_j)=x_i^Tx_j k(xi,xj)=xiTxj
多项式核函数: k ( x i , x j ) = ( x i T x j ) d k(x_i,x_j)=(x_i^Tx_j)^d k(xi,xj)=(xiTxj)d
高斯核函数: k ( x i , x j ) = exp ( − ∣ ∣ x i − x j ∣ ∣ 2 2 σ 2 ) k(x_i,x_j)=\exp(-\frac{||x_i-x_j||^2}{2\sigma^2}) k(xi,xj)=exp(−2σ2∣∣xi−xj∣∣2)
拉普拉斯核函数: k ( x i , x j ) = exp ( − ∣ ∣ x i − x j ∣ ∣ 2 σ ) k(x_i,x_j)=\exp(-\frac{||x_i-x_j||^2}{\sigma}) k(xi,xj)=exp(−σ∣∣xi−xj∣∣2)
sigmoid核函数: k ( x i , x j ) = tanh ( β x i T x j + θ ) k(x_i,x_j)=\tanh(\beta x_i^Tx_j + \theta) k(xi,xj)=tanh(βxiTxj+θ) - 软间隔和正则化
允许部分样本不满足: y i ( w T x i + b ) ≥ 0 y_i(w^Tx_i+b)\ge0 yi(wTxi+b)≥0。
优化函数变为:
min w , b 1 2 ∣ ∣ w ∣ ∣ 2 + C ∑ i = 1 m l 0 / 1 ( y i ( w T x i + b ) − 1 ) _{w,b} \frac{1}{2}||w||^2+C\sum_{i=1}^{m}l_{0/1}(y_i(w^Tx_i+b)-1) w,b21∣∣w∣∣2+C∑i=1ml0/1(yi(wTxi+b)−1)
l 0 / 1 l_{0/1} l0/1也可以是 h i n g e ( z ) = m a x ( 0 , 1 − z ) hinge(z)=max(0,1-z) hinge(z)=max(0,1−z),指数函数: l e x p ( z ) = e x p ( − z ) l_{exp}(z)=exp(-z) lexp(z)=exp(−z),对数损失函数: l l o g ( z ) = log ( 1 + exp ( − z ) ) l_{log}(z)=\log(1+\exp(-z)) llog(z)=log(1+exp(−z)).
引入松弛变量:
min w , b , ξ i 1 2 ∣ ∣ w ∣ ∣ 2 + C ∑ i = 1 m ξ i \min_{w,b,\xi_i}\frac{1}{2}||w||^2+C\sum_{i=1}^{m}\xi_i minw,b,ξi21∣∣w∣∣2+C∑i=1mξi
s.t. y i ( w T x i + b ) ≥ 1 − ξ i y_i(w^Tx_i+b)\ge1-\xi_i yi(wTxi+b)≥1−ξi, ξ i ≥ 0 \xi_i\ge0 ξi≥0。
表示拉格朗日乘子:
L ( w , b , α , ξ , μ ) = 1 2 ∣ ∣ w ∣ ∣ 2 + C ∑ i = 1 m ξ i + ∑ i = 1 m α i ( 1 − ξ i − y i ( w T x i + b ) ) − ∑ i = 1 m μ i ξ i L(w,b,\alpha,\xi,\mu)=\frac{1}{2}||w||^2+C\sum_{i=1}^{m}\xi_i+\sum_{i=1}^{m}\alpha_i(1-\xi_i-y_i(w^Tx_i+b))-\sum_{i=1}^{m}\mu_i\xi_i L(w,b,α,ξ,μ)=21∣∣w∣∣2+C∑i=1mξi+∑i=1mαi(1−ξi−yi(wTxi+b))−∑i=1mμiξi
第六章、贝叶斯分类器
- 贝叶斯决策论
假设有N种可能的类剔标记,即 y = { c 1 , c 2 , . . . , c N } y=\{c_1,c_2,...,c_N\} y={c1,c2,...,cN}, λ i j λ_{ij} λij是将一个真实标记为 c j c_j cj的样本误分类为 c i c_i ci所产生的损失.基于后验概率 p ( c i ∣ x ) p(c_i|x) p(ci∣x) 可获得将样本误分类为 c i c_i ci所产生的期望损失.“条件风险”:
R ( c i ∣ x ) = ∑ j = 1 N λ i j p ( c j ∣ x ) R(c_i|x)=\sum_{j=1}^{N}\lambda_{ij}p(c_j|x) R(ci∣x)=∑j=1Nλijp(cj∣x)
最小分类错误率: h ∗ ( x ) = h^*(x)= h∗(x)= argmax p ( c ∣ x ) p(c|x) p(c∣x)
生成式模型:先对联合概率分布 p ( c , x ) p(c,x) p(c,x)建模,然后再由此获得 p ( c ∣ x ) p(c|x) p(c∣x)
判别式模型:直接对 p ( c ∣ x ) p(c|x) p(c∣x)建模。 - 极大似然估计
令 D c D_c Dc表示训练集 D D D中第 c c c类样本组成的集合,假设这些样本是独立同分布的,则参数 θ c θ_c θc对于数据集 D c D_c Dc的似然是:
P ( D c ∣ θ c ) = ∏ x ∈ D c p ( x ∣ θ c ) P(D_c|\theta_c) = \prod_{x\in D_c}p(x|\theta_c) P(Dc∣θc)=∏x∈Dcp(x∣θc)
L L ( θ c ) = ∑ x ∈ D c log p ( x ∣ θ c ) LL(\theta_c)=\sum_{x\in D_c}\log p(x|\theta_c) LL(θc)=∑x∈Dclogp(x∣θc)
θ ^ c = a r g m a x L L ( θ c ) \hat{\theta}_c=argmaxLL(\theta_c) θ^c=argmaxLL(θc) - 朴素贝叶斯分类器
基于条件独立假设:
p ( c ∣ x ) = p ( c ) p ( x ∣ c ) p ( x ) = p ( c ) p ( x ) ∏ i = 1 d p ( x i ∣ c ) p(c|x)=\frac{p(c)p(x|c)}{p(x)}=\frac{p(c)}{p(x)}\prod_{i=1}^{d}p(x_i|c) p(c∣x)=p(x)p(c)p(x∣c)=p(x)p(c)∏i=1dp(xi∣c)
其中,对于所有类别 p ( x ) p(x) p(x)相同,类先验概率: p ( c ) = ∣ D c ∣ ∣ D ∣ p(c)=\frac{|D_c|}{|D|} p(c)=∣D∣∣Dc∣.
离散数据:
p ( x i ∣ c ) = ∣ D x i , c ∣ ∣ D ∣ p(x_i|c)=\frac{|D_{x_{i,c}}|}{|D|} p(xi∣c)=∣D∣∣Dxi,c∣
连续数据,需要先假设概率分布,然后求 p ( x i ∣ c ) p(x_i|c) p(xi∣c)概率。 - 半朴素贝叶斯分类器
独依赖假设:假设每个属性在 类别之外最多仅依赖于一个其他属性。
TAN:最大带权生成树
SPODE:
AODE 尝试将每个属性作为超父来构建 SPODE,然后将那些具有足够训练数据支撑的 SPODE 集成起来作为最终结果。
- EM算法
令 X X X表示己观测变量 集, Z Z Z 表示隐变量集, θ \theta θ表示模型参数.对 θ \theta θ的最大似然估计为:
L L ( θ ∣ X , Z ) = ln P ( X , Z ∣ θ ) LL(\theta|X,Z)=\ln P(X,Z|\theta) LL(θ∣X,Z)=lnP(X,Z∣θ)
求解的基本思想:基本想法是:若参数 θ \theta θ己知,则可根据训练数据推断出最优隐变量 Z Z Z的值 (E 步);反之,若 Z Z Z的值已知,则可方便地对参数 θ \theta θ做极大似然估计 (M 步).
第七章、集成学习
- 个体与集成
“好而不同”
串行:具有强依赖关系,代表:boosting
并行:不存在强依赖关系,代表:bagging和随机森林。 - Boosting
基本思想:先从初始训练集训练出一个基学习器,再根据基学习器的表现对训练 样本分布进行调整,使得先前基学习器做错的训练样本在后续受到更多关注, 然后基于调整后的样本分布来训练下一个基学习器;如此重复进行,直至基学 习器数目达到事先指定的值 T, 最终将这 T 个基学习器进行加权结合.
AdaBoost算法:
算法流程图:
推导过程:
若: H ( x ) = ∑ t = 1 T α t h t ( x ) H(x)=\sum_{t=1}^{T}\alpha_th_t(x) H(x)=∑t=1Tαtht(x),
最小化指数损失函数: ℓ exp ( H ∣ D ) = E X ∽ D [ e − f ( x ) H ( x ) ] \ell_{\exp}(H|D)=E_{X\backsim D}[e^{-f(x)H(x)}] ℓexp(H∣D)=EX∽D[e−f(x)H(x)]
损失函数导数为0时:
可以求得:
获取学习器的权重的推导:在adaboost算法中,第一个学习器通过直接学习生产。后序的学习器通过迭代生成
h
t
h_t
ht和
α
t
\alpha_t
αt。
获取数据样本的权重的推导:
- Bagging与随机森林
欲使泛化性能越好,则学习器尽量“独立”。
Bagging:a、从样本集中每次抽取一个样本,并放回,抽取m次,得到一个训练集。训练得到一个基学习器。
b、重复a步骤T次,得到T个学习器。
随机森林:a、同bagging的采样法(bootstrap采样),抽取m个样本。
b、从所有属性中随机选择k个属性,选择最佳分割属性作为节点建立CART决策树。
c、重复a和b两步m次,即建立m棵CART决策树。
d、这m个CART形成随机森林,通过投票表决,决定数据属于某一类。 - 结合策略
结合带来的三个好处:
a、统计方面:学习任务假设空间大,可能在多个假设上具有同等性能。而多个学习器可以减小因为假设单一而误选,泛化能力更好。
b、计算方面:学习算法往往会陷入局 部极小?有的局部极小点所对应的泛化性能可能很糟糕, 而通过多次运行之后 进行结合, 可降低陷入糟糕局部极小点的风险。
c、表示方面:某些 学习任务的真实假设可能不在当前学习算法所考虑的假设空间 中,此时若使用 单学习器则肯定无效,而通过结合多个学习器, 由于相应的假设空间有所扩大, 有可能学得更好的近似。
常用结合策略:
a、平均法:
简单平均法: H ( x ) = 1 T ∑ i = 1 T h i ( x ) H(x)=\frac{1}{T}\sum_{i=1}^{T}h_i(x) H(x)=T1∑i=1Thi(x)
加权平均法: H ( x ) = ∑ i = 1 T w i h i ( x ) H(x)=\sum_{i=1}^{T}w_ih_i(x) H(x)=∑i=1Twihi(x)
b、投票法:
绝对多数投票法:
相对多数投票法:
加权投票法:
c、学习法:
Stacking 先从初始数据集训练出初级学习器,然后"生成"一个新数据集 用于训练次级学习器.在这个新数据集中,初级学习器的输出被当作样例输入 特征,而初始样本的标记仍被当作样例标记.
- 多样性
好而不同。
a、多样性度量:
b、多样性增强
扰动:数据样本扰动、输入属性扰动、输出表示扰动、算法参数扰动。
第八章、聚类
-
距离计算
基本性质:非负性、同一性(dist( x i , x j x_i,x_j xi,xj)=0)、对称性、直递性。 -
K均值算法
最小化平方误差: E = ∑ i = 1 k ∑ x ∈ C j ∣ ∣ x − μ i ∣ ∣ 2 2 E=\sum_{i=1}^{k}\sum_{x\in C_j}||x-\mu_i||_2^2 E=∑i=1k∑x∈Cj∣∣x−μi∣∣22,其中: μ i = 1 ∣ C i ∣ ∑ x ∈ C i x \mu_i=\frac{1}{|C_i|}\sum_{x\in C_i}x μi=∣Ci∣1∑x∈Cix
算法流程:
学习向量量化:
混合高斯模型:
- 密度聚类
几个重要概念:
DBSCAN:由密度可达导出的最大的密度相连样本集合。具有以下特性:
算法流程:
- 层次聚类
第九章、降维与度量学习
- K近邻学习
给定测试样本,基于某种距离度量找出训练集中与其最靠近的k个训练样本,然后基于这 k个"邻居"的信息来进行预测. 通常,在分类任务中可使用"投票法" 即选择这k个样本中出现最多的类别标记作为预测结果;在回归任务中时使用"平均法" ,即将这 k个样本的实值输出标记的平均值作为预测结果; - 低维嵌入
公式推导:
算法流程:
- 主成分分析
最近重构性:
最大可分性:
算法流程:
-
核化
在优化函数中加入核函数。 -
流形学习
a、等度量映射
b、局部线性嵌入
假定 x i x_i xi可由其邻域的 x j , x k , x l x_j,x_k,x_l xj,xk,xl线性表示, x i = w i j x j + w i k x k + w i l x l x_i=w_{ij}x_j+w_{ik}x_k+w_{il}x_l xi=wijxj+wikxk+wilxl.
优化方程,求w:
求低维空间坐标:
算法流程:
-
度量学习
带铁传统的欧式、马氏距离,通过学习获得距离。
第十章、特征选择和稀疏学习
-
子集搜索与评价
第一阶段:给定特征集合 {α1, α2,…,αd}, 我们可将每个特征看作一个候选子集,对这 d个候选单特征子集进行评价,假定 {α2} 最优,于是将 {α2}作为第一轮的选定集;然后,在上一 轮的选定集中加入一个特征,构成包含两个特征的候选子集,假定在这 d-1 个 候选两特征子集中 {α2,α4} 最优,且优于 {α2},于是将 {α2,α4} 作为本轮的选 定集,假定在第k+1轮时,最优的候选(k十1)特征子集不如上一轮的选 定集?则停止生成候选子集,并将上一轮选定的 k特征集合作为特征选择结果. 这样逐渐增加相关特征的策略称为"前向" (fòrward)搜索.
第二阶段:评价
特征选择:过滤式、包裹式、嵌入式。 -
过滤式
过滤式方法先对数据集进行特征选择,然后再训练学习器,特征选择过程 与后续学习器无关.
Relief:
a、在 x i x_i xi的同类样本中寻找其最近邻 x i , n h x_{i,nh} xi,nh,称为"猜中近邻" (near-hit).
b、在 x i x_i xi的异类样本中寻找其最近邻 x i , n m x_{i,nm} xi,nm,称为"猜错近邻" .
c、相关统计量:
Relief-F:
a、在 x i x_i xi的第k类中寻找其最近邻 x i , n h x_{i,nh} xi,nh,称为"猜中近邻"。
b、在 x i x_i xi在第k类以外的每个类中找到一个 x i x_i xi的最近邻示例作为猜错近邻,寻找其最近邻 x i , l , n m x_{i,l,nm} xi,l,nm,
c、相关统计量:
-
包裹式
包裹式特征选择直接把最终将要使用的学习器的性能作为特征于集的评价准则.
LVM:
-
嵌入式及L1正则化
嵌入式特征选择是将特征选择过程与学习器训练过程融 为一体,两者在同一个优化过程中完成,即在学习器训练过程中自动地进行了特征选择.
-
稀疏表示与字典学习
字典学习的最简单形式:
求解:
-
压缩感知
第十一章、计算学习理论
- 基础知识
- PAC学习