十大经典数据挖掘算法

国际权威学术组织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不是指网页,而是指佩奇,即这个等级方法是以佩奇来命名的。

PageRank依据站点的外部链接和内部链接的数量和质量俩衡量站点的价值。PageRank背后的概念是,每一个到页面的链接都是对该页面的一次投票。
被链接的越多,就意味着被其它站点投票越多。

这个就是所谓的“链接流行度”——衡量多少人愿意将他们的站点和你的站点挂钩。PageRank这个概念引自
学术中一篇论文的被引述的频度——即被别人引述的次数越多,一般推断这篇论文的权威性就越高。

7. AdaBoost

Adaboost是一种迭代算法。其核心思想是针对同一个训练集训练不同的分类器(弱分类器),然后把这些弱分类器集合起来,构成一个更强的终于分类器
(强分类器)。其算法本身是通过改变数据分布来实现的,它依据每次训练集之中每一个样本的分类是否正确。以及上次的整体分类的准确率。来确定每一个样本的权
值。

将改动过权值的新数据集送给下层分类器进行训练。最后将每次训练得到的分类器最后融合起来。作为最后的决策分类器。

8. kNN: k-nearest neighbor classification

K近期邻(k-Nearest Neighbor,KNN)分类算法,是一个理论上比較成熟的方法。也是最简单的机器学习算法之中的一个。该方法的思路是:假设一个样本在特征空间中的k个最类似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别。

9. Naive Bayes

在众多的分类模型中,应用最为广泛的两种分类模型是决策树模型(Decision Tree Model)和朴素贝叶斯模型(Naive Bayesian Model,NBC)。


朴素贝叶斯模型发源于古典数学理论,有着坚实的数学基础,以
及稳定的分类效率。同一时候,NBC模型所需预计的參数非常少。对缺失数据不太敏感,算法也比較简单。理论上,NBC模型与其它分类方法相比具有最小的误差率。

可是实际上并不是总是如此。这是由于NBC模型如果属性之间相互独立。这个如果在实际应用中往往是不成立的,这给NBC模型的正确分类带来了一定影响。在属
性个数比較多或者属性之间相关性较大时,NBC模型的分类效率比不上决策树模型。而在属性相关性较小时,NBC模型的性能最为良好。

10. CART: 分类与回归树

CART, Classification and Regression Trees。

在分类树以下有两个关键的思想。第一个是关于递归地划子的参数空间的想法;第二思想是使用验证数据删减。

本文来源:http://blog.csdn.net/aladdina/

顶10从饲料网页搜索所有转载文章,百度百科最大的内容,一些来自中国的维基百科和其他网站。

时间: 06-21

十大经典数据挖掘算法的相关文章

十大经典数据挖掘算法(9) 朴素贝叶斯分类器 Naive Bayes

