算法异同
相同点:
- 两者都是线性降维算法;
- 两者均利用了矩阵特征值分解的思想;
不同点:
- LDA为有监督的方法,要求原始数据包含类别标签PCA为无监督的方法;
- LDA降维有维数限制,必须降至数据类型数减一维及以下,PCA没有维数限制;
- LDA降维时以类间距离最大、类内距离最小为目标,PCA以所有样本间距离最大为目标;
- LDA本身可以用于分类,PCA不行;
- PCA方法下特征向量可以表示对应特征保留的“信息量”,LDA不行;
算例分析
分别利用PCA与LDA对39节点电网仿真数据进行降维,原始数据共160个特征,包括各个节点的电压、功率等信息。
原始数据共包含三类,分别为电网稳定、不稳定与潮流不收敛。
由于原始数据只包含三类数据,因此如果选择用LDA降维则必须降至二维或一维,这必然会导致大量的信息丢失;PCA则没有维数限制,可以根据需求自由选择维数,可能保留更多信息。
在进行数据可视化时,通常需要将数据降至二维方便观察,分别利用LDA与PCA讲数据降至二维可得:
可见PCA在降维时并未考虑标签信息,因此三类数据点混杂在一起;LDA则可以使三类数据点尽可能分离。
因此如果希望利用数据降维算法进行高维数据可视化,则应选择LDA算法。