机器学习简介

我是研究僧i 提交于 2019-11-28 09:41:56

主要内容

•  机器学习的概念

•  机器学习主要分类

•  监督学习三要素

•  监督学习模型评估策略

•  监督学习模型求解算法

一、机器学习的概念

•  机器学习是什么

•  机器学习的开端

•  机器学习的定义

•  机器学习的过程

•  机器学习示例

机器学习是什么

•  什么是学习

从人的学习说起

学习理论;从实践经验中总结

在理论上推导;在实践中检验

通过各种手段获取知识或技能的过程

•  机器怎么学习?

处理某个特定的任务,以大量的“经验”为基础

对任务完成的好坏,给予一定的评判标准

通过分析经验数据,任务完成得更好了

机器学习的定义

•  机器学习(Machine Learning, ML) 主要研究计算机系统对于特定任务的性能,逐步进行改善的算法和统计模型

•  通过输入海量训练数据对模型进行训练,使模型掌握数据所蕴含的潜在规律,进而对新输入的数据进行准确的分类或预测

•  是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸优化、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。

机器学习的过程

、机器学习的分类

•  机器学习的主要分类

•  无监督学习

•  无监督学习应用

•  监督学习

•  监督学习应用

机器学习主要分类

•  有监督学习:提供数据并提供数据对应结果的机器学习过程。

•  无监督学习:提供数据并且不提供数据对应结果的机器学习过程。

•  强化学习:通过与环境交互并获取延迟返回进而改进行为的学习过程。

监督学习和无监督学习

无监督学习

•  监督学习Unsupervised Learning)算法采用一组仅包含输入的数据通过寻找数据中的内在结构来进行样本的分组或聚类

  算法没有被标记或分类的测试数据中学习

•  无监督学习算法不是响应反馈,而是识别数据中的共性特征;对于一数据,可以通过判断其是否存在这种特征来做出相应的反馈

•  无监督学习的核心应用是统计学中的密度估计和聚类分析

无监督学习应用

 

《统计学习方法》 

监督学习

•  监督学习Supervised Learning算法构建了包含输入和所需输出的一组数据的数学模型这些数据称为训练数据,由一组训练样本组成。

•  监督学习主要包括分类回归

•  输出被限制为有限的一组(离散数值)使用分类算法输出可以具有范围内的任何数值(连续数值)使用回归算法

•  相似学习回归分类密切相关的一类监督机器学习,它的目标使用相似性函数样本中学习,这个函数可以度量对象之间的相似关联度它在排名推荐系统视觉识别跟踪人脸识别方面有很好的应用场景

监督学习应用

•  预测房价或房屋出售情况

三、监督学习深入介绍

•  监督学习三要素

•  监督学习实现步骤

•  监督学习模型评估策略

•  分类和回归

•  监督学习模型求解算法

监督学习三要素

监督学习实现步骤

•  得到一个有限的训练数据集

•  确定包含所有学习模型的集合

•  确定模型选择的准则,也就是学习策略

•  实现求解最优模型的算法,也就是学习算法

•  通过学习算法选择最优模型

•  利用得到的最优模型,对新数据进行预测或分析

监督学习过程示例

 

损失函数

•  损失函数用来衡量模型预测误差的大小。

•  定义:选取模型 f 为决策函数,对于给定的输入参数 Xf(X) 为预测结果, Y 为真实结果;f(X) Y 之间可能会有偏差,我们就用一个损失函数(loss function)来度量预测偏差的程度,记作 L(Y,f(X))

•  损失函数是系数的函数

•  损失函数值越小,模型就越好

损失函数

 

经验风险

训练误差和测试误差

拟合

• 把训练数据学习的太彻底,以至于把噪声数据的特征也学习到了,特征集过大,这样就会导致在后期测试的时候不能够很好地识别数据,即不能正确的分类,模型泛化能力太差,称之为拟合over-fitting)。

