数据挖掘十大算法总结--核心思想,算法优缺点,应用领域,数据挖掘优缺点
本文所涉算法均只概述核心思想,具体实现细节参看“数据挖掘算法学习”分类下其他文章,不定期更新中。转载请注明出处,谢谢。
参考了许多资料加上个人理解,对十大算法进行如下分类:
•分类算法:C4.5,CART,Adaboost,NaiveBayes,KNN,SVM
•聚类算法:KMeans
•统计学习:EM
•关联分析:Apriori
•链接挖掘:PageRank
其中,EM算法虽可以用来聚类,但是由于EM算法进行迭代速度很慢,比kMeans性能差很多,并且KMeans算法 聚类效果没有比EM差多少,所以一般用kMeans进行聚类,而不是EM。EM算法的主要作用是用来进行参数估计,故将其分入统计学习类。SVM算法在回归分析,统计方面也有不小的贡献,并且在分类算法中也占有一定地位,思考了下还是将SVM分入分类算法中。对分类有不同看法的读者欢迎留言讨论。
以下逐一介绍。
分类算法--C4.5 详细讲解参见数据挖掘算法学习(五)C4.5算法
•核心思想:以信息增益率为衡量标准实现对数据归纳分类
•算法优点:产生的分类规则易于理解,准确率较高
•算法缺点:在构造树的过程中,需要对数据集进行多次的顺序扫描和排序,因而导致算法的低效
•应用领域:临床决策、生产制造、文档分析、生物信息学、空间数据建模等
分类算法--CART 详细讲解参见数据挖掘算法学习(六)CART算法
•核心思想:以基于最小距离的尼基指数估计函数为衡量标准对数据进行递归分类
•算法优点:抽取规则简便且易于理解;面对存在缺失值、变量数多等问题时非常稳健
•算法缺点:要求被选择的属性只能产生两个子节点;类别过多时,错误可能增加的较快
•应用领域:信息失真识别,电信业潜在客户识别,预测贷款风险等等
分类算法--Adaboost 详细讲解参见数据挖掘算法学习(八)Adaboost算法
•核心思想:针对同一个训练集训练不同的分类器(弱分类器),然后把这些弱分类器集合起来,构成一个更强的最终分类器(强分类器)
•算法优点:高精度,简单无需做特征筛选,不会过度拟合
•算法缺点:训练时间过长,执行效果依赖于弱分类器的选择
•应用领域:广泛应用于人脸检测、目标识别等领域
分类算法--NaiveBayes 详细讲解参见数据挖掘算法学习(三)NaiveBayes算法
•核心思想:通过某对象的先验概率,利用贝叶斯公式计算出其后验概率,即该对象属于某一类的概率,选择具有最大后验概率的类作为该对象所属的类
•算法优点:算法简单,所需估计的参数很少,对缺失数据不太敏感
•算法缺点:属性个数比较多或者属性之间相关性较大时,分类效率下降
•应用领域:垃圾邮件过滤,文本分类
分类算法--KNN
•核心思想:如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别
•算法优点:简单,无需估计参数,无需训练,适合于多分类问题
•算法缺点:计算量较大;可解释性较差,无法给出决策树那样的规则
•应用领域:客户流失预测、欺诈侦测等(更适合于稀有事件的分类问题)
分类算法--SVM 详细讲解参见数据挖掘算法学习(七)SVM算法
•核心思想:建立一个最优决策超平面,使得该平面两侧距离平面最近的两类样本之间的距离最大化,从而对分类问题提供良好的泛化能力
•算法优点:更好的泛化能力,解决非线性问题的同时避免维度灾难,可找到全局最优
•算法缺点:运算效率低,计算时占用资源过大
•应用领域:遥感图像分类,污水处理过程运行状态监控等
聚类算法--KMeans 详细讲解参见数据挖掘算法学习(一)KMeans算法
•核心思想:输入聚类个数k,以及包含n个数据对象的数据库,输出满足方差最小标准的k个聚类
•算法优点:运算速度快
•算法缺点:聚类数目k是一个输入参数,不合适的k值可能返回较差的结果
•应用领域:图片分割,分析商品相似度进而归类商品,分析公司的客户分类以使用不同的商业策略
统计学习--EM
•核心思想:通过E步骤和M步骤使得期望最大化
•算法优点:简单稳定
•算法缺点:迭代速度慢,次数多,容易陷入局部最优
•应用领域:参数估计,计算机视觉的数据集聚
关联分析--Apriori
•核心思想:基于两阶段频集思想挖掘关联规则的算法
•算法优点:简单、易理解、数据要求低
•算法缺点:I/O负载大,产生过多的候选项目集
•应用领域:消费市场价格分析,入侵检测,移动通信领域
链接挖掘--PageRank
•核心思想:基于从许多优质的网页链接过来的网页,必定还是优质网页的回归关系,来判定所有网页的重要性
•算法优点:完全独立于查询,只依赖于网页链接结构,可以离线计算
•算法缺点:忽略了网页搜索的时效性;旧网页排序很高,存在时间长,积累了大量的in-links,拥有最新资讯的新网页排名却很低,因为它们几乎没有in-links
•应用领域:页面排序
国际权威的学术组织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背后的概念是,每个到页面的链接都是对该页面的一次投票, 被链......余下全文>>
有十大经典算法: 我是看谭磊的那本书学的。。。
下面是网站给出的答案:
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是一种迭代算法,其核心思想是针对同一个训练集训练不同的分类器(弱分类器),然后把这些弱分类器集合起来,构成一个更强的最终分类器
数据分析咨询请扫描二维码
自学数据分析可能是一条充满挑战却又令人兴奋的道路。随着数据在现代社会中的重要性日益增长,掌握数据分析技能不仅能提升你的就 ...
2024-11-14数据分析相关职业选择 数据分析领域正在蓬勃发展,为各种专业背景的人才提供了丰富的职业机会。从初学者到有经验的专家,每个人 ...
2024-11-14数据挖掘与分析在金融行业的使用 在当今快速发展的金融行业中,数据挖掘与分析的应用愈发重要,成为驱动行业变革和提升竞争力的 ...
2024-11-14学习数据挖掘需要掌握哪些技能 数据挖掘是一个不断发展的领域,它结合了统计学、计算机科学和领域专业知识,旨在从数据中提取有 ...
2024-11-14统计学作为一门基于数据的学科,其广泛的应用领域和多样的职业选择,使得毕业生拥有丰厚的就业前景。无论是在政府还是企业,统计 ...
2024-11-14在当今高速发展的技术环境下,企业正在面临前所未有的机遇和挑战。数字化转型已成为企业保持竞争力和应对市场变化的必由之路。要 ...
2024-11-13爬虫技术在数据分析中扮演着至关重要的角色,其主要作用体现在以下几个方面: 数据收集:爬虫能够自动化地从互联网上抓取大量数 ...
2024-11-13在数据分析中,数据可视化是一种将复杂数据转化为图表、图形或其他可视形式的技术,旨在通过直观的方式帮助人们理解数据的含义与 ...
2024-11-13在现代银行业中,数字化用户行为分析已成为优化产品和服务、提升客户体验和提高业务效率的重要工具。通过全面的数据采集、深入的 ...
2024-11-13在这个数据飞速增长的时代,企业若想在竞争中占据优势,必须充分利用数据分析优化其营销策略。数据不仅有助于理解市场趋势,还可 ...
2024-11-13数据分析行业的就业趋势显示出多个积极的发展方向。随着大数据和人工智能技术的不断进步,数据分析在各行各业中的应用变得越来越 ...
2024-11-13市场数据分析是一门涉及多种技能和工具的学科,对企业在竞争激烈的市场中保持竞争力至关重要。通过数据分析,企业不仅可以了解当 ...
2024-11-13数据分析与数据挖掘是数据科学领域中两个关键的组成部分,它们各有独特的目标、方法和应用场景。尽管它们经常在实际应用中结合使 ...
2024-11-13在如今这个数据驱动的时代,数据分析能力已经成为许多行业的重要技能。无论是为工作需要,还是为了职业转型,掌握数据分析都能够 ...
2024-11-13在如今这个数据驱动的时代,数据分析能力已经成为许多行业的重要技能。无论是为工作需要,还是为了职业转型,掌握数据分析都能够 ...
2024-11-13作为一名业务分析师,你肩负着将业务需求转化为技术解决方案的重任。面试这一角色时,涉及的问题多种多样,涵盖技术技能、分析能 ...
2024-11-13自学数据分析可能看似一项艰巨的任务,尤其在开始时。但是,通过一些策略和方法,你可以系统地学习和掌握数据分析的相关知识和技 ...
2024-11-10Excel是数据分析领域中的一款强大工具,它凭借其灵活的功能和易用的界面,成为了许多数据分析师和从业者的首选。无论是简单的数 ...
2024-11-10在快速发展的商业环境中,数据分析能力已经成为许多行业的核心竞争力。无论是初学者还是经验丰富的专家,搭建一个有效的数据分析 ...
2024-11-10在如今的数据驱动世界,数据分析师在各行各业中扮演着至关重要的角色。随着企业越来越依赖数据决策,数据分析职位的需求不断增加 ...
2024-11-10