0
本文作者: 三川 | 2017-02-06 15:21 |
为什么深度学习(DL)比其他机器学习(ML)方法效果更好?
雷锋网按:近来在多个国外开发者论坛、杂志中,”深度学习的优越性”这个话题着实引发了不少讨论。对此,西班牙著名 AI 专家、Starlab 神经科学研究负责人 Aureli Soria-Frisch 发表了他的看法。
这里列举了三大原因:1. DL 训练过程整合了特征提取;2. 大型数据集的收集;3. 技术进步。
Aureli Soria-Frisch
Aureli Soria-Frisch:我想要指出三点原因——在我眼中,它们构成了深度学习性能优越的基石。我不是第一个讨论这个话题的人,也一定不是最后一个,但我想对该话题做一个延伸——把开发者实践中的原因加入进来。因此,如果你要找的是理论支撑,请在学术著作中寻找。在这里,我会从实践角度讨论,为什么深度学习成为了一门处理分类问题和应用的有价值技术。当然,本文不包括其所有的问题和应用。
今天,深度学习是模式识别(pattern recognition)的终极技术,就好像此前的支持向量机(SVM)和随机森林算法(Random Forests)。但基于“没有免费的午餐”这一道理,一个能高效处理所有问题的最优算法并不存在。因此雷锋网读者需谨记,本文所评估的乃是 DL 在分类任务上的效果。性能评估是机器学习应用的基础,并与深度学习的成功有直接联系,请见下文。
深度学习之所以成功,首先是因为它训练过程中整合了特征提取。
不久以前,模式识别还聚焦在分类阶段,特征提取被当做是某种程度上独立的问题。它的处理,部分基于 AI 匠人的人工操作和专家知识。因而在过去,开发者常常邀请相关领域的专家加入团队。比如说,如果你想要对 EEG 纪元进行分类,需要一名有经验的电生理学家(electrophysiologist);手写文字识别则需要笔迹分析专家。
这些专家的专业知识,被用来对特定问题中开发者感兴趣的特征做甄选。与之相比,深度学习方法不需事前创建特征:深度学习中,特征提取和分类被同时训练。比如说在图像识别中,图像过滤器或者原始参数在分类网络中的第一层进行训练。这是一个脑机交互接口社区早已提过的概念——例如对 Common Spatial Filters (CSP) 进行训练,以对每一个 BCI 用户进行相适应的特征提取。
更重要的是,深度学习胜任了许多从前无法解决的问题。这是由于它:1. 既充分鼓励了大数据集的收集;2. 又在开发过程中系统性地整合了性能评估。
雷锋网按:如同一枚硬币,这是同一个问题的正反两面。对于大数据集,用人工流程进行性能评估变得不再可行。你需要尽可能把过程自动化。自动化意味着设立交叉验证(cross-validation)阶段,以及把它整合进开发流程。
近年来各个 DL 平台以及数据分析挑战赛的普及,对大数据集和性能评估起到了非常好的支持作用。第一批挑战赛围绕着最重要的计算机视觉和模式识别会议组织。 这便是 PASCAL 和 ImageNet 挑战的情形。它们使得大型图像数据集首次被创建出来,最重要的是,它们是关联了真实标记(ground truth)的样例,可用于系统性的算法性能评估。
更重要的是,性能评估是在训练集的真实标记上进行盲测,通过调参来推高性能是不可能的。这一挑战赛概念被随后用于数据分析平台,最著名的是 Kaggle,但它不是唯一一个,还有 DrivenData、InnoCentive 等等。这些数据竞赛平台基于同样的理念:它们提供了用于训练的数据集,用于测试的“盲”数据集,再加上一个能比较不同团队完成效果的平台。对与数据科学而言,尤其是深度学习,这绝对是一个很好的刷经验场所。
我想要与你分享的最后一条原因,与前两条的联系十分紧密:没有技术进步,上文中那些创新都无法实现。
内存和存储的价格下降(雷锋网注:这里关注的是长期趋势,2016-2017 的内存、SSD 价格上涨,是各方原因造成的价格反弹),使得数据集能以不断增长的规模存储下来。广为人知的摩尔定律描述了与之伴随的计算性能提高。最后,互联网技术的爆发,确凿无疑地让内存和计算性能“民主化”,更多人享受到它们带来的便利。云存储和高性能计算(HPC)使得执行架构(implemented architectures,比方说网络中相关层和节点的书目)的复杂程度以指数级增长。至少在目前,这被证明是深度学习最成功的应用路径。
via kdnuggets
雷峰网版权文章,未经授权禁止转载。详情见转载须知。