深度学习并非万能:你需要避免这三个坑

简介:
d2e18c7c35b8afae65ac844a884c47a62c8b5aa5

Tweaking Neural Net Parameters

Three reasons that you should NOT use deep learning

深度学习在过去几年一直是人工智能领域最热门的话题。事实上,正是它激发了科学家、政府、大公司以及其他所有人对人工智能的极大新兴趣!这是一门很酷的科学,具有潜在的巨大的实用性和积极的应用。它正被用于金融、工程、娱乐、消费产品和服务等领域。

但是,所有应用都需要使用到深度学习吗?当我们开展一个新的项目时,我们需要不自觉地一开始就使用深度学习吗?

在有些情况下,使用深度学习是不合适的,我们需要选择一些别的方案。让我们来探讨一下这些情况吧。

(1)深度学习不适用于小数据集

为了获得高性能,深度网络需要非常大的数据集。标注的数据越多,模型的性能就越好。获得标注良好的数据既昂贵又耗时。雇佣人工手动收集图片并标记它们根本没有效率可言。在深度学习时代,数据无疑是最有价值的资源。

最新的研究表明,实现高性能的网络通常需要经过数十万甚至数百万样本的训练。对于许多应用来说,这样大的数据集并不容易获得,并且获取成本高且耗时。对于较小的数据集,传统的ML算法(如回归、随机森林和支持向量机)通常优于深度网络。

333992dd8201cbbeb45a3553f963ebd0149a7b99

(2)深度学习运用于实践是困难且昂贵的

深度学习仍然是一项非常尖端的技术。您可以像许多人一样获得快速简便的解决方案,特别是使用广泛使用的API,例如Clarifai和Google的AutoML。但如果你想做一些定制化的事情,这样的一些服务是不够的。除非你愿意把钱花在研究上,否则你就会局限于做一些和其他人稍微相似的事情。

这也是很昂贵,不仅是因为需要获取数据和计算能力所需的资源,还因为需要雇佣研究人员。深度学习研究现在非常热门,所以这三项费用都非常昂贵。当你做一些定制化的事情时,你会花费大量的时间去尝试和打破常规。

(3)深层网络不易解释

深层网络就像是一个“黑盒子”,即使到现在,研究人员也不能完全理解深层网络的“内部”。深层网络具有很高的预测能力,但可解释性较低。由于缺乏理论基础,超参数和网络设计也是一个很大的挑战。

虽然最近有许多工具,如显著性映射(saliencymaps)和激活差异(activation differences),它们在某些领域非常有效,但它们并不能完全适用于所有应用程序。这些工具的设计主要用于确保您的网络不会过度拟合数据,或者将重点放在虚假的特定特性上。仍然很难将每个特征的重要性解释为深层网络的整体决策。

d8d292644f6d567cad29cdfdc1ddb3e0d520d646

另一方面,经典的ML算法,如回归或随机森林,由于涉及到直接的特征工程,就很容易解释和理解。此外,调优超参数和修改模型设计的过程也更加简单,因为我们对数据和底层算法有了更深入的了解。当必须将网络的结果翻译并交付给公众或非技术受众时,这些内容尤其重要。我们不能仅仅说“我们卖了那只股票”或“我们在那个病人身上用了这药”是因为我们的深层网络是这么说的,我们需要知道为什么。不幸的是,到目前为止,我们所掌握的关于深度学习的所有证据或者解释都是经验主义的。


原文发布时间为:2018-08-14

本文作者:George Seif

本文来自云栖社区合作伙伴“专知”,了解相关信息可以关注“专知”。

相关文章
|
5天前
|
机器学习/深度学习 存储 缓存
【动手学深度学习】深入浅出深度学习之RMSProp算法的设计与实现
【动手学深度学习】深入浅出深度学习之RMSProp算法的设计与实现
69 32
|
5天前
|
机器学习/深度学习 自然语言处理 算法
深度学习算法:从模仿到创造
深度学习是一种受到生物学启发的机器学习方法,其目标是通过构建多层神经网络来模拟人脑的工作原理。它在过去几十年来取得了巨大的进展,并在图像识别、语音识别、自然语言处理等领域取得了突破性的成果。 深度学习的核心思想是模仿人脑的神经网络。人脑中的神经元通过连接起来形成庞大的神经网络,用来处理感知、思维和决策等任务。深度学习的神经网络也是由许多层次的神经元组成,每一层都能够从上一层中学习到更加抽象的特征表示。通过训练数据,深度学习模型能够自动学习到最优的特征表示,并用于解决各种复杂的任务。
|
5天前
|
机器学习/深度学习 算法 数据可视化
深度学习代码通常包括以下几个主要部分
【5月更文挑战第11天】深度学习代码通常包括以下几个主要部分
8 1
|
9月前
|
机器学习/深度学习 并行计算 PyTorch
深度学习实践篇 第九章:DDP
简要介绍了DDP的使用。
204 0
|
9月前
|
机器学习/深度学习 PyTorch 算法框架/工具
深度学习实践篇 第八章:torchscript
简要介绍torchscript的使用方法。
102 0
|
机器学习/深度学习 人工智能 自然语言处理
深度学习系统理论
深度学习是学习样本数据的内在规律和表示层次,这些学习过程中获得的信息对诸如文字,图像和声音等数据的解释有很大的帮助。它的最终目标是让机器能够像人一样具有分析学习能力,能够识别文字、图像和声音等数据。 深度学习是一个复杂的机器学习算法,在语音和图像识别方面取得的效果,远远超过先前相关技术。深度学习在搜索技术,数据挖掘,机器学习,机器翻译,自然语言处理,多媒体学习,语音,推荐和个性化技术,以及其他相关领域都取得了很多成果。深度学习使机器模仿视听和思考等人类的活动,解决了很多复杂的模式识别难题,使得人工智能相关技术取得了很大进步。
201 0
深度学习系统理论
|
机器学习/深度学习 人工智能 自然语言处理
深度学习教程 | 深度学习的实用层面
本篇讲解如何优化神经网络模型,包括Train / Dev / Test sets的切分和比例选择,Bias和Variance的相关知识,防止过拟合的方法,规范化输入以加快梯度下降速度和精度,梯度消失和梯度爆炸的原因及处理方法,梯度检查。
158 1
深度学习教程 | 深度学习的实用层面
|
机器学习/深度学习 PyTorch 算法框架/工具
2019 到目前为止的深度学习研究进展汇总
在刚刚结束的2019年的第一季度里,深度学习技术在快速的向前发展。
1323 0
|
机器学习/深度学习 人工智能 算法
一文读懂人工智能、机器学习、深度学习、强化学习的关系(必看)
近些年,人工智能的热度都维持在一定的高度。从Google AlphaGo到Chatbot聊天机器人、智能理专、精准医疗、机器翻译等,人工智能技术被应用于安防、医疗、家居、交通、智慧城市等各行各业,其前景是毋庸置疑的,未来绝对是一个万亿级市场。
15070 0