数据挖掘十大算法
C4.5
C4.5就是一个决策树算法,它是决策树(决策树也就是做决策的节点间的组织方式像一棵树,其实是一个倒树)核心算法ID3的改进算法,所以基本上了解了一半决策树构造方法就能构造它。
决策树构造方法:每次选择一个好的特征以及分裂点作为当前节点的分类条件。
C4.5比ID3改进的地方时:
- ID3选择属性用的是子树的信息增益(这里可以用很多方法来定义信息,ID3使用的是熵(entropy)(熵是一种不纯度度量准则)),也就是熵的变化值.而C4.5用的是信息增益率。也就是多了个率嘛。一般来说率就是用来取平衡用的,就像方差起的作用差不多,比如有两个跑步的人,一个起点是10m/s的人、其1s后为20m/s;另一个人起速是1m/s、其1s后为2m/s。如果紧紧算差值那么两个差距就很大了,如果使用速度增加率(加速度)来衡量,2个人就是一样了。在这里,其克服了用信息增益选择属性时偏向选择取值多的属性的不足。
- 在树构造过程中进行剪枝,我在构造决策树的时候好讨厌那些挂着几个元素的节点。对于这种节点,干脆不考虑最好,不然很容易导致overfitting。
- 对非离散数据都能处理,这个其实就是一个个式,看对于连续型的值在哪里分裂好。也就是把连续性的数据转化为离散的值进行处理。
- 能够对不完整数据进行处理,这个重要也重要,其实也没那么重要,缺失数据采用一些方法补上去就是了。
K-Means
k-means algorithm算法是一个聚类算法。
思想:
把n的对象根据他们的属性分为k个分割,k < n。
它与处理混合正态分布的最大期望算法很相似,因为他们都试图找到数据中自然聚类的中心。它假设对象属性来自于空间向量,并且目标是使各个群组内部的均 方误差总和最小。
Support Vector Machine(支持向量机SVM)
它是一种监督式学习的方法。
应用范围:统计分类以及回归分析
它支持向量机将向量映射到一个更高维的空间里,在这个空间里建立有一个最大间隔超平面。在分开数据的超平面的两边建有两个互相平行的超平面。分隔超平面使两个平行超平面的距离最大化。假定平行超平面间的距离或差距越大,分类器的总误差越小。
Apriori
Apriori算法是一种最有影响的挖掘布尔关联规则频繁项集的算法。
其核心思想基于两阶段频集思想的递推算法。
该关联规则在分类上属于单维、单层、布尔关联规则。在这里,所有支持度大于最小支持度的项集称为频繁项集,简称频集。
EM(期望最大化)算法
在统计计算中,最大期望(EM,Expectation–Maximization)算法是在概率(probabilistic)模型中寻找参数最大似然 估计的算法,其中概率模型依赖于无法观测的隐藏变量(Latent Variabl)。
常用领域:机器学习和计算机视觉的数据集聚(Data Clustering)领域。
PageRank
PageRank是Google算法的重要内容。
2001年9月被授予美国专利,专利人是Google创始人之一拉里·佩奇(Larry Page)。因此,PageRank里的page不是指网页,而是指佩奇,即这个等级方法是以佩奇来命名的。
PangeRank衡量价值标准:根据网站的外部链接和内部链接的数量和质量。
PageRank背后的概念是,每个到页面的链接都是对该页面的一次投票, 被链接的越多,就意味着被其他网站投票越多。这个就是所谓的“链接流行度”——衡量多少人愿意将他们的网站和你的网站挂钩。
PageRank这个概念引自学术中一篇论文的被引述的频度——即被别人引述的次数越多,一般判断这篇论文的权威性就越高。
AdaBoost
Adaboost是一种迭代算法。
其核心思想:针对同一个训练集训练不同的分类器(弱分类器),然后把这些弱分类器集合起来,构成一个更强的最终分类器 (强分类器)。
其算法本身是通过改变数据分布来实现的,它根据每次训练集之中每个样本的分类是否正确,以及上次的总体分类的准确率,来确定每个样本的权值。将修改过权值的新数据集送给下层分类器进行训练,最后将每次训练得到的分类器最后融合起来,作为最后的决策分类器。
KNN(K Nearest Neighbours)
K最近邻(k-Nearest Neighbor,KNN)分类算法,是一个理论上比较成熟的方法,也是最简单的机器学习算法之一。
该方法的思路是:如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别。
Naïve Bayes(朴素贝叶斯NB)
在众多的分类模型中,应用最为广泛的两种分类模型是决策树模型(Decision Tree Model)和朴素贝叶斯模型(Naive Bayesian Model,NBC)。
朴素贝叶斯模型发源于古典数学理论,有着坚实的数学基础,以 及稳定的分类效率。
同时,NBC模型所需估计的参数很少,对缺失数据不太敏感,算法也比较简单。
理论上,NBC模型与其他分类方法相比具有最小的误差率。
但是实际上并非总是如此,这是因为NBC模型假设属性之间相互独立,这个假设在实际应用中往往是不成立的,这给NBC模型的正确分类带来了一定影响。
在属性个数比较多或者属性之间相关性较大时,NBC模型的分类效率比不上决策树模型。而在属性相关性较小时,NBC模型的性能最为良好。
CART
CART, Classification and Regression Trees。 在分类树下面有两个关键的思想。
第一个是关于递归地划分自变量空间的想法(二元切分法);
第二个想法是用验证数据进行剪枝(预剪枝、后剪枝)。
在回归树的基础上的模型树构建难度可能增加了,但同时其分类效果也有提升。

浙公网安备 33010602011771号