什么是端到端的深度学习

深度学习中最令人振奋的最新动态之一就是端到端深度学习的兴起,那么端到端学习到底是什么呢?简而言之,以前有一些数据处理系统或者学习系统,它们需要多个阶段的处理。那么端到端深度学习就是忽略所有这些不同的阶段,用单个神经网络代替它。

如图所示,以语音识别为例,传统上,语音识别需要很多阶段的处理。首先你会提取一些特征,一些手工设计的音频特征,在提取出一些低层次特征之后,你可以应用机器学习算法在音频片段中找到音位。然后你将音位串在一起构成独立的词,然后你将词串起来构成音频片段的听写文本。

这种有很多阶段的流水线相比,端到端深度学习做的是,你训练一个巨大的神经网络,输入就是一段音频,输出直接是听写文本。AI的其中一个有趣的社会学效应是,随着端到端深度学习系统表现开始更好,有一些花了大量时间或者整个事业生涯设计出流水线各个步骤的研究员,还有其他领域的研究员,不只是语言识别领域的,也许是计算机视觉,还有其他领域,他们花了大量的时间,写了很多论文,有些甚至整个职业生涯的一大部分都投入到开发这个流水线的功能或者其他构件上去了。而端到端深度学习就只需要把训练集拿过来,直接学到了x和y之间的函数映射,直接绕过了其中很多步骤。

端到端深度学习的挑战之一是,你可能需要大量数据才能让系统表现良好,比如,你只有3000小时数据去训练你的语音识别系统,那么传统的流水线效果真的很好。但当你拥有非常大的数据集时,比如10,000小时数据或者100,000小时数据,这样端到端方法突然开始很厉害了。所以当你的数据集较小的时候,传统流水线方法其实效果也不错,通常做得更好。你需要大数据集才能让端到端方法真正发出耀眼光芒

如果你的数据量并不足够很大。尝试把问题分解成简单几步,也是不错的选择。比如说在人脸识别领域。我们可以直接把人脸识别出来。但是如果数据不是很大的话,这样识别效果不是很好。我们也可以分成两步来做。比如说第一步识别照片中人脸的位置。第二步把这个位置的人脸图片放大进行识别。目前来看,在数据不是很大的情况下,这种方法往往效果更好。

是否要使用端到端的深度学习

假设你正在搭建一个机器学习系统,你要决定是否使用端对端方法,我们来看看端到端深度学习的一些优缺点,这样你就可以根据一些准则,判断你的应用程序是否有希望使用端到端方法。

首先端到端学习真的只是让数据说话。所以如果你有足够多的(x,y)数据,那么不管从x到y最适合的函数映射是什么,如果你训练一个足够大的神经网络,希望这个神经网络能自己搞清楚,而使用纯机器学习方法,直接从x到y输入去训练的神经网络,可能更能够捕获数据中的任何统计信息,而不是被迫引入人类的成见。

例如,在语音识别领域,早期的识别系统有这个音位概念,就是基本的声音单元.我觉得这个音位是人类语言学家生造出来的,我实际上认为音位其实是语音学家的幻想,用音位描述语言也还算合理。但是不要强迫你的学习算法以音位为单位思考,这点有时没那么明显。如果你让你的学习算法学习它想学习的任意表示方式,而不是强迫你的学习算法使用音位作为表示方式,那么其整体表现可能会更好。

端到端深度学习的第二个好处就是这样,所需手工设计的组件更少,所以这也许能够简化你的设计工作流程,你不需要花太多时间去手工设计功能,手工设计这些中间表示方式。

那么缺点呢?端到端算法,最大的缺点就是它需要大量的数据。可以说是海量的数据才可以支撑起端到端的学习。

吴教主深度学习和神经网络课程总纲

