吴恩达机器学习笔记(七)——无监督学习

                                                   无监督学习

1 概述

       与监督学习不同,在无监督学习中我们所拥有的数据集是不带有标签的。我们需要做的是将一系列无标签的训练数据代入到算法当中,让算法告诉我们这组数据的一些内在结构特点。

 

2 K-MEANS

2.1 主要目的

        K-均值是最普及的聚类算法,算法接受一个未标记的数据集,然后将数据聚类成不同的组。基本思想是不断迭代寻找合适的聚类中心。 

 

2.2 算法表示

       算法的主要内容就是,首先随机选出k个聚类中心,然后计算原始数据的m个点到各个聚类中心的距离,距离哪个聚类中心最近就将其归类于哪一个聚类,即c(i) = k。然后根据上述分类,计算各个聚类的质点,然后将聚类中心迭代成新分类的聚类质点再次重复上述步骤。

 

2.3 优化目标

        K-均值最小化问题,是要最小化所有的数据点与其所关联的聚类中心点之间的距离之和,因此 K-均值的代价函数(又称畸变函数 Distortion function)为:

 

       其中c(i)-c(m)表示i-m点的所属聚类,μ1-μk表示k个聚类中心点。

2.4 选择聚类数

       没有所谓最好的选择聚类数的方法,通常是需要根据不同的问题,人工进行选择的。选择的时候思考我们运用K-均值算法聚类的动机是什么,然后选择能最好服务于该目的标聚类数。例如,我们的 T-恤制造例子中,我们要将用户按照身材聚类,我们可以分成3个尺寸S,M,L:,也可以分成5个尺寸XS,S,M,L,XL,这样的选择是建立在回答“聚类后我们制造的T-恤是否能较好地适合我们的客户”这个问题的基础上作出的。

3 降维

3.1 降维目的

       降维的主要目的包括数据压缩以及数据的可视化。其中心思想都是将之前m(m相对较大)维的数据集转换成n(n较小)的数据集。在本科毕业论文的撰写过程中,我对于降维也有一些了解和实践,我感觉如果只是对特征变量进行降维来达到综合评估,综合表示的作用的话,现实生活中的实际数据确实也能达到一定的要求,例如kmo系数,以及最终对原特征值解释度也可以达到百分之90以上,但是如果要求数据压缩的话,其对原数据的解释程度要求就应该很高,实际数据在进行例如主成分分析后得到的主成分很难达到如此高的解释程度,不可避免的有部分数据信息缺失。

 

3.2 PCA定义

       我们知道PCA是一种数据降维的方法,在降低维度的过程中,我们当然想要保留更多的特征,PCA就是经过数学推导,保留最多特征同时降维的方法。

3.3 数学推导

       这在里我们以一个二维的数据集为例。涉及到内积、投影、基的线性代数知识。

 

       如果我们希望将原数据投射到新的维度当中,所需要涉及的就是原数据在新的维度上的投影,这里可以用原向量与新维度基的内积来表示。因此现在pca的算法就变成了寻找K维的新基,使得数据变换到这组基上后方差值最大。

       在这里需要协方差的理论,引入协方差方程的概念,以及对角化的线性代数知识。

 

        X表示的是原二维数据矩阵,我们将其与其转置的乘定义为协方差矩阵C,而D是投影到新的维度下的新协方差矩阵,根据右图所示的推导我们可以发现C,D之间的关系,而由于协方差的性质,新基都是正交的,因此新的协方差矩阵除对角线以外均为0.所以现在pca的问题变成了,寻找能将原协方差矩阵对角化的矩阵p,p就是我们要找的新维度的基。

3.4 步骤总结

 

1)将原始数据按列组成n行m列矩阵X
2)将X的每一行(代表一个属性字段)进行零均值化,即减去这一行的均值
3)求出协方差矩阵
4)求出协方差矩阵的特征值及对应的特征向量
5)将特征向量按对应特征值大小从上到下按行排列成矩阵,取前k行组成矩阵P
6)Y=PX即为降维到k维后的数据

3.5 实现

       现在pca实现起来还是很方便的,之前在毕业论文的撰写过程中使用过spss中的降维,只需将原始数据拉入,勾选要操作的内容即可,python上也有已有的库可以调用。在实际的操作过程中,我发现真正难的地方不是pca的实现,而是原始数据的选取。因为并不是所有的数据都能很好的使用主成分分析法,原始数据的相关性越高,主成分分析的效果也越好,也就是说在选取原始数据的时候要求其kmo系数以及巴特利特球系数都能达到一定的程度才是适合pca或因子分析的。这就对原始数据的选取需要有所了解。并且根据主成分分析的目的,对于最后选取的主成分也希望能有一定的主观解释。

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值