Py学习  »  机器学习算法

机器学习实战(20)—— 降维算法原理部分

人工智能爱好者社区 • 4 年前 • 567 次点击  

👇点击关注公众号👇

第一时间获取人工智能干货内容


降维属于机器学习里的非监督问题,当然,之前讲过的聚类也是非监督问题。


影响事情发展会有很多因素,不同因素之间可能也会相互影响(共线性)。


降维目的: 

1. 降低信息重叠

2. 减小工作量


降维的普遍思路

1. 产生一个多因素线性组合的新因素,能尽量代表原来的多因素。

2. 去掉不必要的因素。


降维方法

1. 特征选择:从原有特征中挑选出最佳部分特征。

2. 抽取特征:将数据从高维度空间投影到低维度空间。


特征选择

1. 去除方差小的特征

2. 单变量特征选择

3. 暴力组合法(特征多时不推荐)

4. 逐步剔除特征(贪心算法,不一定是最优解)



特征抽取

1. 将数据从高维度空间中投影到低维度的空间

2. 找出一组基向量来做线性坐标变换,使变换后的坐标符合某些特性


例如主成分分析PCA(通过变量之间的共线性来产生新变量来减少总变量)


产生的新变量即为主成分


主成分分析中的主成分特点如下:

1. 主成分保留了原始变量的大部分信息

2. 主成分个数少于原始变量个数

3. 主成分之间互不相关

4. 每个主成分都是原始变量的线性组合


X1...Xn为n维向量,主成分分析可以将n个观测量通过线性组合转换为n个新的指标。


F1 = a11X1+a12X2+...+a1nXn

F2 = a21X1+a22X2+...+a2nXn

                                 ...

Fn = an1X1+an2X2+...+annXn


主成分满足以下要求

1. 主成分系数的平方和为1 ai12+ai22+...+ain2=1

2. 主成分之间相互独立cov(Fi,Fj)=0,i不等于j

3. 主成分的方差按照重要性递减依次减小

4. Var(F1)>=Var(F2)>=...Var(Fn)



降维方法有很多,主成分分析只是抽取特征的一种。


—— 推 荐 阅 读 ——
假如,人工智能也去摆地摊
作为一个乘风破浪的程序员,我每天除了疯就是浪
程序员最卑微的瞬间
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/119679