3.深度学习入门介绍--机器学习基础

机器学习的四大分支:

监督学习:是目前最常见的机器学习类型。给定一组样本(通常由人工标注),它可以学会将输入数据映射到已知目标(也叫标注)。

监督学习的应用:分类和回归

序列生成:给定一张图像,预测描述图像的文字

语法树预测:给定一个句子,预测其分解生成的语法树

目标检测:给定一张图像,在图中特定目标的周围画一个边界框。也可以表示为分类问题(给定多个候选边界框,对每个框内的目标进行分类)或分类与回归联合问题(用向量回归来预测边界框的坐标)

图像分割:给定一张图像,在特定物体上画一个像素级的掩膜(mask)

无监督学习:是指在没有目标的情况下寻找输入数据的有趣变换。无监督学习是数据分析的必备技能,在解决监督学习问题之前,为了更好的了解数据集,它通常是一个必要步骤。降维聚类是众所周知的无监督学习方法

自监督学习:自监督学习是监督学习的一个特例。他是没有人工标注的标签的监督学习,你可以将它看作没有人类参与的监督学习。标签任然存在(因为总要有什么来监督学习过程),但标签是从输入数据中生成的,通常使用启发式算法生成的。比如:自编码器

强化学习:agent接受有关环境的信息,并学会选择是某种奖励最大化的活动。目前,强化学习主要集中在研究领域,期待能在未来在有更多的实际应用。

机器学习模型的评估

机器学习的目的是可以得到泛化的模型,即在前所未见的数据上表现很好的模型。而过拟合则是核心难点。

模型评估的重点是:将数据划分为三个集合:训练集(在训练集训练模型)、验证集(在验证数据上评估模型)、测试集(在测试数据上最后测试一次)。

为什么要多一个测试集???

原因在于开发模型时总是需要调节模型配置,比如选择层数或每层大小(这叫做模型的超参数,以便于模型参数(即权重)区分开)。

这个调节过程需要使用模型在验证集上的性能作为反馈信号,这个调节过程本质上也是一种学习,如果基于模型在验证集上的性能来调节模型配置,会很快导致模型在验证集上过拟合。

造成这一现象的关键在于信息泄露。

因此你需要一个完全不同的全新的数据集来评估模型,这就是测试集。

虽然将数据分为上面三个很简单。但是,当面对数据很少时,我们有一些方法来应对这种情况。

简单的留出验证:留出一定比例的数据作为测试集。在剩余的数据上训练模型,然后再测试集上评估模型

K折验证:将数据划分为大小相通的K个分区。对于每个分区i,在剩余的K-1个分区上训练模型,然后在分区i上评估模型。最终分数等于K个分数的平均值

带有打乱数据的重复K折数据验证:多次使用K折验证,在每次将数据划分为K个分区之前都先将数据打乱,最终分数是没次K折验证分数的平均值。

数据预处理、特征工程和特征学习

神经网络的数据预处理:1.向量化(神经网络所有的输入和目标都必须是张量)2.值标准化(一般来说,将取值将大的数据或异质数据(数据的一个特征在0-1之间,另一个特征在100-200之间)输入到神经网络是不安全的。折磨做可能导致较大的梯度更新,从而导致网络无法收敛)3.处理缺失值(一般来说,将缺失值设置为0是安全的,只有0不是一个有意义的值)

特征工程:是指数据输入模型前,对数据进行硬编码的变换,以改善模型的效果。多数情况下,一个学习模型无法从任意的数据中进行学习,呈现给模型的数据因该便于模型进行学习

特征工程的本质:用更简单的方式表述问题,从而使问题变得更加容易。

深度学习出现之前,特征工程非常重要,因为经典的浅层算法没有足够大的假设空间来自己学习有用的表示。

对于现代深度学习,大部分特征工程都是不需要的,因为神将网络能够从原始数据中自动提取有用的特征。

但是,良好的特征可以让你用更少的资源、更少的输入数据更优雅的解决问题。

过拟合与欠拟合

过拟合:模型在验证集上性能总是几轮后,达到最高点,然后开始下降。

机器学习的根本问题就是优化和泛化之间的对应。优化:就是调节模型已在训练数据上得到最佳性能。泛化:是指训练好的模型在前所未见的数据上的性能好坏。

训练开始时,优化和泛化是相关的:训练数据上的损失越小,测试数据的损失也越小。这是的模型是欠拟合的。即网络还没有对训练数据中所有的相关模式建模。但是在训练数据迭代一定次数后,泛化不在提高,验证指标先是不变,然后变差,模型开始过拟合。过拟合以后,模型开始学习仅和训练数据有关的模式,但这种模式对新数据来说是错误的或者是无关紧要的。

为了防止模型从训练数据中学到错误的或者是无关紧要的模式。最优解决办法:获取更多训练数据

次优解决办法:调节模型允许存储的信息量

这种降低过拟合的方法叫做正则化。防止神经网络过拟合常用方法:最优解决办法:获取更多训练数据。减小网络大小:减小模型大小,即减小模型中可学习的参数个数(这由层数和每层的神经元个数决定)ps:深度学习模型通常很擅长拟合训练数据,但真正的挑战在于泛化,而不是拟合。

注意:为了避免过拟合和欠拟合,我们要确定模型的最佳层数和每层的最佳大小。必须在验证集上评估一系列不同的网络架构,以便为数据找到最佳的模型大小。

添加权重正则化:给定一些训练数据和一种网络架构,很多组权重值(及很多模型)都可以解释这些数据,简单模型比复杂模型更不容易过拟合。一种常见的降低过拟合方法,强制让模型权重只能取较小的值,从而限制模型的复杂度。实现方法是:像网络损失函数中添加与较大权重值相关的成本。L1正则化:添加的成本与权重系数的绝对值成正比。L2正则化:添加的成本与权重系数的平方成正比。

添加dropout正则化:是神经最有效也最常用的正则化方法之一。对某一层使用dropout,就是在训练过程中随机将该层的一些输出特征舍弃(设置为0)

机器学习的通用工作流程

定义问题与要训练的数据,有需要的话,用标签来标注数据。

选择衡量问题成功的指标

确定评估方法

开发第一个比基准更好的模型

开发过拟合的模型

基于模型在验证数据上的性能来进行模型正则化和调节超参数

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

自动驾驶--小学生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值