机器学习算法总结

前言:

最近一段时间一直在忙秋招,在参加秋招的过程中顺便总结了一下机器学习中常用的一些算法。

1.降维(SVD,PCA)

降维是机器学习中很重要的一种思想。在机器学习中会遇到一些高维的数据集,而在高维数据集的其情形下会出现数据样本稀疏,距离计算等困难,称之为“维度灾难”;另外就是高维特征中容易出现特征之间的线性相关,即意味着特征是冗余的。基于上述问题,降维的思想就出现了。

降维的方法有很多,而且分为线性降维和非线性降维。

线性降维包括:
  • 奇异值分解(SVD)

    为什么先介绍SVD算法,因为在后面的PCA算法的实现用到了SVD算法。SVD算法不光可以用于降维算法中的特征分解,还可以用于推荐系统,以及自然语言处理等领域。是很多机器学习算法的基石。

  • 主成分分析(PCA)

    PCA算法可以说是最常用的算法,在数据压缩,消除冗余等领域有着广泛的使用。

非线性降维方法:
  • 核PCA方法

    有时数据不是线性的,无法用线性降维获得好的结果,那么这里就引入了我们的核PCA方法来处理这些问题。需要在求协方差矩阵时,将数据先映射到高维(根据低维不可分的数据在高维必定可分的原理),然后再对这高维的数据进行PCA降维处理,为了减少计算量,像支持向量机中那样用核函数来处理求内积的问题。这类方法就是核主成分分析方法(KPCA),KPCA由于要做核运算,因此计算量比PCA大很多

posted on 2019-08-27 15:03  玩转机器学习  阅读(430)  评论(1编辑  收藏  举报