学大数据必知的大数据十大经典算法
学⼤数据必知的⼤数据⼗⼤经典算法
⼀、C4.5
C4.5,是机器学习算法中的⼀个分类决策树算法,
它是决策树(决策树也就是做决策的节点间的组织⽅式像⼀棵树,其实是⼀个倒树)核⼼算法
ID3的改进算法,所以基本上了解了⼀半决策树构造⽅法就能构造它。
决策树构造⽅法其实就是每次选择⼀个好的特征以及分裂点作为当前节点的分类条件。
C4.5相⽐于ID3改进的地⽅有:
1、⽤信息增益率来选择属性。
ID3选择属性⽤的是⼦树的信息增益,这⾥可以⽤很多⽅法来定义信息,ID3使⽤的是熵(entropy,熵是⼀种不纯度度量准则),也就是熵的变化值.
⽽C4.5⽤的是信息增益率。对,区别就在于⼀个是信息增益,⼀个是信息增益率。
⼀般来说率就是⽤来取平衡⽤的,就像⽅差起的作⽤差不多,
⽐如有两个跑步的⼈,⼀个起点是10m/s的⼈、其10s后为20m/s;
另⼀个⼈起速是1m/s、其1s后为2m/s。
如果紧紧算差值那么两个差距就很⼤了,如果使⽤速度增加率(加速度,即都是为1m/s^2)来衡量,2个⼈就是⼀样的加速度。因此,C4.5克服了ID3⽤信息增益选择属性时偏向选择取值多的属性的不⾜。
2、在树构造过程中进⾏剪枝,在构造决策树的时候,那些挂着⼏个元素的节点,不考虑最好,不然容易导致overfitting。
3、对⾮离散数据也能处理。
4、能够对不完整数据进⾏处理。
⼆、The k-means algorithm 即K-Means算法
k-means algorithm算法是⼀个聚类算法,把n的对象根据他们的属性分为k个分割(k < n)。
它与处理混合正态分布的最⼤期望算法(本⼗⼤算法第五条)很相似,因为他们都试图到数据中⾃然聚类的中⼼。
它假设对象属性来⾃于空间向量,并且⽬标是使各个组内部的均⽅误差总和最⼩。
三、 Support vector machines
⽀持向量机,英⽂为Support Vector Machine,简称SV机(论⽂中⼀般简称SVM)。
它是⼀种监督式学习的⽅法,它⼴泛的应⽤于统计分类以及回归分析中。
⽀持向量机将向量映射到⼀个更⾼维的空间⾥,在这个空间⾥建⽴有⼀个最⼤间隔超平⾯。
大数据要学什么在分开数据的超平⾯的两边建有两个互相平⾏的超平⾯,分隔超平⾯使两个平⾏超平⾯的距离最⼤化。
假定平⾏超平⾯间的距离或差距越⼤,分类器的总误差越⼩。
⼀个极好的指南是C.J.C Burges的《模式识别⽀持向量机指南》。
van der Walt 和 Barnard 将⽀持向量机和其他分类器进⾏了⽐较。
四、The Apriori algorithm
Apriori算法是⼀种最有影响的挖掘布尔关联规则频繁项集的算法。
其核⼼是基于两阶段频集思想的递推算法。
该关联规则在分类上属于单维、单层、布尔关联规则。
在这⾥,所有⽀持度⼤于最⼩⽀持度的项集称为频繁项集,简称频集。
五、最⼤期望(EM)算法
在统计计算中,最⼤期望 (EM,Expectation–Maximization)算法是在概率
(probabilistic)模型中寻参数最⼤似然估计的算法,其中概率模型依赖于⽆法观测的隐藏变量(Latent Variabl)。
最⼤期望经常⽤在机器学习和计算机视觉的数据集聚(Data Clustering)领域。
六、 PageRank
PageRank是Google算法的重要内容。2001年9⽉被授予美国专利,专利⼈是Google创始⼈之⼀拉⾥·佩奇(Larry Page)。
因此,PageRank⾥的page不是指⽹页,⽽是指佩奇,即这个等级⽅法是以佩奇来命名的。
PageRank根据⽹站的外部链接和内部链接的数量和质量,衡量⽹站的价值。
PageRank背后的概念是,每个到页⾯的链接都是对该页⾯的⼀次投票,被链接的越多,就意味着被其他⽹站投票越多。
这个就是所谓的“链接流⾏度”——衡量多少⼈愿意将他们的⽹站和你的⽹站挂钩。
PageRank这个概念引⾃学术中⼀篇论⽂的被引述的频度——即被别⼈引述的次数越多,⼀般判断这篇论⽂的权威性就越⾼。
七、AdaBoost
Adaboost是⼀种迭代算法,其核⼼思想是针对同⼀个训练集训练不同的分类器(弱分类器),
然后把这些弱分类器集合起来,构成⼀个更强的最终分类器 (强分类器)。
其算法本⾝是通过改变数据分布来实现的,它根据每次训练集之中每个样本的分类是否正确,
以及上次的总体分类的准确率,来确定每个样本的权值。
将修改过权值的新数据集送给下层分类器进⾏训练,最后将每次训练得到的分类器融合起来,作为最
后的决策分类器。
在这⾥我还是要推荐下我⾃⼰建的⼤数据学习交流qq裙:522189307 , 裙 ⾥都是学⼤数据开发的,如果你正在学习⼤数据 ,⼩编欢迎你加⼊,⼤家都是软件开发党,不定期分享⼲货(只有⼤数据开发相关的),包括我⾃⼰整理的⼀份最新的⼤数据进阶资料和⾼级开发教程,欢迎进阶中和进想深⼊⼤数据的⼩伙伴。上述资料加可以领取
⼋、 kNN: k-nearest neighbor classification
K最近邻(k-Nearest Neighbor,KNN)分类算法,是⼀个理论上⽐较成熟的⽅法,也是最简单的机器学习算法之⼀。
该⽅法的思路是:如果⼀个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的
⼤多数属于某⼀个类别,则该样本也属于这个类别。
九、 Naive Bayes
在众多的分类模型中,应⽤最为⼴泛的两种分类模型是决策树模型(Decision Tree Model)和
朴素贝叶斯模型(Naive Bayesian Model,NBC)。
朴素贝叶斯模型发源于古典数学理论,有着坚实的数学基础,以及稳定的分类效率。
同时,NBC模型所需估计的参数很少,对缺失数据不太敏感,算法也⽐较简单。
理论上,NBC模型与其他分类⽅法相⽐具有最⼩的误差率。
但是实际上并⾮总是如此,这是因为NBC模型假设属性之间相互独⽴,这个假设在实际应⽤中往往是不成⽴的,这给NBC模型的正确分类带来了⼀定影响。在属性个数⽐较多或者属性之间相关性较⼤时,NBC模型的分类效率⽐不上决策树模型。
⽽在属性相关性较⼩时,NBC模型的性能最为良好。
⼗、 CART: 分类与回归树
CART, Classification and Regression Trees。在分类树下⾯有两个关键的思想:第⼀个是关于递归地划分⾃变量空间的想法;第⼆个想法是⽤验证数据进⾏剪枝。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。