FAFU机器学习 08-2nsembleearning中文_第1页
FAFU机器学习 08-2nsembleearning中文_第2页
FAFU机器学习 08-2nsembleearning中文_第3页
FAFU机器学习 08-2nsembleearning中文_第4页
FAFU机器学习 08-2nsembleearning中文_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

机器学习基础集成学习()数据挖掘十大算法C4.5.K均值支持向量机先验的EM(最大似然)PageRank阿达博斯特KNN奈韦巴耶斯推车集成学习导言常用的集成学习算法装袋Bagging随机森林randomforest助推器boosting集合:集合方法EnsembleMethods2020/12/3集成学习第7-3课导言有人想投资XYZ公司。不过,他对它的性能并不确定。所以,他就股价年增长率是否会超过6%寻找建议?他决定接触具有不同领域经验的各种专家:XYZ公司员工:对70%。。XYZ公司财务顾问:右75%倍。股市交易员:正确70%倍。竞争对手的雇员:对60%同细分市场调研团队:右75%倍。社交媒体专家:正确65%次。2020/12/3集成学习第7-4课导言有人想投资XYZ公司。不过,他对它的性能并不确定。所以,他就股价年增长率是否会超过6%寻找建议?他决定接触具有不同领域经验的专家:在一个场景中,当所有6个专家/团队都验证这是一个好的决策(假设所有预测都是相互独立的),我们将得到综合准确率:1-30%*25%*30%*40%*25%*35%=99.92125%2020/12/3集成学习第7-5课定义集成学习是一种机器学习范式,其中多个学习者被训练来解决相同的问题也称为多分类器系统(),或基于委员会的学习()与普通机器学习方法试图从训练数据中学习一个假设不同,集成方法试图构造一组假设并将它们组合起来使用2020/12/3集成学习第7-6课定义2020/12/3集成学习第7-7课定义个别学习者()是一个集合中使用的许多学习者基础学习者()单个学习器通常由单基学习算法从训练数据中生成,以产生一个同构的集成。组件学习者()单个学习者通常由多个学习算法从训练数据中生成,形成一个异构的集成。2020/12/3集成学习第7-8课定义弱者只比随机猜测略好一点错误率:<50%大多数理论分析都适用于弱者很强的学习者呈现任意精度的分类错误率:任意小EnsemblelearningisappealingbecausethatisabletoboostweaklearnerstostronglearnersBycombiningdiverseofweaklearners2023/11/4EnsembleLearningLesson7-9DefinitionEnsemblelearningisappealingbecausethatisabletoboostweaklearnerstostronglearnersBycombiningdiverseofweaklearners2023/11/4EnsembleLearningLesson7-10集成学习主要用于改善(分类、预测、函数逼近等)模型的性能,或降低不幸选择较差模型的可能性。集成学习的其他应用包括对模型所作决策赋予置信度、选择最优(或接近最优)特征、数据融合、增量学习、非平稳学习和纠错。2023/11/4EnsembleLearningLesson7-11Scenariosforusingensemblelearning模型选择——对于给定的分类问题,什么是最合适的分类器?多层感知器(MLP)、支持向量机(SVM)、决策树、朴素贝叶斯分类器等多种竞争模型中,应选择何种类型的分类器;给定一个特定的分类算法,该算法应该选择哪种实现-例如,MLPs的不同初始化可以产生不同的决策边界,即使所有其他参数保持不变。2023/11/4EnsembleLearningLesson7-12Scenariosforusingensemblelearning数据太多或太少当训练数据量太大而无法进行单一分类器训练时,可以策略性地将数据分割成更小的子集。每个分区可以用来训练一个单独的分类器,然后使用适当的组合规则将其组合。当数据太少时,可以使用引导来训练不同的分类器,使用不同的数据引导样本,其中每个引导样本是数据的随机样本,并将其视为独立于底层分布的数据。2023/11/4EnsembleLearningLesson7-13Scenariosforusingensemblelearning分而治之某些问题对于给定的分类器来说太难解决了。2023/11/4EnsembleLearningLesson7-14Scenariosforusingensemblelearning数据融合在许多需要自动化决策的应用程序中,接收来自不同来源的数据(这些数据可能提供补充信息)并不罕见。这种信息的适当组合被称为数据或信息融合,与单独基于任何单个数据源的决策相比,可以提高分类决策的准确性。这些异构特征不能一起用于训练单个分类器(即使它们可以——通过将所有特征转换成标量值向量——这样的训练也不太可能成功)。在这种情况下,可以使用一组分类器,其中一个单独的分类器独立地训练在每个特征集上。然后,每个分类器所做的决策可以由下面描述的任何组合规则组合。2023/11/4EnsembleLearningLesson7-15Scenariosforusingensemblelearning置信度估计基于集成的系统的结构很自然地允许对这样一个系统所做的决策赋予置信度。如果绝大多数分类器都同意他们的决策,那么这样的结果就可以解释为集合对其决策具有高度的信心。然而,如果一半分类器做出一个决策,另一半做出不同的决策,这可以解释为集成对其决策的信心较低。2023/11/4EnsembleLearningLesson7-16WhyensemblessuperiortosinglesSuppose,theerrorofbaselearnersAnensemblewithvotingcanbepresentedasTheerroroftheensembleis2023/11/4EnsembleLearningLesson7-17Methodsforconstructingensembles再抽样训练实例通过对同一训练集重新采样得到的不同数据集对单个分类器进行训练,生成多个假设。操作输入特征多个假设是通过训练个体分类器在不同的表现形式,或共同特征向量的不同子集上生成的操纵输出目标C类的输出目标用一个L位码字编码,并构建一个单独的分类器来预测码字中的每一位修改分类器的学习参数采用不同的学习算法,如KNN规则中的邻域数、MPL中的初始权值等,构造了多个分类器。2023/11/4EnsembleLearningLesson7-18EnsemblecombinationrulesAlgebraiccombiners(代数结合)代数组合器是不可训练的组合器,通过代数表达式组合分类器的连续值输出。2023/11/4EnsembleLearningLesson7-19EnsemblecombinationrulesAlgebraiccombinersVotingbasedmethodsVotingbasedmethodsoperateonlabelsonlyMajority(plurality)votingWeightedmajorityvoting2023/11/4EnsembleLearningLesson7-20EnsemblecombinationrulesAlgebraiccombinersVotingbasedmethodsOthercombinationrules

