数据挖掘常用算法
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了数据挖掘常用算法,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含6390字,纯文字阅读大概需要10分钟。
内容图文
![数据挖掘常用算法](/upload/InfoBanner/zyjiaocheng/601/f1dc6f192dbb4111be37f9712b961baa.jpg)
1.决策树算法
决策树,又称判定树,是一种类似二叉树或多叉树的树结构。决策树是用样本的属性作为结点,用属性的取值作为分支,也就是类似流程图的过程,其中每个内部 节点表示在一个属性上的测试,每个分支代表一个测试输出,而每个树叶节点代表类或类分布。它对大量样本的属性进行分析和归纳。根结点是所有样本中信息量最 大的属性,中间结点是以该结点为根的子树所包含的样本子集中信息量最大的属性,决策树的叶结点是样本的类别值。
从树的根结点出发,将测试条件用于检验记录,根据测试结果选择适当的分支,沿着该分支或者达到另一个内部结点,使用新的测试条件或者达到一个叶结点,叶 结点的类称号就被赋值给该检验记录。决策树的每个分支要么是一个新的决策节点,要么是树的结尾,称为叶子。在沿着决策树从上到下遍历的过程中,在每个节点 都会遇到一个问题,对每个节点上问题的不同回答导致不同的分支,最后会到达一个叶子节点。这个过程就是利用决策树进行分类的过程。决策树算法能从一个或多 个的预测变量中,针对类别因变量,预测出个例的趋势变化关系。
决策树的优点:
计算量简单,可解释性强,比较适合处理有缺失属性值的样本,能够处理不相关的特征;
缺点:
容易过拟合(后续出现了随机森林,减小了过拟合现象);
2.线性回归算法
线形回归算法是一种常用的用于统计并作出预测的方法,使决策树算法的一种变体,有助于计算依赖变量和独立变量之间的线性关系,根据输入字段估计预测输出 字段的最佳线形方程,然后使用该关系进行预测。使用线性回归确定两个连续列之间的关系,代表一条直线或者平面,以评估数据列之间的关系。
线性回归优点:
实现简单,计算简单;
缺点:
不能拟合非线性数据;
3.逻辑回归算法
逻辑回归是根据输入域值对记录进行分类的统计方法,通过建立一组方程,把输入域值与输出字段每一类的概率联系起来。模型在分析二分类或有序因变量与解释 变量的关系,用自变量去预测因变量在给定某个值的概率。一旦生成模型,便可用于估计新的数据的概率。概率最大的目标类被指定为该记录的预测输出值。逻辑回 归算法是神经网络算法的一种变体,用于确定多个因素对一对结果的影响。通过对输入和输出之间的关系进行建模。来测量每个输入对输出的影响,并权衡不同输入 在完成的模型中的作用。
Logistic回归优点:
1、实现简单;
2、分类时计算量非常小,速度很快,存储资源低;
缺点:
1、容易欠拟合,一般准确度不太高
2、只能处理两分类问题(在此基础上衍生出来的softmax可以用于多分类),且必须线性可分;
4.Naive Bayes 算法
Naive Bayes 算法是 Microsoft SQL Server Analysis Services 提供的一种分类算法,用于预测性建模。Naive Bayes算法使用贝叶斯定理,假定一个属性值对给定类的影响独立于其他属性的值。与其他算法相比,该算法所需的运算量小,因而能够快速生成挖掘模型,以 发现输入列和可预测列之间的关系。可以使用该算法进行初始数据探测,在用于大型数据库时,该算法也表现出了高准确率与高速度,能与决策树和神经网络相媲 美。
算法采用监督式的学习方式,在分类之前,需要事先知道分类的类型。通过对训练样本的学习,来有效得进行分类。就是通过训练样本中的属性关系,产生训练样本的中心概念,用这些已经产生的中心概念,对未分类的数据对象进行预测。
朴素贝叶斯的优点:
对小规模的数据表现很好,适合多分类任务,适合增量式训练。
缺点:
对输入数据的表达形式很敏感。
5.KNN算法:
KNN即最近邻算法,其主要过程为:
1. 计算训练样本和测试样本中每个样本点的距离(常见的距离度量有欧式距离,马氏距离等);
2. 对上面所有的距离值进行排序;
3. 选前k个最小距离的样本;
4. 根据这k个样本的标签进行投票,得到最后的分类类别;
如何选择一个最佳的K值,这取决于数据。一般情况下,在分类时较大的K值能够减小噪声的影响。但会使类别之间的界限变得模糊。一个较好的K值可通过各种启发式技术来获取,比如,交叉验证。另外噪声和非相关性特征向量的存在会使K近邻算法的准确性减小。
近邻算法具有较强的一致性结果。随着数据趋于无限,算法保证错误率不会超过贝叶斯算法错误率的两倍。对于一些好的K值,K近邻保证错误率不会超过贝叶斯理论误差率。
注:马氏距离一定要先给出样本集的统计性质,比如均值向量,协方差矩阵等。关于马氏距离的介绍如下:
KNN算法的优点:
1. 思想简单,理论成熟,既可以用来做分类也可以用来做回归;
2. 可用于非线性分类;
3. 训练时间复杂度为O(n);
4. 准确度高,对数据没有假设,对outlier不敏感;
缺点:
1. 计算量大;
2. 样本不平衡问题(即有些类别的样本数量很多,而其它样本的数量很少);
3. 需要大量的内存;
6.SVM:
支持向量机,英文为Support Vector Machine,简称SV机(论文中一般简称SVM)。它是一种監督式學習的方法,它广泛的应用于统计分类以及回归分析中。支持向量机将向量映射到一个更 高维的空间里,在这个空间里建立有一个最大间隔超平面。在分开数据的超平面的两边建有两个互相平行的超平面。分隔超平面使两个平行超平面的距离最大化。假 定平行超平面间的距离或差距越大,分类器的总误差越小。一个极好的指南是C.J.C Burges的《模式识别支持向量机指南》。van der Walt 和 Barnard 将支持向量机和其他分类器进行了比较。
SVM算法优点:
可用于线性/非线性分类,也可以用于回归;
低泛化误差;
容易解释;
计算复杂度较低;
缺点:
对参数和核函数的选择比较敏感;
原始的SVM只比较擅长处理二分类问题;
7. The Apriori algorithm
Apriori算法是一种最有影响的挖掘布尔关联规则频繁项集的算法。其核心是基于两阶段频集思想的递推算法。该关联规则在分类上属于单维、单层、布尔关联规则。在这里,所有支持度大于最小支持度的项集称为频繁项集,简称频集。
Apriori算法优点:
易编码实现;
Apriori算法缺点:
在大数据集中比较慢。
8. k-means算法
k-means算法是一种迭代求解的聚类分析算法,其步骤是随机选取k个对象作为初始的聚类中心点,然后计算每个对象与种子聚类中心点的距离,吧每个对象分配给距离它最近的聚类中心,每分配样本后重新计算新的中心点并重复以上步骤,直到满足终止条件(中心点的位置不再发生变化)
9. Em算法
在统计计算中,最大期望(EM,Expectation–Maximization)算法是在概率(probabilistic)模型中寻找参数最大似然 估计的算法,其中概率模型依赖于无法观测的隐藏变量(Latent Variabl)。最大期望经常用在机器学习和计算机视觉的数据集聚(Data Clustering)领域。
10.AdaBoost
Adaboost是一种迭代算法,其核心思想是针对同一个训练集训练不同的分类器(弱分类器),然后把这些弱分类器集合起来,构成一个更强的最终分类器 (强分类器)。其算法本身是通过改变数据分布来实现的,它根据每次训练集之中每个样本的分类是否正确,以及上次的总体分类的准确率,来确定每个样本的权 值。将修改过权值的新数据集送给下层分类器进行训练,最后将每次训练得到的分类器最后融合起来,作为最后的决策分类器。
11. CART:分类与回归树
CART, Classification and Regression Trees。 在分类树下面有两个关键的思想。第一个是关于递归地划分自变量空间的想法;第二个想法是用验证数据进行剪枝。
12. PageRank
PageRank是Google算法的重要内容。2001年9月被授予美国专利,专利人是Google创始人之一拉里·佩奇(Larry Page)。因此,PageRank里的page不是指网页,而是指佩奇,即这个等级方法是以佩奇来命名的。
PageRank根据网站的外部链接和内部链接的数量和质量俩衡量网站的价值。PageRank背后的概念是,每个到页面的链接都是对该页面的一次投票, 被链接的越多,就意味着被其他网站投票越多。这个就是所谓的“链接流行度”——衡量多少人愿意将他们的网站和你的网站挂钩。PageRank这个概念引自 学术中一篇论文的被引述的频度——即被别人引述的次数越多,一般判断这篇论文的权威性就越高。
?
内容总结
以上是互联网集市为您收集整理的数据挖掘常用算法全部内容,希望文章能够帮你解决数据挖掘常用算法所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。