原创文章,如需转载请保留出处
本博客为唐宇迪老师python数据分析与机器学习实战课程学习笔记
一.数据降维
降维就是一种对高维度特征数据预处理方法。降维是将高维度的数据保留下最重要的一些特征,去除噪声和不重要的特征,从而实现提升数据处理速度的目的。在实际的生产和应用中,降维在一定的信息损失范围内,可以为我们节省大量的时间和成本。降维也成为应用非常广泛的数据预处理方法。
降维具有如下一些优点:
1) 使得数据集更易使用。
2) 降低算法的计算开销。
3) 去除噪声。
4) 使得结果容易理解。
降维的算法有很多,比如奇异值分解(SVD)、主成分分析(PCA)、因子分析(FA)、独立成分分析(ICA)。
二. PCA主成分分析(Principal Component Analysis)
PCA(Principal Component Analysis),即主成分分析方法,是一种使用最广泛的数据降维算法。PCA的主要思想是将n维特征映射到k维上,这k维是全新的正交特征也被称为主成分,是在原有n维特征的基础上重新构造出来的k维特征。 PCA的工作就是从原始的空间中顺序地找一组相互正交的坐标轴,新的坐标轴的选择与数据本身是密切相关的。其中,第一个新坐标轴选择是原始数据中方差最大的方向,第二个新坐标轴选取是与第一个坐标轴正交的平面中使得方差最大的,第三个轴是与第1,2个轴正交的平面中方差最大的。依次类推,可以得到n个这样的坐标轴。 通过这种方式获得的新的坐标轴,我们发现,大部分方差都包含在前面k个坐标轴中,后面的坐标轴所含的方差几乎为0。于是,我们可以忽略余下的坐标轴,只保留前面k个含有绝大部分方差的坐标轴。事实上,这相当于只保留包含绝大部分方差的维度特征,而忽略包含方差几乎为0的特征维度,实现对数据特征的降维处理。
- 用途:降维中最常用的一种手段
- 目标:提取最有价值的信息(基于方差)
- 问题:降维后的数据的意义?
三. 向量的表示及基变换
3.1 内积
- 内积:
- 解释:A • B = | A || B | cos(a)
- 设向量B的模为1,则A与B的内积值等于A向B所在直线投影的矢量长度
- 向量可以表示为(3,2)
实际上表示线性组合:
x ( 1 , 0 ) T + y ( 0 , 1 ) T x(1,0)^{T} + y(0,1)^{T} x(1,0)T+y(0,1)T
3.2 基变换
-
基变换
基是正交的(即内积为0,或直观说相互垂直)
要求:线性无关 -
变换:数据与一个基做内积运算,结果作为第一个新的坐标分量,然后与第二个基做内积运算,结果作为第二个新坐标的分量
-
数据(3, 2)映射到基中坐标:
-
基变换
两个矩阵相乘的意义是将右边矩阵中的每一列向量变换到左边矩阵中每一行行向量为基所表示的空间中去
四. 协方差矩阵
- 方向:如何选择这个方向(或者说基)才能尽量保留最多的原始信息呢?一种直观的看法是:希望投影后的投影值尽可能分散
- 方差: V a r ( a ) = 1 m ∑ i = 1 m ( a i − u ) 2 Var(a) = \frac{1}{m}\sum_{i=1}^m(ai -u)^2 Var(a)=m1∑i=1