Bordacount

behaviorknowledgespace

(Huang1993)"decisiontemplates"(Kuncheva2001)

Dempster-Schaferrule

(Kittler1998).Foradetailedoverviewoftheseandothercombinationrules,see(L.I.Kuncheva,CombiningPatternClassifiers,MethodsandAlgorithms.NewYork,NY:WileyInterscience,2005.).2023/11/4EnsembleLearningLesson7-21EnsembleLearningIntroductionCommonlyusedensemblelearningalgorithmsBaggingRandomforestBoostingsklearn.ensemble:EnsembleMethods2023/11/4EnsembleLearningLesson7-22CommonlyusedensemblelearningalgorithmsBagging(

bootstrap(自展法)aggregating)是最早、最直观、可能也是最简单的基于集成的算法之一。Bagging是BootstrapAggregating的英文缩写。Bagging通过在训练集的引导样本上训练单个分类器来创建一个集合。在每个引导样本上构建一个分类器2023/11/4EnsembleLearningLesson7-232023/11/4EnsembleLearningLesson7-242023/11/4EnsembleLearningLesson7-25H1H2H3H4SamplingN’exampleswithreplacementSet1Set2Set3Set4(usuallyN=N’)Ntrainingexamples2023/11/4EnsembleLearningLesson7-26y1H1H2H3H4y2y3y4Average/votingTestingdataxThisapproachwouldbehelpfulwhenyourmodeliscomplex,easytooverfit.当您的模型很复杂,容易过度拟合时,这种方法会很有帮助。e.g.decisiontreeTheperturbationinthetrainingsetduetothebootstrapresamplingcausesdifferenthypothesestobebuilt,particularlyiftheclassifierisunstableAclassifierissaidtobeunstableifasmallchangeinthetrainingdata(e.g.orderofpresentationofexample)canbeleadtoaradicallydifferenthypothesis.E.g.decisiontrees,neuralnetwork,logisticsregressionBaggingreducesvarianceIfasingleclassifierisunstable,thatis,ithashighvariance2023/11/4EnsembleLearningLesson7-27Bagging减少了方差如果单个分类器是不稳定的,也就是说,它具有高方差Bagging对于不稳定的学习算法很有效。Bagging可以略微降低稳定学习算法的性能。Bagging几乎总是有助于回归,但即使对于不稳定的学习者,它也会影响分类。2023/11/4EnsembleLearningLesson7-28Randomforest随机森林是对袋装决策树的改进。像CART这样的决策树的一个问题是它们贪婪。他们选择使用贪婪算法来分割哪个变量,以尽量减少错误。因此,即使使用Bagging,决策树也可以有很多结构上的相似性,并且在它们的预测中具有很高的相关性。如果子模型的预测是不相关的,或者充其量是弱相关的,那么将来自多个模型的预测组合在一起效果更好。2023/11/4EnsembleLearningLesson7-29Randomforest随机森林是对袋装决策树的改进。随机森林改变了学习子树的算法,使得所有子树的预测结果具有较小的相关性。随机森林算法改变了这一过程,使学习算法局限于随机样本的特征进行搜索。2023/11/4EnsembleLearningLesson7-30Randomforest随机森林是对袋装决策树的改进。动机:减少分类器之间的错误相关性主要思想:建立大量未修剪的决策树密钥:在每个节点上随机选择要拆分的特征2023/11/4EnsembleLearningLesson7-31Randomforest随机森林是如何运作的每棵树都是在N个示例的训练集的引导样本上生长的。指定的数字m远小于变量m的总数(例如m=sqrt(m))。在每个节点上,从m中随机选择m个变量。使用的拆分是对这些m个变量的最佳拆分。最后的分类是通过树的多数票来完成的。2023/11/4EnsembleLearningLesson7-32gcForestDeepForest:TowardsAnAlternativetoDeepNeuralNetworksgcForest采用了cascade的结构,每层接受特征信息,经过处理后传给下一层。每一层都是一个决策树深林的总体,也就是由多个随机深林组成。随机深林的类型越多越好。论文中给定的有两种类型的随机深林,蓝色表示randomforests,黑色表示complete-randomtreeforests。2023/11/4EnsembleLearningLesson7-33gcForestDeepForest:TowardsAnAlternativetoDeepNeuralNetworks与需要在超参数整定上下大力气的深层神经网络相比,gcForest更易于训练;即使在我们的实验中将其应用于不同领域的不同数据,通过几乎相同的超参数设置也可以获得优异的性能。gcForest的训练过程是有效的,用户可以根据可用的计算资源控制训练成本。由于gcForest自然倾向于并行实现,所以效率可以进一步提高。此外,与需要大规模训练数据的深层神经网络相比,gcForest即使在只有小规模训练数据的情况下也能很好地工作2023/11/4EnsembleLearningLesson7-34PerformanceofgcForestImageCategorizationFaceRecognitionMusicClassificationHandMovementRecognition…2023/11/4EnsembleLearningLesson7-35gcForest

