数据挖掘十大经典算法
国际权威的学术组织 the IEEE International Conference on Data Mining (ICDM) 2006 年 12 月评
选出了数据挖掘领域的十大经典算法:C4.5, k-Means, SVM, Apriori, EM, PageRank, AdaBoost,
kNN, Naive Bayes, and CART.
不仅仅是选中的十大算法,其实参加评选的 18 种算法,实际上随便拿出一种来都可以称得上
是经典算法,它们在数据挖掘领域都产生了极为深远的影响。
1. C4.5
C4.5 算法是机器学习算法中的一种分类决策树算法,其核心算法是 ID3 算法. C4.5 算法继承
了 ID3 算法的优点,并在以下几方面对 ID3 算法进行了改进:
1) 用信息增益率来选择属性,克服了用信息增益选择属性时偏向选择取值多的属性的不足;
2) 在树构造过程中进行剪枝;
3) 能够完成对连续属性的离散化处理;
4) 能够对不完整数据进行处理。
C4.5 算法有如下优点:产生的分类规则易于理解,准确率较高。其缺点是:在构造树的过程
中,需要对数据集进行多次的顺序扫描和排序,因而导致算法的低效。
2. The k-means algorithm 即 K-Means 算法
k-means algorithm 算法是一个聚类算法,把 n 的对象根据他们的属性分为 k 个分割,k < n。
它与处理混合正态分布的最大期望算法很相似,因为他们都试图找到数据中自然聚类的中心。
它假设对象属性来自于空间向量,并且目标是使各个群组内部的均方误差总和最小。
3. Support vector machines
支持向量机,英文为 Support Vector Machine,简称 SV 机(论文中一般简称 SVM)。它是一
种監督式學習的方法,它广泛的应用于统计分类以及回归分析中。支持向量机将向量映射到
一个更高维的空间里,在这个空间里建立有一个最大间隔超平面。在分开数据的超平面的两
边建有两个互相平行的超平面。分隔超平面使两个平行超平面的距离最大化。假定平行超平
面间的距离或差距越大,分类器的总误差越小。一个极好的指南是 C.J.C Burges 的《模式识
别支持向量机指南》。van der Walt 和 Barnard 将支持向量机和其他分类器进行了比较。
4. The Apriori algorithm
Apriori 算法是一种最有影响的挖掘布尔关联规则频繁项集的算法。其核心是基于两阶段频集
思想的递推算法。该关联规则在分类上属于单维、单层、布尔关联规则。在这里,所有支持
度大于最小支持度的项集称为频繁项集,简称频集。
5. 最大期望(EM)算法
在统计计算中,最大期望(EM,Expectation–Maximization)算法是在概率(probabilistic)模
型中寻找参数最大似然估计的算法,其中概率模型依赖于无法观测的隐藏变量(Latent
Variabl)。最大期望经常用在机器学习和计算机视觉的数据集聚(Data Clustering)领域。
6. PageRank
PageRank 是 Google 算法的重要内容。2001 年 9 月被授予美国专利,专利人是 Google 创始人
之一拉里•佩奇(Larry Page)。因此,PageRank 里的 page 不是指网页,而是指佩奇,即这个