3.2.5 端到端的学习相关推荐

  1. 用TVM在硬件平台上部署深度学习工作负载的端到端 IR 堆栈

    用TVM在硬件平台上部署深度学习工作负载的端到端 IR 堆栈 深度学习已变得无处不在,不可或缺.这场革命的一部分是由可扩展的深度学习系统推动的,如滕索弗洛.MXNet.咖啡和皮托奇.大多数现有系统针对 ...

  2. CVPR2020:端到端学习三维点云的局部多视图描述符

    CVPR2020:端到端学习三维点云的局部多视图描述符 End-to-End Learning Local Multi-View Descriptors for 3D Point Clouds 论文地 ...

  3. 深度学习神经网络 端到端的学习方式

    端到端的学习方式就是在整个学习流程中并不进行人为的子问题划分, 而是完全交给深度学习模型直接学得从原始输入到期望输出的映射.

  4. 字节跳动端到端深度学习召回算法

    来源:DataFunTalk 本文约2600字,建议阅读5分钟 本文为你介绍字节跳动AML Team在大规模推荐中构建的可学习的索引结构. [ 导读 ] 传统的召回算法一般基于双塔结构并加以appro ...

  5. 独家 | 构建端到端数据科学项目,从我的Data Scientist Ideal Profiles项目中学习(附链接)...

    翻译:张睿毅 校对:吴金笛 本文约1500字,建议阅读5分钟. 本文为你介绍了构建数据科学项目中重要的思维能力及训练建议. Joseph Barrientos 拍照于 Unsplash (链接:htt ...

  6. 基于深度学习的端到端人脸识别技术:全面调研

    44页,共计371篇参考文献.本文全面介绍了端到端深度学习人脸识别技术,包括人脸检测,人脸预处理和人脸表征等方向,详细介绍了最新的算法设计,评估指标,数据集,性能比较等. The Elements o ...

  7. 2.10 是否要使用端到端的深度学习-深度学习第三课《结构化机器学习项目》-Stanford吴恩达教授

    ←上一篇 ↓↑ 下一篇→ 2.9 什么是端到端的深度学习 回到目录 2.11 总结 是否要使用端到端的深度学习 (Whether to use end-to-end deep learning?) 假 ...

  8. 2.9 什么是端到端的深度学习-深度学习第三课《结构化机器学习项目》-Stanford吴恩达教授

    ←上一篇 ↓↑ 下一篇→ 2.8 多任务学习 回到目录 2.10 是否要使用端到端的深度学习 什么是端到端的深度学习 (What is end-to-end deep learning?) 深度学习中 ...

  9. 机器学习中什么是端到端的训练方法(端到端学习)?(end2end learning)

    相对于深度学习,传统机器学习的流程往往由多个独立的模块组成,比如在一个典型的自然语言处理(Natural Language Processing)问题中,包括分词.词性标注.句法分析.语义分析等多个独 ...

最新文章

  1. java枚举类是什么_Java学习--常用类(2)、Math类、枚举类
  2. java线程删除文件,线程“main”java.io.jgitinernalexception中的异常:无法删除临时文件c:\users\13 dec...
  3. Android--UI之DatePicker、TimePicker...
  4. 写好项目文档有多重要?关于我被百大 UP 主选中又放鸽子这档事
  5. 24点游戏详细截图介绍以及原型、Alpha、Beta对比
  6. Docker安装MongoDB管理工具nosqlclient
  7. 【机器学习】Octave矩阵,向量的表示与基本操作
  8. Mysql优化(出自官方文档) - 第三篇
  9. win7定时关机命令是什么
  10. 微软surface屏幕测试软件,Soomal作品 - Microsoft 微软 Surface Book 笔记本电脑屏幕测评报告和色彩校正 [Soomal]...
  11. Mysql 存储过程和函数区别
  12. 网络寻宝 v2.2 官网
  13. TFT-液晶显示屏的结构和原理
  14. webpack 图片压缩
  15. linpack环境搭建:Openmpi+Openblas+HPL安装教程
  16. 行业集中度(Concentration Ratio)
  17. 萌娃第一台电动车哪吒魔小童正式交付
  18. 机器学习——聚类分析
  19. 大白话解读什么是七层网络协议,TCP/IP五层模型通信知识(一)
  20. OpenSSL命令之算法类大全

热门文章

  1. android生成大分辨率图片,自动生成Android不同分辨率下的图片
  2. 用javascript实现一门编程语言-字符输入流
  3. 为什么说能源管理是分布式光伏发电的突破口?
  4. Docker实战第二天(Docker常用命令详解)
  5. struts2(三) 输入校验和拦截器
  6. JavaWeb--数据库添加
  7. [美文欣赏]清华胡宇迪教授谈
  8. DB2数据库V8.2版本远程连接方法
  9. 插入DLL和挂接API——Windows核心编程学习手札之二十二
  10. 数据结构源码笔记(C语言):英文单词按字典序排序的基数排序