AI学习笔记——End-to-End(端到端)的深度学习

  1. 云栖社区>
  2. 博客>
  3. 正文

AI学习笔记——End-to-End(端到端)的深度学习

hongtao2018 2018-07-10 22:42:00 浏览517
展开阅读全文

1. 什么是End-to-End 学习

要知道什么是End-to-End学习首先要知道传统的非End-to-End学习是什么。以语义分类(判断评论为正面评论还是负面评论)为例,非End-to-End的学习需要对语音识别之前要经过两步处理:解析器(Parser) 注释文本和情感分类器(Sentiment Classifier)预测文本。

解析器是对文本进行标注,比如形容词(好,坏,糟糕等),情感分类器再来预测文本是正面的还是负面的,整个过程如图:


img_c4601d11cf82cdb8cdad33a28e702aa5.png

End-to-End 学习不需要这些步骤,像黑盒子一样一步到位解决问题。神经网络算法就是一个被广泛应用的End-to-End学习的算法。End-to-End 算法尤其适用于数据量巨大的机器学习任务中。


img_ac52ac99ee45d323d150b8eca5d4e7c8.png

2. 更多End-to-End 的例子

在语音识别领域,非End-to-End 的学习大致经历:计算特征解析得到人工设计的频谱特征,音素(Phonemes)识别器识别语音中的“音素”和最终识别三个步骤:


img_c4a96a19d292cbb854b6a92fbd12e17d.png

然而End-to-End 也只需要一步就搞定了


img_3754d6a1891fbd1b7910f6d8ce6d9027.png

3. End-to-End 学习的优缺点

非End-to-End的学习算法中,需要人类做大量的前期准备工作,比如在上述语音识别的例子中,"音素"是语言学家发明的,在处理过程虽然提高了效率但是无疑会丢失语音中的其他信息。但是这种算法需要的数据量比较小。

End-to-End学习算法虽然不需要太多的人工干预,但是需要大量标记的数据,并不是在所有领域都是最好的选择。

4.非End-to-End 学习算法中pipline(管道)的选择

正如上文提到的,End-to-End的学习方法并不是在所有的领域都是最好的选择。最重要的是到底有没有足够可靠的数据。以自动驾驶为例,通过摄像头识别人和车辆,然后规划驾驶路径。如果用End-to-End的方法,需要积累海量量标记好的数据,各种路况不同的路径规划,非常困难。

然而,如果使用非End-to-End的方法,比如下图,先识别车和人,再进行路径规划


img_323fc7878a2622a147e14e10f067ff54.png

人和车的被标记好的数据很容易找到,完成这一步,再进行路径规划,这样训练起来就容易很多了。而这样设计算法的步骤就是pipline.

再举一个识别图片中猫的品种的例子,我们可以这样设计Pipline: 第一步先识别图片中是否有猫,第二步再识别猫是不是这个品种:

img_3d379dfaa63fc7ef35e0e8b021a4676b.png

————
相关文章
AI学习笔记——循环神经网络(RNN)的基本概念
AI学习笔记——神经网络和深度学习
AI学习笔记——卷积神经网络1(CNN)
————
文章首发steemit.com 为了方便墙内阅读,搬运至此,欢迎留言或者访问我的Steemit主页

网友评论

登录后评论
0/500
评论
hongtao2018
+ 关注