机器学习算法优缺点改进总结.docx
《机器学习算法优缺点改进总结.docx》由会员分享,可在线阅读,更多相关《机器学习算法优缺点改进总结.docx(27页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Lecture 1 Introduction to Supervised Learning(1) Expectatin Maximization(EM) Algorithm (期望值最大)(2) Linear Regression Algorithm(线性回归)(3) Local Weighted Regression(局部加权回归)(4) k-Nearest Neighbor Algorithm for Regression(回归 k 近邻)(5) Linear Classifier(线性分类)(6) Perceptron Algorithm (线性分类)(7) Fisher Discrim
2、inant Analysis or Linear Discriminant Analysis(LDA)(8) k-NN Algorithm for Classifier(分类 k 近邻)(9) Bayesian Decision Method(贝叶斯决策方法)Lecture 2 Feed-forward Neural Networks and BP Algorithm(1) Multilayer Perceptron侈层感知器)(2) BP AlgorithmLecture 3 Rudiments of Support Vector Machine(1) Support Vector Mach
3、ine(支持向量机)(此算法是重点,必考题)此处有一道必考题Lecture 4 Introduction to Decision Rule Mining(2) Decision Tree Algorithm(3) ID3 Algorithm(4) C4.5 Algorithm(4)粗糙集Lecture 5Classifier Assessment and Ensemble Methods(1)Bagging(2) Booting(3) AdaboostingLecture 6 Introduction to Association Rule Mining(1) Apriori Algorith
4、ms:2) FP-tree AlgorithmsLecture 7 Introduction to Custering Analysis(1) k-means Algorithms(2) fuzzyc-meansAlgorithms(3) k-mode Algorithms(4)DBSCAN AlgorithmsLecture 8 Basics of Feature Selection1 1) Relief Algorithms2 2) ReliefF Algorithmsn . + aAw( n)dn- ( n)式中,a为动量因子,一般取0.10.8。这时权值修正量加上了有关上一时刻权值修改
5、方向的记忆,加速了网络的收敛。加动量项法的具体原理:假设相邻两次迭代点处的梯 度方向是一致的,引入动展项可使权值的调整最增大,从而加速收敛;假设相邻两次迭代点处的梯度方向相反,引入动 量项可使权值的调整量减小,防止了来回振荡,加快了收敛。3 .串连法BP算法的收敛速度主要取决于输入-输出模式间非线性映射的复杂程度。显然,这种非线性映射关系越复杂,收敛时 间越长。因此,对那些高度复杂的非线性问题,用两个串连的BP网络代替一个BP网络,能够有效地缩短训练时间。4 .利用遗传算法优化BP算法BP算法的优点是寻优具有准确性,但它易陷入局部极小、收敛速度慢,而遗传算法(GeneticAlgoiithm,
6、GA)是基于自然 选择和遗传规律的全局优化搜索算法,具有很强的宏观搜索能力和寻优全局性。因此,在BP神经网络理论中引入遗 传算法的思想,则可以很好地到达全局寻优和快速高效的目的。Lecture 3 Rudiments of Support Vector Machine(1) Support Vector Machine(支持向量机)(此算法是重点,必考题)算法思想SVM的主要思想是针对两类分类问题,寻找一个超平面作为两类训练样本点的分割,以保证最小的分类错误率。 在线性可分的情况下,存在一个或多个超平面使得训练样本完全分开,SVM的目标是找到其中的最优超平面,最优 超平面是使得每一类数据与超平
7、面距离最近的向量与超平面之间的距离最大的这样的平面,对于线性不可分的情 况,通过使用核函数(一种非线性映射算法)将低维输入空间线性不可分的样本转化为高维特征空间使其线性可分。 优点11)小样本,并不是说样本的绝对数量少(实际上,对任何算法来说,更多的样本几乎总是能带来更好的效果), 而是说与问题的复杂度比起来,SVM算法要求的样本数是相比照拟少的。(2)非线性,是指SVM擅长应付样本数据线性不可分的情况,主要通过松弛变量1也有人叫惩罚变量)和核函数 技术来实现,(3)高维模式识别是指样本维数很高,例如文本的向量表示,如果没有经过降维处理,出现几万维的情况很正常, 其他算法 基本就没有能力应付了
8、,SVM却可以,主要是因为SVM产生的分类器很简洁,用到的样本信息很少(仅 仅用到那些称之为“支持向量的样本,此为后话),使得即使样本维数很高,也不会给存储和计算带来大麻烦(相 对照而言,kNN算法在分类时就要用到所有样本,样本数巨大,每个样本维数再一高,这口子就没法过了)。 缺点(1) SVM算法对大规模训练样本难以实施由于SVM是借助二次规划来求解支持向量,而求解二次规划将涉及m阶 矩阵的计算5为样本的个数),当m数目很大时该矩阵的存储和计算将消耗大量的机器内存和运算时间。(2)用SVM解决多分类问题存在困难改良:经典的支持向量机算法只给出了二类分类的算法,而在数据挖掘的实际应用中,一般要
9、解决多类的分类问题。 可以通过多个二类支持向量机的组合来解决。主要有一对多组合模式、对组合模式和SVM决策树; 再就是通过构造多个分类器的组合来解决。主要原理是抑制SVU固有的缺点,结合其他算法的优势,解决多类问题的分类精度。 如:与粗集理论结合,形成一种优势互补的多类问题的组合分类器。 此处有一道必考题Lecture 4 Introduction to Decision Rule Mining(1) ID3 Algorithm算法思想:补充:ID3算法(Iterative Dichotomiser 3迭代二义树3代)是一个由Ross Quinlan创造的用于决策树的算法。这个算法便 是: 从
10、信息论知识中我们知道,期望信息越小,信息增益越大,从而纯度越高。ID3算法的核心思想就是以信息 增益度量属性选择,选择分裂后信息增益最大的属性进展分裂。该算法采用自顶向卜的贪婪搜索遍历可能的决策树 空间。所以,ID3的思想便是:自顶向下的贪婪搜索遍历可能的决策树空间构造决策树(此方法是ID3算法和C4.5算法的根基);从“哪一个属性将在树的根节点被测试开场;使用统计测试来确定每一个实例属性单独分类训练样例的能力,分类能力最好的属性作为树的根结点测试(若何定义 或者评判一个属性是分类能力最好的呢这便是下文将要介绍的信息增益,or信息增益率)。然后为根结点属性的每个可能值产生一个分支,并把训练样例
11、排列到适当的分支(也就是说,样例的该属性值对应 的分支)之下。重匆这个过程,用每个分支结点关联的训练样例来选取在该点被测试的最正确属性。优点:(1)分类精度高;(2)实现对比简单,产生的规则如果用图表示出来的话,清晰易懂;优点补充:(4) ID3算法的假设空间包含了所有的决策树,不存在无解风险(5) ID3算法非常适合处理离散样本数据,利用属性结果提取分类规则,且容易理解(6)引进了信息论的中的燧,使得算法得到结点最少的决策树缺点:(1) ID3算法往往偏向于选择取值较多的属性,而在很多情况下取值较多的属性并不总是最重要的属性,即按照使 熠值最小的原则被ID3算法列为应该首先判断的属性在现实情
12、况中却并不一定非常重要。例如:在银行客户分析中, 姓名属性取值多,却不能从中得到任何信息。(简单写:由于使用信息增益,会在属性选择时偏向选择取值多的属 性)(2) ID3算法对于噪声数据敏感,ID3算法不能处理具有连续值的属性,也不能处理具有缺失数据的属性。(3)用互信息作为选择属性的标准存在一个假设,即训练子集中的正、反例的比例应与实际问题领域中正、反例 的比例一致。一般情况很难保证这两者的比例一致,这样计算训练集的互信息就会存在偏差。(4)在建造决策树时,每个结点仅含一个属性,是一种单变元的算法,致使生成的决策树结点之间的相关性不够 强。虽然在一棵树上连在一起,但联系还是松散的。(5) I
13、D3算法虽然理论清晰,但计算对比复杂,在学习和训练数据集的过程中机器内存占用率对比大,消耗资源。 (计算复杂,有很多对数计算)(6) ID3不够强健,当有一个项数据有改变时,整棵树的构造可能改变很大。改良:用R-C4.5的思想,在进展测试属性选择时,合并分类奉献小的分支,防止出现过细的分枝,提高树的强健性。 补充:(7)当训练集增加或减少的时候,决策树都会随之改变,对渐进学习不方便。改良:(1)对决策树进展剪枝。可以采用穿插验证法和参加正则化的方法。(2)使用基广决策树的combination算法,如bagging算法,randomforest算法,可以解决过拟合的问题(3)引入用户兴趣度给定
14、a(OWaWl)为用户对不确定知识的兴趣度,a的大小由决策者根据先验知识或领域知识来确定。它是一个模糊 的概念,通常指关于某一事务的先验知识,包括领域知识和专家建议,具体到决策树学习中则是指在决策树训练过 程中除了用于生成和修改决策树的实例集之外的所有影响决策树规则生成和选择的因素。(2) C4.5 Algorithm补充:既然说C4.5算法是ID3的改良算法,那么C4.5相比于ID3改良的地方有哪些呢用信息增益率来选择属性。ID3选择属性用的是子树的信息增益,这里可以用很多方法来定义信息,ID3使用的是熠 (entropy,烯是一种不纯度度量准则),也就是燧的变化值,而C4.5用的是信息增益
15、率。对,区别就在于一个是信息增 益,一个是信息增益率。1因此,C4.5抑制了 ID3用信息增益选择属性时偏向选择取值多的属性的缺乏。) 在树构造过程中进展剪枝,在构造决策树的时候,那些挂着几个元素的节点,不考虑最好,不然容易导致overfitting。 对非离散数据也能处理。能够对不完整数据进展处理算法思想:优点:(1)产生的分类规则易于理解,准确率较高。(2)对非离散数据也能处理。C4.5既可以处理离散型描述属性,也可以处理连续性描述属性。在选择某节点上的分枝属性时,对于离散型描述属 性,C4.5的处理方法与ID3一样,按照该属性本身的取值个数进展计算;对于某个连续性描述属性Ac,假设在某个
16、 结点上的数据集的样本数量为total, C4.5将作以下处理。1)将该结点上的所有数据样本按照连续型描述属性的具体数值,由小到大进展排序,得到属性值的取值序列Ale, A2c, Atotalcjo2)在取值序列中生成total-1个分割点。第i (0itotal)个分割点的取值设置为Vi= (Aic+A (i+1) c) 2它可以将 该节点上的数据集划分为两个子集.3)从total-1个分割点中选择最正确分割点。对于每一个分割点划分数据集的方式,C4.5计算它的信息增益比,并 且从中选择信息增益比最大的分割点来划分数据集。(3)能够对不完整数据进展处理。在某些情况下,可供使用的数据可能缺少某
17、些属性的值。假设(x, c(x)是样本集S中的一个训练实例,但是其属 性A的值A(x)未知。处埋缺少属性值的一种策略是赋给它结点n所对应的训练实例中该属性的最常见值;另外一种 更复杂的策略是为A的每个可能值赋予一个概率。例如,给定一个布尔属性A,如果结点n包含6个A=1和4个 A=0的实例,那么A(x)=l的概率是0.6,而A(x)=0的概率是0.4。于是,实例X的60%被分配到A=1的分支,40%被 分配到另一个分支。这些片断样例(fractional examples)的目的是计算信息增益,另外,如果有第二个缺少值的属 性必须被测试,这些样例可以在后继的树分支中被进一步细分。C4.5就是使
18、用这种方法处理缺少的属性值。(4)抑制了用信息增益来选择属性时偏向选择值多的属性的缺乏。(5)采用了一种后剪枝方法防止树的高度无节制的增长,防止过度拟合数据,该方法使用训练样本集本身来估计剪枝前后的误差,从而决定是 否真正剪枝。方法中使用的公式如下:其中N是实例的数量,f=E/N为观察到的误差率(其中E为N个实例中分类错误的个数),q为真实的误差率.,c 为置信度(C4.5算法的一个输入参数,默认值为0.25), z为对应于置信度c的标准差,其值可根据c的设定值通 过查正态分布表得到。通过该公式即可计算出真实误差率q的一个置信度上限,用此上限为该节点误差率e做一个 悲观的估计:通过判断剪枝前后
19、e的大小,从而决定是否需要剪枝。树剪枝在决策树的创立时.,由于数据中的噪声和离群点,许多分枝反映的是训练数据中的异常。剪枝方法是用来处理这 种过分拟合数据的问题。通常剪枝方法都是使用统计度量,剪去最不可靠的分枝。剪枝一般分两种方法:先剪枝和后剪枝。先剪枝方法中通过提前停顿树的构造(比方决定在某个节点不再分裂或划分训练元组的子集)而对树剪枝。一旦 停顿,这个节点就变成树叶,该树叶可能取它持有的子集最频繁的类作为自己的类。先剪枝有很多方法,比方(1) 当决策树到达一定的高度就停顿决策树的生长;(2)到达此节点的实例具有一样的特征向量,而不必一定属于同 一类,也可以停顿生长(3)到达此节点的实例个数
20、小于某个阈值的时候也可以停顿树的生长,缺乏之处是不能处 理那些数据量对比小的特殊情况(4)计算每次扩展对系统性能的增益,如果小于某个阈值就可以让它停顿生长。 先剪枝有个缺点就是视野效果问题,也就是说在样的标准下,也许当前扩展不能满足要求,但更进步扩展又能 满足要求。这样会过早停顿决策树的生长。另一种更常用的方法是后剪枝,它由完全成长的树剪去子树而形成。通过删除节点的分枝并用树叶来替换它。树 叶一般用子树中最频繁的类别来标记。C4.5采用悲观剪枝法,它使用训练集生成决策树又用它来进展剪枝,不需要独立的剪枝集。悲观剪枝法的 基本思路是:设训练集生成的决策树是T,用T来分类训练集中的N的元组,设K为
21、到达某个叶 子节点的元组个数,其中分类错误地个数为J。由于树T是由训练集生成的,是适合训练集的,因此J/K不能可信地 估计错误率。所以用(J+0.5)/K来表示。设S为T的子树,其叶节点个数为L(s), NAJ为到达此子树的叶节点的元 组个数总和,2/为此子树中被错误分类的元组个数之和。在分类新的元组时,则其错误分类个数为XAL(S)/2|其标准错误表示为:为分类错误个数,当下面的式子成立时,则删掉子树S,用叶节点代替,且S的子树不必再计算。 缺点:(1)构造树的过程中,需要对数据集进展屡次的顺序扫描和排序,因而导致算法的低效。(2) C4.5只适合于能够驻留于内存的数据集,当训练集大得无法在
22、内存容纳时程序无法运行。(3)在构造树的过程中,需要对数据集进展屡次的顺序扫描和排序,因而导致算法的低效。改良:(1) SLIQ 算法SLIQ算法对C4.5决策树分类算法的实现方法进展了改良,在决策树的构造过程中采用了 “预排序和“广度 优先策略两种技术。1)预排序。对于连续属性在每个内部结点寻找其最优分裂标准时,都需要对训练集按照该属性的取值进展排序, 而排序是很浪费时间的操作。为此,SLIQ算法采用了预排序技术。所谓预排序,就是针对每个属性的取值,把所 有的记录按照从小到大的顺序进展排序,以消除在决策树的每个结点对数据集进展的排序。具体实现时,需要为 训练数据集的每个属性创立一个属性列表,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 机器 学习 算法 优缺点 改进 总结
限制150内