数据挖掘十大算法
大数据时代 数据挖掘十大经典算法
1.C4.5
C4.5算法是机器学习算法中的一种分类决策树算法,其核心算法是ID3算法.C4.5算法继承了ID3算法的长处。并在下面几方面对ID3算法进行了改进:
1)用信息增益率来选择属性。克服了用信息增益选择属性时偏向选择取值多的属性的不足;
2)在树构造过程中进行剪枝;
3)可以完毕对连续属性的离散化处理。
4)可以对不完整数据进行处理。
C4.5算法有例如以下长处:产生的分类规则易于理解,准确率较高。其缺点是:在构造树的过程中。须要对数据集进行多次的顺序扫描和排序,因而导致算法的低效。
2.Thek-meansalgorithm即K-Means算法
k-meansalgorithm算法是一个聚类算法,把n的对象依据他们的属性分为k个切割,k 3.Supportvectormachines
支持向量机,英文为SupportVectorMachine,简称SV机(论文中一般简称SVM)。它是一种监督式学习的方法,它广泛的应用于统计分类以及回归分析中。支持向量机将向量映射到一个更高维的空间里,在这个空间里建立有一个最大间隔超平面。
在分开数据的超平面的两边建有两个互相平行的超平面。分隔超平面使两个平行超平面的距离最大化。假定平行超平面间的距离或差距越大。分类器的总误差越小。一个极好的指南是C.J.CBurges的《模式识别支持向量机指南》。vanderWalt和Barnard将支持向量机和其它分类器进行了比較。
4.TheApriorialgorithm
Apriori算法是一种最有影响的挖掘布尔关联规则频繁项集的算法。其核心是基于两阶段频集思想的递推算法。
该关联规则在分类上属于单维、单层、布尔关联规则。
在这里。全部支持度大于最小支持度的项集称为频繁项集,简称频集。
5.最大期望(EM)算法
在统计计算中。最大期望(EM,Expectation–Maximization)算法是在概率(probabilistic)模型中寻找參数最大似然预计的算法,当中概率模型依赖于无法观測的隐藏变量(LatentVariabl)。
最大期望经经常使用在机器学习和计算机视觉的数据集聚(DataClustering)领域。
6.PageRank
PageRank是Google算法的重要内容。
2001年9月被授予美国专利,专利人是Google创始人之中的一个拉里·佩奇(LarryPage)。因此,PageRank里的page不是指网页,而是指佩奇,即这个等级方法是以佩奇来命名的。
PageRank依据站点的外部链接和内部链接的数量和质量俩衡量站点的价值。
PageRank背后的概念是,每一个到页面的链接都是对该页面的一次投票,被链接的越多,就意味着被其它站点投票越多。这个就是所谓的“链接流行度”——衡量多少人愿意将他们的站点和你的站点挂钩。
PageRank这个概念引自学术中一篇论文的被引述的频度——即被别人引述的次数越多,一般推断这篇论文的权威性就越高。
7.AdaBoost
Adaboost是一种迭代算法。其核心思想是针对同一个训练集训练不同的分类器(弱分类器),然后把这些弱分类器集合起来。构成一个更强的终于分类器(强分类器)。其算法本身是通过改变数据分布来实现的,它依据每次训练集之中每一个样本的分类是否正确,以及上次的整体分类的准确率,来确定每一个样本的权值。将改动过权值的新数据集送给下层分类器进行训练。最后将每次训练得到的分类器最后融合起来,作为最后的决策分类器。
8.kNN:k-nearestneighborclassification
K近期邻(k-NearestNeighbor,KNN)分类算法,是一个理论上比較成熟的方法,也是最简单的机器学习算法之中的一个。
该方法的思路是:假设一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别。则该样本也属于这个类别。
9.NaiveBayes
在众多的分类模型中,应用最为广泛的两种分类模型是决策树模型(DecisionTreeModel)和朴素贝叶斯模型(NaiveBayesianModel,NBC)。朴素贝叶斯模型发源于古典数学理论,有着坚实的数学基础,以及稳定的分类效率。同一时候,NBC模型所需预计的參数非常少。对缺失数据不太敏感,算法也比較简单。理论上。NBC模型与其它分类方法相比具有最小的误差率。
可是实际上并不是总是如此,这是由于NBC模型如果属性之间相互独立,这个如果在实际应用中往往是不成立的。这给NBC模型的正确分类带来了一定影响。在属性个数比較多或者属性之间相关性较大时,NBC模型的分类效率比不上决策树模型。
而在属性相关性较小时。NBC模型的性能最为良好。
10.CART:分类与回归树
CART,ClassificationandRegressionTrees。在分类树以下有两个关键的思想。第一个是关于递归地划分自变量空间的想法;第二个想法是用验证数据进行剪枝。