您好,欢迎访问三七文档
机器学习算法介绍CONTENTS目录机器学习原理支持向量机随机森林主成分分析Page3Page5Page17Page20Page322逻辑回归Page32K均值01机器学习原理3机器学习是一门研究机器获取新知识和新技能,并识别现有知识的学问。这里所说的“机器”,指的就是计算机,电子计算机,中子计算机、光子计算机或神经计算机等等。机器学习原理4机器学习(MachineLearning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习的原理是用一个或多个与数据分布最相近的数学模型来模拟、归纳、综合数据的分布和预测。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域,它主要使用归纳、综合而不是演绎。LR(逻辑回归)5逻辑回归首先,它不是一个回归模型,而是一个分类模型,它是被用来做分类的。之所以称之为回归,是因为它的学习模型是用模型的参数以最佳拟合已有的数据。(比如,根据已有的一些点,回归出它的直线参数的拟合过程,就称之为回归。)主要用途用于数据分类学习方法梯度上升法,随机梯度上升法。LR(逻辑回归)6模型特点优点:训练快、易理解、易实现缺点:模型不够强大、拟合能力有限,欠拟合,对于复杂的任务效果不够好应用场景在二分类的模型中,我们能最希望的函数是一个二值化函数,也就是h(x)=0当x阈值,h(x)=1当x阈值。LR(逻辑回归)7二值化函数特点函数如图所示:LR(逻辑回归)8虽然二值化函数是我们很想学习到的函数,但是由于它在阈值点处的跳跃性(不连续性),使得它变得不好处理(比如在该点处没有导数(梯度)的问题)。因此,我们用一个近似的函数来拟合这个函数,Sigmoid函数就是一个很好的近似函数其函数表达式及图形如下所示(值阈(0–1))LR(逻辑回归)9Sigmoid函数图形及表达式函数表达式为:相比于原始的二值化函数,sigmoid函数具有处处连续、可导的优点。LR(逻辑回归)10逻辑回归的实现为了实现逻辑回归,我们将每个特征都乘以一个回归系数wi,然后将结果相加得到一个值,并将这个值带入到sigmoid函数中,就会得到一个0–1之间的数值,而大于0.5的值被分为1类,小于0.5的被分为0类。所以,逻辑回归也被称之为一个概率估计模型。在已经确定了逻辑回归的模型,问题就在于如何学习以获得最佳的回归系数?LR(逻辑回归)11寻求回归系数的思想方法主要是采用梯度上升及其变形的方法。即要找到某个函数的最大值,最好的方法就是沿着该函数的梯度方向进行寻找(要求梯度就要求函数连续可导,所以二值化函数不能使用。),所以用sigmoid函数拟合。权重更新:其中alpha为步长,学习(训练)的停止条件一般为:迭代到达一定的次数,或者算法已经到达了一定的误差范围之内。LR(逻辑回归)12因为梯度上升法在每次更新回归系数的时候都需要遍历整个数据集合,当数据很多时不适用。改进的方法:每次只使用一个样本来更新回归系数,这种方法称之为随机梯度上升法。只是它用来寻找最小值而梯度上升法用来寻找最大值。所以总的来说,逻辑回归的计算方法很简单,就分为两步:1,计算梯度,2,更新权值。具体的权重更新方法为:LR(逻辑回归)13总结逻辑回归的目的是用Sigmoid的最佳拟合二值函数。而为了寻找非线性函数Sigmoid与二值函数最佳拟合的参数中的权值w,则通过梯度上升法来学习到w的值。因为随机梯度上升一次只需处理少量的样本,用梯度上升法来学习到w的值即节约了计算资源同时也使得算法可以在线学习。LR(逻辑回归)14在DKH中的使用训练数据格式:label1,value1,value2······Label为0,1,...,k-1Value为数值预测数据格式:value1,value2······即在训练数据格式上将label去掉结果数据格式:value1,value2--labelLR(逻辑回归)15在DKH中的使用构建分类模型方法签名:LRModelBuild(StringhostIp,StringhostName,StringhostPassword,StringjarPath,StringmasterUrl,StringinputPath,StringmodelPath,intnumClass)模型预测方法签名:LRModelPredict(StringhostIp,StringhostName,StringhostPassword,StringjarPath,StringmasterUrl,StringinputPath,StringmodelPath,StringoutputPath)02RandomForest随机森林16随机森林是一种比较新的机器学习模型。上世纪八十年代Breiman等人发明分类树的算法(Breimanetal.1984),通过反复二分数据进行分类或回归,计算量大大降低。2001年Breiman把分类树组合成随机森林(Breiman2001a),即在变量(列)的使用和数据(行)的使用上进行随机化,生成很多分类树,再汇总分类树的结果。随机森林在运算量没有显著提高的前提下提高了预测精度。随机森林对多元共线性不敏感,结果对缺失数据和非平衡的数据比较稳健,可以很好地预测多达几千个解释变量的作用(Breiman2001b),被誉为当前最好的算法之一。RandomForest随机森林17基本原理随机森林由LeoBreiman提出,它通过自助法(bootstrap)重采样技术,从原始训练样本集N中有放回地重复随机抽取k个样本生成新的训练样本集合,然后根据自助样本集生成k个分类树组成随机森林,新数据的分类结果按分类树投票多少形成的分数而定。其实质是对决策树算法的一种改进,将多个决策树合并在一起,每棵树的建立依赖于一个独立抽取的样品,森林中的每棵树具有相同的分布,分类误差取决于每一棵树的分类能力和它们之间的相关性。特征选择采用随机的方法去分裂每一个节点,然后比较不同情况下产生的误差。能够检测到的内在估计误差、分类能力和相关性决定选择特征的数目。单棵树的分类能力可能很小,但在随机产生大量的决策树后,一个测试样品可以通过每一棵树的分类结果经统计后选择最可能的分类。RandomForest随机森林18应用范围随机森林主要应用于回归和分类。分类使用:随机森林和使用决策树作为基本分类器的有些类似。以决策树为基本模型的bagging在每次bootstrap放回抽样之后,产生一棵决策树,抽多少样本就生成多少棵树,在生成这些树的时候没有进行更多的干预。而随机森林也是进行bootstrap抽样,但它与决策树的区别是:在生成每棵树的时候,每个节点变量都仅仅在随机选出的少数变量中产生。因此,不但样本是随机的,连每个节点变量(Features)的产生都是随机的。回归使用(略)RandomForest随机森林19优点在常用的很多数据集上,相对其他算法有着很大的优势,两个随机性的引入,使得随机森林具有很好的抗噪声能力且不容易陷入过拟合。它能够处理很高维度(feature很多)的数据,并且不用做特征选择,对数据集的适应能力强:既能处理离散型数据,也能处理连续型数据,数据集无需规范化可生成一个Proximities=(pij)矩阵,用于度量样本之间的相似性:pij=aij/N,aij表示样本i和j出现在随机森林中同一个叶子结点的次数,N随机森林中树的颗数RandomForest随机森林20优点在创建随机森林的时候,对generlizationerror使用的是无偏估计。训练速度快,可以得到变量重要性排序(两种:基于OOB误分率的增加量和基于分裂时的GINI下降量)。在训练过程中,能够检测到feature间的互相影响。容易做成并行化方法。实现比较简单。RandomForest随机森林21在DKH中的使用主要用于分类和回归训练数据格式:label1,value1,value2············Label为0,1,...,k-1Value为数值预测数据格式:value1,value2······即在训练数据格式上将label去掉结果数据格式:value1,value2--labelRandomForest随机森林22在DKH中的使用构建分类模型方法签名:RFClassModelBuild(StringhostIp,StringhostName,StringhostPassword,StringjarPath,StringmasterUrl,StringinputPath,StringmodelPath,intnumClass)构建回归模型方法签名:RFRegresModelBuild(StringhostIp,StringhostName,StringhostPassword,StringjarPath,StringmasterUrl,StringinputPath,StringmodelPath)模型预测方法签名:RFModelPredict(StringhostIp,StringhostName,StringhostPassword,StringjarPath,StringmasterUrl,StringinputPath,StringmodelPath,StringoutputPath)0323支持向量机0424主成分分析0525K均值THANKS谢谢
本文标题:机器学习算法介绍
链接地址:https://www.777doc.com/doc-4208133 .html