(《机器学习》完整版系列)第10章 降维与度量学习——10.10 度量学习(将欧氏距离推广成马氏距离)
不同的矩阵
M
\mathbf{M}
M会得到不同的马氏距离,这就有一个寻找最优
M
\mathbf{M}
M的问题。
可以使用近邻成分分析学习
M
\mathbf{M}
M。
度量学习
在有趣的距离与范数中,我们讨论了距离,这里我们进一步地将欧氏距离推广成马氏距离,并讨论对其学习。
欧氏距离
d
i
s
t
2
(
x
i
,
x
j
)
=
∣
∣
x
i
,
x
j
∣
∣
2
2
=
(
x
i
,
x
j
)
T
(
x
i
,
x
j
)
=
(
x
i
,
x
j
)
T
I
(
x
i
,
x
j
)
\begin{align} {\mathrm{dist}}^2(\boldsymbol{x}_i,\boldsymbol{x}_j) & =||\boldsymbol{x}_i,\boldsymbol{x}_j||_2^2\notag \\ & =(\boldsymbol{x}_i,\boldsymbol{x}_j)^{\mathrm{T}}(\boldsymbol{x}_i,\boldsymbol{x}_j)\notag \\ & =(\boldsymbol{x}_i,\boldsymbol{x}_j)^{\mathrm{T}}\mathbf{I}(\boldsymbol{x}_i,\boldsymbol{x}_j) \tag{10.116} \end{align}
dist2(xi,xj)=∣∣xi,xj∣∣22=(xi,xj)T(xi,xj)=(xi,xj)TI(xi,xj)(10.116)
其中,
I
\mathbf{I}
I为单位矩阵,即对角线为1的对角矩阵。
由此想到将改单位矩阵为一般的对角矩阵又如何?这就是将欧氏距离推广成含参数
W
\mathbf{W}
W的距离
d
i
s
t
2
(
x
i
,
x
j
)
=
(
x
i
,
x
j
)
T
W
(
x
i
,
x
j
)
\begin{align} {\mathrm{dist}}^2(\boldsymbol{x}_i,\boldsymbol{x}_j) & =(\boldsymbol{x}_i,\boldsymbol{x}_j)^{\mathrm{T}}\mathbf{W}(\boldsymbol{x}_i,\boldsymbol{x}_j) \tag{10.117} \end{align}
dist2(xi,xj)=(xi,xj)TW(xi,xj)(10.117)
其中,
W
=
d
i
a
g
(
w
1
,
w
2
,
⋯
,
w
d
)
=
d
i
a
g
(
w
)
\mathbf{W}=\mathrm{diag}(w_1,w_2,\cdots,w_d)=\mathrm{diag}(\boldsymbol{w})
W=diag(w1,w2,⋯,wd)=diag(w),视向量
w
\boldsymbol{w}
w为权重向量。 对角矩阵说明
d
d
d维分量间是正交的,也即属性间无关。
若取消属性间无关的限制,可将对角矩阵
W
\mathbf{W}
W替换成半正定对称矩阵
M
\mathbf{M}
M,由矩阵理论,有正交基阵
P
\mathbf{P}
P使得
M
=
P
P
T
\mathbf{M}=\mathbf{P}\mathbf{P}^{\mathrm{T}}
M=PPT,则可定义新距离:
d
m
2
(
x
i
,
x
j
)
=
(
x
i
,
x
j
)
T
M
(
x
i
,
x
j
)
=
d
e
f
∣
∣
x
i
−
x
j
∣
∣
M
2
\begin{align} d_m^2(\boldsymbol{x}_i,\boldsymbol{x}_j) & =(\boldsymbol{x}_i,\boldsymbol{x}_j)^{\mathrm{T}}\mathbf{M}(\boldsymbol{x}_i,\boldsymbol{x}_j) \tag{10.118} \\ & \mathop{=} \limits^{\mathrm{def}} ||\boldsymbol{x}_i-\boldsymbol{x}_j||^2_{\mathbf{M}} \end{align}
dm2(xi,xj)=(xi,xj)TM(xi,xj)=def∣∣xi−xj∣∣M2(10.118)
称为马氏距离。 非负性、同一性、对称性显然,直递性证明如下:
因
M
\mathbf{M}
M为半正定对称,故有分解:
M
=
P
P
T
\mathbf{M}=\mathbf{P}\mathbf{P}^{\mathrm{T}}
M=PPT,其中,
P
\mathbf{P}
P为正交基。 则
d
i
s
t
M
2
(
x
i
,
x
j
)
=
(
x
i
−
x
j
)
P
P
T
(
x
i
−
x
j
)
T
=
t
r
(
(
x
i
−
x
j
)
P
P
T
(
x
i
−
x
j
)
T
)
=
t
r
(
P
T
(
x
i
−
x
j
)
T
(
x
i
−
x
j
)
P
)
=
t
r
(
P
T
∣
∣
x
i
−
x
j
∣
∣
2
P
)
=
∣
∣
x
i
−
x
j
∣
∣
2
t
r
(
P
T
P
)
=
α
2
∣
∣
x
i
−
x
j
∣
∣
2
\begin{align} {\mathrm{dist}}_{\mathbf{M}}^2(\boldsymbol{x}_i,\boldsymbol{x}_j) & =(\boldsymbol{x}_i-\boldsymbol{x}_j)\mathbf{P}\mathbf{P}^{\mathrm{T}}(\boldsymbol{x}_i-\boldsymbol{x}_j)^{\mathrm{T}}\notag \\ & =\mathrm{tr}((\boldsymbol{x}_i-\boldsymbol{x}_j)\mathbf{P}\mathbf{P}^{\mathrm{T}}(\boldsymbol{x}_i-\boldsymbol{x}_j)^{\mathrm{T}})\notag \\ & =\mathrm{tr}(\mathbf{P}^{\mathrm{T}}(\boldsymbol{x}_i-\boldsymbol{x}_j)^{\mathrm{T}}(\boldsymbol{x}_i-\boldsymbol{x}_j)\mathbf{P})\notag \\ & =\mathrm{tr}(\mathbf{P}^{\mathrm{T}}||\boldsymbol{x}_i-\boldsymbol{x}_j||^2\mathbf{P})\notag \\ & =||\boldsymbol{x}_i-\boldsymbol{x}_j||^2\mathrm{tr}(\mathbf{P}^{\mathrm{T}}\mathbf{P})\notag \\ & =\alpha ^2||\boldsymbol{x}_i-\boldsymbol{x}_j||^2 \tag{10.119} \end{align}
distM2(xi,xj)=(xi−xj)PPT(xi−xj)T=tr((xi−xj)PPT(xi−xj)T)=tr(PT(xi−xj)T(xi−xj)P)=tr(PT∣∣xi−xj∣∣2P)=∣∣xi−xj∣∣2tr(PTP)=α2∣∣xi−xj∣∣2(10.119)
其中,由于
P
\mathbf{P}
P为正交基,故可设
t
r
(
P
T
P
)
=
α
2
\mathrm{tr}(\mathbf{P}^{\mathrm{T}}\mathbf{P})=\alpha ^2
tr(PTP)=α2。
在式(10.119)中,由欧氏距离
∣
∣
x
i
−
x
j
∣
∣
2
||\boldsymbol{x}_i-\boldsymbol{x}_j||^2
∣∣xi−xj∣∣2的直递性即可得到
d
i
s
t
M
{\mathrm{dist}}_{\mathbf{M}}
distM的直递性。
显然,不同的矩阵 M \mathbf{M} M会得到不同的马氏距离,这就有一个寻找最优 M \mathbf{M} M的问题。
可以使用近邻成分分析学习 M \mathbf{M} M。
(1)点 x i \boldsymbol{x}_i xi的近邻点 x j \boldsymbol{x}_j xj到它的距离用马氏距离,按“近墨者黑”的原则,距离越近影响越大。
易知“影响度”
p
p
p与“距离”
d
d
d是一个反比例关系,如图10.2所示。
显然,从图10.2知,当 d d d越来越小时, p p p变得非常大,这也是我们不希望看到的,所以,希望有一个 “上界”。 将图10.2中的图像向左平移,则得到有界,如图10.3。
如图10.3所示,不管距离多近,影响度不超过1,然而图10.3中函数的数学性质不太好,找一个图像与它相像,但数学性质好的函数代替,即有图10.4。
比较图10.3与图10.4,将二者放到一起得到图10.5。
由图10.5知,二者趋势一致且在距离 d d d足够小时二者非常接近,故这种替代是合理的。
(2)找到函数后,进一步优化
- 为避免开方,通常用距离的平方取代距离。
- 将影响度“概率化”(使其和为1),即 ∑ ( ⋅ ) = 1 \sum(\cdot)=1 ∑(⋅)=1。
故
x
j
\boldsymbol{x}_j
xj对
x
i
\boldsymbol{x}_i
xi的影响度为
e
−
d
j
2
∑
j
e
−
d
j
2
\begin{align} \frac{\mathrm{e}^{-d_j^2}}{\sum_j\mathrm{e}^{-d_j^2}} \tag{10.120} \end{align}
∑je−dj2e−dj2(10.120)
整理即得【西瓜书式(10.35)】的定义。
(3)投票。 k k k近邻本来是考虑近邻的点才投票,但若采用式(10.120)【西瓜书式(10.35)】的概率投票,远距离的点影响甚微,故不 妨把投票权放宽到整个样本集,这样就省了是否是近邻的判断。
样本集
D
D
D中,对一个具体的样本
x
i
\boldsymbol{x}_i
xi而言,每个类别的样本子集对其都有一个总影响,设与
x
i
\boldsymbol{x}_i
xi类别相同的样本
x
j
\boldsymbol{x}_j
xj组成集合,设其下标集为
Ω
i
{\Omega}_i
Ωi,且
Ω
i
{\Omega}_i
Ωi中不含
i
i
i(留一法),则预测
x
i
\boldsymbol{x}_i
xi类别的正确率为
p
i
=
∑
j
∈
Ω
i
(
x
j
按式(10.120)投票)
\begin{align} p_i=\sum_{j \in {\Omega}_i}\text{($\boldsymbol{x}_j$按式(10.120)投票)} \tag{10.121} \end{align}
pi=j∈Ωi∑(xj按式(10.120)投票)(10.121)
在整个样本集中,对每个样本都使用上述留一法得到其预测的正确率,让正确率之和
∑
i
=
1
m
p
i
\sum_{i=1}^mp_i
∑i=1mpi最大化,则得到NCA的优化目标【西瓜书式(10.38)】,可用随机梯度法求解。
本文为原创,您可以:
- 点赞(支持博主)
- 收藏(待以后看)
- 转发(他考研或学习,正需要)
- 评论(或讨论)
- 引用(支持原创)
- 不侵权
相关文章
- 李宏毅机器学习_10-2无监督学习-词语嵌入
- (《机器学习》完整版系列)第8章 集成学习——8.3 AdaBoost算法的详细推导
- (《机器学习》完整版系列)第7章 贝叶斯分类器——7.11 期望的计算、再谈贝叶斯图络学习
- (《机器学习》完整版系列)第7章 贝叶斯分类器——7.1 贝叶斯决策论(贝叶斯学派与频率学派有很大的分岐)
- (《机器学习》完整版系列)第6章 支持向量机SVM——6.2 核函数型支持向量机SVM(方法:与基本型比较来学习)
- (《机器学习》完整版系列)第5章 神经网络——5.1 误差逆传播算法(BP算法是梯度下降法的应用)
- (《机器学习》完整版系列)第4章 线性模型——4.5 决策树算法中涉及的准则(叶子、划分、剪枝)
- (《机器学习》完整版系列)第3章 线性模型——3.2 对数几率回归,俗称:逻辑回归(但它既不“逻辑”也不是“回归”)
- (《机器学习》完整版系列)第2章 模型评估与选择 ——2.3 恭喜:高考你被录取了!
- (《机器学习》完整版系列)第5章 神经网络——5.4 BP算法的高级表达(简洁之美)
- (《机器学习》完整版系列)附录 ——4、神经网络中的梯度(链式法则的图形助记)
- (《机器学习》完整版系列)附录 ——1、向量与矩阵(学习一些公式及其推导技巧)
- (《机器学习》完整版系列)第16章 强化学习——16.9 时序差分学习(Sara算法与Q-学习算法)
- (《机器学习》完整版系列)第13章 半监督学习——13.6 半监督聚类(k均值算法+约束)
- (《机器学习》完整版系列)第10章 降维与度量学习——10.5 主成分分析的目标求解(“丢掉不重要属性”是错误的)
- (《机器学习》完整版系列)第9章 聚类——9.5 密度聚类与层次聚类(DBSCAN算法、AGNES算法)
- [好课推荐]机器学习白板推导系列
- 机器学习笔记之深度玻尔兹曼机(一)玻尔兹曼机系列整体介绍
- 机器学习笔记之降维(五)从奇异值分解角度观察主成分分析
- 机器学习笔记之高斯分布(一)——使用极大似然估计计算最优参数
- 谷歌机器学习项目备受关注的四项核心
- 在opencv3中实现机器学习之:利用逻辑斯谛回归(logistic regression)分类
- 『迷你教程』最受欢迎的Python自动机器学习神器AutoML
- 赛门铁克将机器学习加入其终端安全产品线
- 机器学习算法与Python实践之(二)支持向量机(SVM)初级
- 各个大厂的机器学习平台概述
- 机器学习——支持向量机SVM之线性模型