Officialimplementationforthepaper'Deepforest:Towardsanalternativetodeepneuralnetworks'Pythonimplementationofdeepforestmethod:gcForest2023/11/4EnsembleLearningLesson7-36BoostingBoosting

isa

machinelearningensemble

meta-algorithm

forprimarilyreducing

bias,andalsovariancein

supervisedlearning,andafamilyofmachinelearningalgorithmswhichconvertweaklearnerstostrongones.Boosting

alsocreatesanensembleofclassifiersbyresamplingthedata,whicharethencombinedbymajorityvotinginboosting,resamplingisstrategicallygearedtoprovidethemostinformativetrainingdata(最具信息的训练数据,即前面分类器预测错误的训练数据)foreachconsecutiveclassifierBoosting是一种机器学习集成元算法,主要用于减少有监督学习中的偏差和方差,以及将弱学习者转化为强学习者的机器学习算法家族。Boosting还通过重新采样数据来创建一个分类器集合,然后通过多数投票进行组合在boosting中,重采样策略性地为每个连续的分类器提供信息量最大的训练数据2023/11/4EnsembleLearningLesson7-37Boosting[Schapire,1989]2023/11/4EnsembleLearningLesson7-38AdaBoostAdaBoost(adaptiveboosting)将Boosting扩展到多类和回归问题。使用重加权而不是重采样,并自适应地对每个数据示例进行加权。错误分类的数据示例权重较高(算法将重点关注这些示例)每轮提升学习一个新的(简单)分类器的加权数据集。对这些分类器进行加权,以将它们组合成一个强大的分类器。2023/11/4EnsembleLearningLesson7-392023/11/4EnsembleLearningLesson7-40EnsembleLearningIntroductionCommonlyusedensemblelearningalgorithmsBaggingRandomforestBoostingsklearn.ensemble:EnsembleMethods2023/11/4EnsembleLearningLesson7-41sklearn.ensemble:EnsembleMethodsThe

