推出分母为样本在投影空间下的类内几何距离的平方差,所以分类问题就转化到找一个
低维空间使得样本投影到该空间下时,投影下来的类间距离平方和与类内距离平方和之比最大,即最佳分类效果。
所以根据上述思想,即通过最优化下面的准则函数找到有一组最优鉴别矢量构成的投影矩阵
(这里我们也可以看出1/m可以通过分子分母约掉,所以前面所提到的第一组公式和第二组公式所表达的效果是一样的).
……………… (6)
可以证明,当
为非奇异(一般在实现LDA算法时,都会对样本做一次PCA算法的降维,
是非奇异阵,当然即使
为奇异阵也是可以解的,可以把
的列向量
消除样本的冗余度,从而保证或
对角化,这里不做讨论,假设都是非奇异的情况)时,最佳投影矩阵
恰为下来广义特征方程
………………………………………………………………………… (7)
的d个最大的特征值所对应的特征向量(矩阵d<=c-1.
根据(7)式可以推出又由于
……………………………………………… (8)
的特征向量),且最优投影轴的个数
下面给出验证:把(7)式代入(6)式可得:
四. 算法的物理意义和思考
4.1 用一个例子阐述LDA算法在空间上的意义
下面我们利用LDA进行一个分类的问题:假设一个产品有两个参数来衡量它是否合格, 我们假设两个参数分别为:
参数A 2.95 2.53 3.57 3.16 2.58 2.16 3.27
参数B 6.63 7.79 5.65 5.47 4.46 6.22 3.52
是否合格 合格 合格 合格 合格 不合格 不合格 不合格
实验数据来源:http://people.revoledu.com/kardi/tutorial/LDA/Numerical Example.html
所以我们可以根据上图表格把样本分为两类,一类是合格的,一类是不合格的,所以我们可以创建两个数据集类: cls1_data =
2.9500 6.6300 2.5300 7.7900 3.5700 5.6500
3.1600 5.4700
cls2_data =
2.5800 4.4600 2.1600 6.2200 3.2700 3.5200
其中cls1_data为合格样本,cls2_data为不合格的样本,我们根据公式(1),(算出合格的样本的期望值,不合格类样本的合格的值,以及总样本期望: E_cls1 =
3.0525 6.3850 E_cls2 =
2.6700 4.7333 E_all =
2.8886 5.6771
我们可以做出现在各个样本点的位置:
2)可以
图一
其中蓝色‘*’的点代表不合格的样本,而红色实点代表合格的样本,天蓝色的倒三角是代表总期望,蓝色三角形代表不合格样本的期望,红色三角形代表合格样本的期望。从x,y轴的坐标方向上可以看出,合格和不合格样本区分度不佳。
我们在可以根据表达式(3),(4)可以计算出类间离散度矩阵和类内离散度矩阵: Sb =
0.0358 0.1547
0.1547 0.6681 Sw =
0.5909 -1.3338 -1.3338 3.5596
我们可以根据公式(7),(8)算出L =
0.0000 0 0 2.8837
对角线上为特征值,第一个特征值太小被计算机约为0了 与他对应的特征向量为 V =
-0.9742 -0.9230
特征值以及对应的特征向量:
相关推荐: