百面机器学习|第四章 降维知识点


前言

此为本人学习《百面机器学习——算法工程师带你去面试》的学习笔记

第四章 降维

引导语

常见的降维方法有:主成分分析、线性判别分析、等距映射、局部线性嵌入、拉普拉斯特征映射、局部保留投影灯。本章主要讲述主成分分析和线性判别分析。

1、PCA最大方法理论

1、PCA(Principal Components Analysis主成分分析)的基本思想:在信号处理领域,我们认为信号具有较大方差,噪声具有较小方差,信号与噪声之比称为**信噪比**。信噪比越大意味着数据质量越好。


图4.1 二维空间数据主成分的直观可视化

如上图黄线所处的轴(主成分所在的轴,主轴),数据分布得更为分散,意味着数据在这个方向上方差更大,是我们想要的轴。PCA的目标是**最大化投影方差**,也就是**让数据在主轴上投影的方差最大**。(其实还可以从其他思路分析,如从最小回归误差角度得到新的目标函数,但最终和最大化投影方差是等价的。)

2、PCA求解方法:(关键步骤是**求协方差矩阵的特征值**)

> 对样本数据进行中心化处理({, ,...,}={-u,-u,...,-u},u为均值)。

> 求样本协方差矩阵

> 对协方差矩阵进行特征分解,将特征值从大到小排列。

> 取特征值前d大对应的特征向量w1,w2,...,wd,通过以下映射将n维样本映射到d维。(原倍利用d次,新的的第d维就是在第d个主成分wd方向上的投影)

定义降维后的信息**占比**为(特征值平方和之比)

3、PCA扩展知识:PCA是一种线性降维方法,虽然经典但是又有一定局限性,通过**核映射**对PCA进行扩展可以得到核主成分分析(KPCA),也可以通过**流形映射**的降维的方法,比如等距映射、局部线性嵌入、拉普拉斯特征映射等,对一些PCA效果不好的复杂数据集进行**非线性降维**操作。

2、PCA最小平方误差理论

1、从回归的角度定义PCA的目标并求解:上一节求解得到一条直线使得样本点投影到该直线上的方差最大,从求解直线的思路出发,可以将问题转化为一个回归问题,最小化所有点到直线的距离平方之和。


图4.3 最小化样本点到直线的距离平方之和

经过推导之后,发现从最小平方误差的角度与最大方差角度殊途同归,从不同的目标函数出发,都得到了相同的求解方法

3、线性判别分析

1、线性判别分析(Linear Discriminant Analysis,LDA)是一种有监督学习算法(PCA是无监督),PCA没有考虑数据的标签,只是把原数据映射到一些方差比较大的方向上去而已,如下图,如果用PCA降维,则会让数据变得难以区分。


图4.4 两个不同类别的数据

2、线性判别分析的中心思想:最大化类间距离最小化类内距离。如下图,如果只采用最大化两类投影中心距离的准则,则会得到左图(a)的结果,这样两类样本有一定的重叠,效果不好。所以在此基础上还要加上最小化类内距离,如右图(b)。

图4.5

3、我们最大化的目标函数定义为类内距离和类内距离的比值。经过公式推导,我们得到投影方向是最大的特征值对应的特征向量。其中是类内散度矩阵,;为类间散度矩阵。我们假设标签分为两类,(第四节会讲多标签情况),此处只需要要求**样本的均值**和**类内方差**就可以马上得到最佳投影方向w。

4、LDA相比PCA更善于对有类别信息的数据进行降维处理,但它对数据的分布做了很强的假设。例如:每个类数据都是高斯分布、各个类的协方差相等。尽管这些假设在实际中并不一定满足,但它依然是一种非常有效的降维方法。

5、LDA是一个线性模型,它对噪声的鲁棒性较好,但由于模型简单,表达能力有一定局限性,可以通过引入核函数扩展LDA方法用力处理分布较为复杂的数据。

4、线性判别分析与主成分分析

1、LDA如何扩展到高维:前面定义的类内散度矩阵在类别增加到N时仍然满足定义;为类间散度矩阵只是用类别为2的情况,假设增加到3类,我们取一个三个类的中心点的平均,用表示三个中心点的均值,也是全部样本的中心

定义一个新的矩阵来表示全局整体的散度,称为全局散度矩阵,,则可以表示为,即可像标签为两类的情况一样,通过求解矩阵的特征值得到最佳投影方向w。

2、高维LDA求解方法为:

计算数据集中每个样本均值向量,和总体均值向量。

计算类内散度矩阵,全局散度矩阵,并得到类间散度矩阵。

对矩阵进行特征值分解,将特征值从大到小排列

取特征值前d大的对应特征向量w1,w2,...,wd,与PCA一样,通过下列映射将n为样本映射到d维。

3、PCA和LDA在应用上的不同的举例如下:

语音识别领域中,从一段音频中提取出人的语音信号,可以用PCA降维,过滤掉一些固有频率的背景噪声。但是如果我们的需求是从这段音频中区分出声音属于那个人,则应该用LDA降维,使每个人的语音信号具有区分性。

人脸识别领域中,基于PCA的人脸识别方法也称为特征脸(Eigenface),能保留最佳描述特征。如果想要达到更好的人脸识别效果,应该用LDA方法对数据集进行降维,使得不同人脸在投影后的特征具有一定区分性。

4、PCA和LDA都是线性降维方法,对于非线性数据,可以通过核映射方法对二者进行扩展得到更好的降维效果。

你可能感兴趣的:(百面机器学习|第四章 降维知识点)