贝叶斯分类器 贝叶斯分类分类原则是一个对象的通过先验概率.贝叶斯后验概率公式后计算.也就是说,该对象属于一类的概率.选择具有最大后验概率的类作为对象的类属.现在更多的研究贝叶斯分类器,有四个,每间:Naive Bayes.TAN.BAN和GBN. 贝叶斯网络是一个带有概率凝视的有向无环图.图中的每个结点均表示一个随机变量,图中两结点 间若存在着一条弧.则表示这两结点相相应的随机变量是概率相依的,反之则说明这两个随机变量是条件独立的.网络中随意一个结点X 均有一个对应的条件概率表(Conditio

十大经典排序算法小结

排序可以说是套路最多的基本算法了,今天来了兴致,那就总结一下这十大排序算法吧. 冒泡法: 这可以算是知名度最高的算法之一了吧,可以说不会这个算法都不好意思说自己写过代码.冒泡排序是最简单的排序之一了,其大体思想就是通过与相邻元素的比较和交换来把小的数交换到最前面.这个过程类似于水泡向上升一样,因此而得名.不多说了,直接上代码: #include<iostream> #include<algorithm> using namespace std; #define LEN 6 int

十大经典排序算法

这世界上总存在着那么一些看似相似但有完全不同的东西,比如雷锋和雷峰塔,小平和小平头,玛丽和马里奥,Java和javascript….当年javascript为了抱Java大腿恬不知耻的让自己变成了Java的干儿子,哦,不是应该是跪舔,毕竟都跟了Java的姓了.可如今,javascript来了个咸鱼翻身,几乎要统治web领域,Nodejs,React Native的出现使得javascript在后端和移动端都开始占有了一席之地.可以这么说,在Web的江湖,JavaScript可谓风头无两,已经坐上

数据挖掘十大经典算法

一. C4.5  C4.5算法是机器学习算法中的一种分类决策树算法,其核心算法是ID3 算法.   C4.5算法继承了ID3算法的优点,并在以下几方面对ID3算法进行了改进: 1) 用信息增益率来选择属性,克服了用信息增益选择属性时偏向选择取值多的属性的不足: 2) 在树构造过程中进行剪枝: 3) 能够完成对连续属性的离散化处理: 4) 能够对不完整数据进行处理. C4.5算法有如下优点:产生的分类规则易于理解,准确率较高.其缺点是:在构造树的过程中,需要对数据集进行多次的顺序扫描和排序,因而导

数据挖掘领域十大经典算法初探

译者:July   二零一一年一月十五日 ----------------------------------------- 参考文献:国际权威的学术组织ICDM,于06年12月年评选出的数据挖掘领域的十大经典算法:C4.5, k-Means, SVM, Apriori, EM, PageRank, AdaBoost, kNN, Naive Bayes, and CART.==============博主说明:1.原文献非最新文章,只是本人向来对算法比较敏感.感兴趣,便把原文细看了下,翻译过程中

数据挖掘领域十大经典算法

国际权威的学术组织the IEEE International Conference on Data Mining (ICDM) 早前评选出了数据挖掘领域的十大经典算法:C4.5, k-Means, SVM, Apriori, EM, PageRank, AdaBoost, kNN, Naive Bayes, and CART. 不仅仅是选中的十大算法,其实参加评选的18种算法,实际上随便拿出一种来都可以称得上是经典算法,它们在数据挖掘领域都产生了极为深远的影响. 1.C4.5 C4.5算法是机

多线程十大经典案例之一 双线程读写队列数据

本文配套程序下载地址为:http://download.csdn.net/detail/morewindows/5136035 转载请标明出处,原文地址:http://blog.csdn.net/morewindows/article/details/8646902 欢迎关注微博:http://weibo.com/MoreWindows 在<秒杀多线程系列>的前十五篇中介绍多线程的相关概念,多线程同步互斥问题<秒杀多线程第四篇一个经典的多线程同步问题>及解决多线程同步互斥的常用方法

十大基础实用算法之快速排序和堆排序

快速排序是由东尼·霍尔所发展的一种排序算法.在平均状况下,排序 n 个项目要Ο(n log n)次比较.在最坏状况下则需要Ο(n2)次比较,但这种状况并不常见.事实上,快速排序通常明显比其他Ο(n log n) 算法更快,因为它的内部循环(inner loop)可以在大部分的架构上很有效率地被实现出来. 快速排序使用分治法(Divide and conquer)策略来把一个串行(list)分为两个子串行(sub-lists). 算法步骤: 1 从数列中挑出一个元素,称为 "基准"(pi

秒杀多线程第十六篇 多线程十大经典案例之一 双线程读写队列数据

版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[+] 本文配套程序下载地址为:http://download.csdn.net/detail/morewindows/5136035 转载请标明出处,原文地址:http://blog.csdn.net/morewindows/article/details/8646902 欢迎关注微博:http://weibo.com/MoreWindows 在<秒杀多线程系列>的前十五篇中介绍多线程的相关概念,多线程同步互斥问题<秒杀多