• 例如,想分辨一只猫,给出了四条腿、两只眼、一条尾巴、叫声、颜色,能够捕捉老鼠、喜欢吃鱼、… …,然后恰好所有的训练数据的猫都是白色,那么这个白色是一个噪声数据,会干扰判断,结果模型把颜色是白色也学习到了,而白色是局部样本的特征,不是全局特征,就造成了输入一个黑猫的数据,判断出不是猫

模型的选择

则化

卡姆剃刀

交叉验证

•  数据集划分

如果样本数据充足,一种简单方法是随机将数据集切成三部分:训练集(training set)、验证集(validation set)和测试集(test set

训练集用于训练模型,验证集用于模型选择,测试集用于学习方法评估

•  数据不充足时,可以重复地利用数据——交叉验证(cross validation

•  简单交叉验证

数据随机分为两部分,如70%作为训练集,剩下30%作为测试集

训练集在不同的条件下(比如参数个数)训练模型,得到不同的模型

在测试集上评价各个模型的测试误差,选出最优模型

•  S折交叉验证

将数据随机切分为S个互不相交、相同大小的子集;S-1个做训练集,剩下一个做测试集

重复进行训练集、测试集的选取,有S可能的选择

•  留一交叉验证

分类和回归

•  监督学习问题主要可以划分为两类,即 分类问题 回归问题

分类问题预测数据属于哪一类别。 —— 离散

回归问题根据数据预测一个数值。 —— 连续

•  通俗地讲,分类问题就是预测数据属于哪一种类型,就像上面的房屋出售预测,通过大量数据训练模型,然后去预测某个给定房屋能不能出售出去,属于能够出售类型还是不能出售类型。

•  回归问题就是预测一个数值,比如给出房屋一些特征,预测房价

•  如果将上面的房屋出售的问题改为预测房屋出售的概率,得到的结果将不再是可以售出(1)和不能售出(0),将会是一个连续的数值,例如 0.5,这就变成了一个回归问题

分类问题

精确率和召回率

•  评价分类器性能的指标一般是分类准确率(accuracy),它定义为分类器对测试集正确分类的样本数与总样本数之比

•  对于二类分类问题,常用的评价指标是精确率(precision)与召回率(recall

•  通常以关注的类为正类,其它为负类,按照分类器在测试集上预测的正确与否,会有四种情况出现,它们的总数分别记作:

TP:将正类预测为正类的数目

FN:将正类预测为负类的数目

FP:将负类预测为正类的数目

TN将负类预测为负类数目

精确率和召回率

回归问题

回归问题

•  回归问题的分类

按照输入变量的个数:一元回归和多元回归

按照模型类型:线性回归和非线性回归

•  回归学习的损失函数 —— 平方损失函数

•  如果选取平方损失函数作为损失函数,回归问题可以用著名的 最小二乘法least squares)来求解

模型求解算法(学习算法)

•  梯度下降算法

•  牛顿法和拟牛顿法

梯度下降算法

•  梯度下降(gradient descent)是一种常用的一阶优化方法,是求解无约束优化问题最简单、最经典的方法之一

•  梯度方向:函数变化增长最快的方向(变量沿此方向变化时函数增长最快)

•  负梯度方向:函数变化减少最快的方向(变量沿此方向变化时函数减少最快)

•  损失函数是系数的函数,那么如果系数沿着损失函数的负梯度方向变化,此时损失函数减少最快,能够以最快速度下降到极小值

梯度下降算法

梯度下降算法

比如我们在一座大山上的某处位置,由于我们不知道怎么下山,于是决定走一步算一步,也就是在每走到一个位置的时候,求解当前位置的梯度,沿着梯度的负方向,也就是当前最陡峭的位置向下走一步,然后继续求解当前位置梯度,向这一步所在位置沿着最陡峭最易下山的位置走一步。这样一步步的走下去,一直走到觉得我们已经到了山脚。当然这样走下去,有可能我们不能走到山脚,而是到了某一个局部的山谷处。

从上面的解释可以看出梯度下降不一定能够找到全局的最优解,有可能是一个局部最优

如果损失函数是凸函数,梯度下降法得到的解就一定是全局最优

牛顿法和拟牛顿法

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!