[机器学习]LDA 线性判别分析 约束公式详解 周志华机器学习 笔记

版权声明:转载请说明Zhonglihao原创 https://blog.csdn.net/xeonmm1/article/details/84206063

1.线性判别分析的基本出发点

       借用一下周教授传奇大作西瓜书华人区《机器学习》配图,线性判别分析是很老的技术了,最早提出于1936年,线性判别分析的主要思想是:将需要分类的向量投影到一个超平面,投影后同类别的向量将集中一起,容易通过简单的距离比较对两类数据进行分类。

2.线性判别分析的相关公式详解

公式1:投影转换

y = \omega ^{T} x

       这个公式的含义是,x为数据的向量,wt为投影平面的法向量,通过矩阵相乘后将数据转换为超平面上的点,这个点y也是一个向量,这里比较难的是,不能用常规的笛卡尔坐标去理解超平面的矩阵计算,在高维空间中,不存在什么y = kx函数映射,例如x = [1,2,2,1]这个四维向量,就是直接指代4维空间中的那一点,不存在任何y(你也可以理解为y已经在[1,2,2,1]里面)在这个维度系里面,所以回到这个这个公式理解就是,将一个空间中的向量x,通过被投影的超平面的法向量 矩阵乘法 转化为空间中的另一个向量y(此y非上面的函数结果y)。

       设两类数据的中心向量为u0,u1,根据上面的公式可知投影后的中心点为\omega ^{T} \mu_{0}\omega ^{T} \mu_{1},这时,我们希望两类投影点的距离尽量大,所以类间间距的约束可定义为:

公式2:

\left \| \omega ^{T} \mu_{0} - \omega ^{T} \mu_{1} \right \|^{2}_{2}

       这个公式使用了一个二范数,并对二范数进行平方计算,所以最终输出就是y = x_{1}^{^{2}}^{^{}}+x_{2}^{^{2}}^{^{}}+x_{3}^{^{2}}^{^{}}+...+x_{n}^{^{2}}^{^{}},也就是说对||·||内的向量每一个元素进行平方计算 并相加求和,因此公式2也可以写为

\left \| \omega ^{T} \mu_{0} - \omega ^{T} \mu_{1} \right \|^{2}_{2} = \omega ^{T}\left \| \mu_{0} - \mu_{1} \right \|^{2}_{2}\omega = \omega ^{T}(\mu_{0} - \mu_{1})(\mu_{0} - \mu_{1})^{T} \omega

       上面公式的最右项就是西瓜书《机器学习》中公式(3.32)的分子。

       

       在约束完类间间距后,我们还希望类内的元素足够“相近”,这里,我被周教授的协方差公式搞得一头雾水,完全不知道那个\omega^{^{T}}\Sigma_{0} \omega是怎么来的,这里我们参考一下JerryLead博主的推导过程,先忽略周教授的推导结果:

http://www.cnblogs.com/jerrylead/archive/2011/04/21/2024384.html

公式3

 s_{0}{^{2}}= \sum_{y\subset w_{0}}^{ }(y - \widetilde{\mu _{0}})^{2} 

       上式的意义是,\widetilde{\mu _{0}}是0类数据的投影中心,y是各个0类数据中的各个向量投影,通过公式3可以计算类内向量投影到所有向量中心投影的方差,这个s0方差越小,代表这个类投影后元素之间比较紧密,对公式3使用投影公式1转换可得

s_{0}{^{2}} = \sum_{ }^{ }( \omega ^{T} x - \omega ^{T} {\mu _{0}})^{2}

       这里,使用了sigma连加符号,连加元素的平方,这个跟公式二中的展开是一样的y = x_{1}^{^{2}}^{^{}}+x_{2}^{^{2}}^{^{}}+x_{3}^{^{2}}^{^{}}+...+x_{n}^{^{2}}^{^{}},所以上式同样可以展开为

s_{0}{^{2}} = \omega ^{T}\sum_{ }^{ }( x - {\mu _{0}})^{2}\omega 

       上式中\sum_{ }^{ }( x - {\mu _{0}})^{2}就是协方差矩阵啦

\sum_{ }^{ }( x - {\mu _{0}})^{2} = \sum_{ }^{ }( x - {\mu _{0}})( x - {\mu _{0}})^{T}

       也可以表示为\Sigma_{0},也就是《机器学习》中一开始出现的公式

所以我们现在容易知道

s_{0}{^{2}} + s_{1}{^{2}} = \omega ^{T}\Sigma_{0}\omega + \omega ^{T}\Sigma_{1}\omega

后面就是书中求公式最大化的过程,比较容易理解,这里就不解释了。

猜你喜欢

转载自blog.csdn.net/xeonmm1/article/details/84206063