sklearn.ensemble

moduleincludesensemble-basedmethodsforclassification,regressionandanomalydetection.2023/11/4EnsembleLearningLesson7-42ensemble.AdaBoostClassifier([…])AnAdaBoostclassifier.ensemble.AdaBoostRegressor([base_estimator,

…])AnAdaBoostregressor.ensemble.BaggingClassifier([base_estimator,

…])ABaggingclassifier.ensemble.BaggingRegressor([base_estimator,

…])ABaggingregressor.ensemble.RandomForestClassifier([…])Arandomforestclassifier.ensemble.RandomForestRegressor([…])Arandomforestregressor.ensemble.RandomTreesEmbedding([…])Anensembleoftotallyrandomtrees.ensemble.VotingClassifier(estimators[,

…])SoftVoting/MajorityRuleclassifierforunfittedestimators.sklearn.ensemble:EnsembleMethodsclass

sklearn.ensemble.BaggingClassifier(base_estimator=None,

n_estimators=10,

max_samples=1.0,

max_features=1.0,

bootstrap=True,

bootstrap_features=False,

oob_score=False,

warm_start=False,

n_jobs=None,

random_state=None,

verbose=0)该算法包含了一些文献中的工作。当数据集的随机子集被抽取为样本的随机子集时,这种算法称为粘贴[1]。如果样品是用替代品抽取的,那么这种方法被称为装袋法[2]。当数据集的随机子集被抽取为特征的随机子集时,这种方法被称为随机子空间[3]。最后,当基估计量建立在样本和特征的子集上时,这种方法被称为随机补丁[4]。2023/11/4EnsembleLearningLesson7-43sklearn.ensemble:EnsembleMethodsclass

sklearn.ensemble.RandomForestClassifier(n_estimators=’warn’,

criterion=’gini’,

max_depth=None,

min_samples_split=2,

min_samples_leaf=1,

min_weight_fraction_leaf=0.0,

max_features=’auto’,

max_leaf_nodes=None,

min_impurity_decrease=0.0,

min_impurity_split=None,

bootstrap=True,

oob_score=False,

n_jobs=None,

random_state=None,

verbose=0,

warm_start=False,

class_weight=None)随机森林是一种元估计器,它在数据集的不同子样本上拟合多个决策树分类器,并使用平均来提高预测精度和对拟合的控制。子样本大小始终与原始输入样本大小相同,但如果bootstrap=True(默认值),则使

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论