0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

机器学习在现实世界中的真相

汽车玩家 来源:AI公园 作者:Delip 2020-05-04 11:52 次阅读

导读

当你在现实世界中工作时,有几个事实是你必须面对的,这也是本文的主要内容。

上个月,我在一个亲密的朋友聚会上做了一个非正式的演讲,我把这个题目记下来。这篇文章主要是写给那些使用机器学习来构造东西的人,而不是那些研究机器学习的人,尽管后一组人会很好地倾听这些真理并反省他们的工作。

0. 你不是一个科学家

是的,虽然你们的 title 是“科学家”,包括你们所有拥有博士学位的人,以及涉足这个行业的学者。但是,机器学习(以及其他人工智能应用领域,如 NLP、视觉、语音……)是一门工程研究学科(与科学研究相对)。

你会问,科学研究和工程研究有什么区别?George A. Hazelrigg 在他的“HONING YOUR PROPOSAL WRITING SKILLS”中写道:

一些科学家会学习如何制定研究计划。很少有工程师是博士级别的工程师。让我们先试着理解科学研究和工程研究之间的区别。对我来说,区别很明显。科学家力图了解大自然的本质,以了解其根本的本质。为了做到这一点,科学家通常剥离无关的影响,深入到一个非常狭窄的自然元素。这就是我们所说的自然法则:能量和质量是一样的,每一个作用力都有一个大小相等、方向相反的反作用力,依此类推。有许多自然法则,它们随时随地都适用。工程师遵循自然法则。他们别无选择。他们的目标是设计出在自然允许的范围内工作的东西。要做到这一点,他们必须能够预测系统的行为。所以工程师们面临的一个大问题是,我们如何理解和预测一个系统的行为,在这个系统中,所有的自然法则在任何时候都适用于任何地方。这是一个整合的问题,它就像找到一开始的规律一样困难。每时每刻把所有的自然规律都考虑进去是不可能的。因此,工程师必须找到方法来确定哪些定律是重要的,哪些可以忽略,以及如何近似那些在时间和空间上都很重要的定律。工程师不仅仅是预测未来。他们做出的决定部分是基于他们的预测,因为他们知道自己的预测不可能既准确又确定。理解和应用数学也很重要。这包括概率论、决策理论、博弈论、最优化、控制理论和其他数学在工程决策环境中的应用。这也是一个合理的工程研究领域。

作为 ML 的研究人员和实践者,你必须考虑你拥有的数据的正确模型,而不是你拥有的模型的正确数据集(就像许多研究论文一样)。如果你曾经问过“这个模型的正确数据集是什么”,那么你并不是在现实世界中。到底什么是真实的世界?在现实世界中,你对要处理的数据是没有选择的。在这里,数据定义了问题,而不是相反。有时,在现实世界中,ML 实践者创建了一个自己的世界作为他们的建模游乐场,从而假装他们是“科学家”,例如“发明”一种用于做 NLP 的语言,或者通过简化假设来创建封闭的环境来强化学习。这些研究得出了有趣的结果,但它们的范围仅限于它们所来自的世界,即使研究人员喜欢在论文中把它们当作适用于现实世界的东西来兜售。在现实世界中,输入的分布更有可能发生变化,长尾的“curve balls”不知从何而来,你并不总是有答案。

当你在现实世界中工作时,有几个事实是你必须面对的,这也是本文的主要内容。但这个开场白是必不可少的。如果你在现实世界中做 ML 研究,你是工程师而不是科学家。

1. 需要可以工作

虽然这听起来很简单,但我很惊讶有多少人,不管是新手还是有经验的人,都被一些听起来很花哨的名字吸引住了,或者因为一些东西来自 DeepMind、OpenAI、斯坦福大学、麻省理工学院等等。如果你的模型确实只能够在它们的环境和资源约束下处理他们的数据集和,那么现实世界将无情地拒绝它。arXiv 上的许多结果只能在少数数据集上工作,或者只能在只有谷歌基础设施支持的百兆级 gpu 上工作。帮社区一个忙,不要再发布那些一般性的结果了。它必须能工作。这也是为什么我们今天不考虑在没有卷积神经网络计算机视觉中做任何事情,或者为什么我们很容易在序列模型中使用注意力的原因。它必须要能工作。

推测:这么多人,特别是 ML 的新手,被花哨的模型名称冲昏了头脑,迫不及待地想要尝试它们,或者写关于它们的博客帖子,等等。我觉得这就像一个初学写作的人。他们认为使用华丽的词语会使他们的写作更好,但经验会告诉他们其他的。

2. 无论你如何努力,无论你的优先级是什么,你都不能提高光速

缓存层次结构已经是固定的,你必须在这个前提下工作,网络开销会让分布式训练变慢,在向量中只能塞入那么多内容,等等。

3. 只要有足够的推力,猪就能飞得很高,然而,这并不一定是一个好主意

一个研究生或大型的超参数扫描器可以在一个巨大的数据中心中可以找到一组超参数,可以让非常复杂的模型工作得很好,甚至产生优秀的结果。但没有人在现实世界中调试那么大的模型。我在帮助公司管理他们的 ML 团队时发现了一个秘密 — 大多数人不知道/不关心超参数调优。

4. 生活中的一些事情,除非亲身经历过,否则永远不会被完全欣赏或理解

对于既不构建生产 ML 模型也不维护它们的人来说,机器学习中的某些东西是永远无法完全理解的。再多的课件,再多的 mooc,再多的 Kaggling,都无法让你为此做好准备。没有什么可以替代部署模型、观察用户与模型的交互、处理代码/模型分解等等。

5. 总是有可能将多个独立的问题聚合成一个复杂的相互依赖的解决方案,在大多数情况下,这是一个坏主意

端到端学习在理论上听起来是一个好主意,但是对于大多数部署场景,分段优化的管道架构将继续存在。这并不意味着我们将完全没有端到端系统(语音识别和机器翻译有很好的端到端生产价值解决方案),但在大多数情况下,具有可观察的调试路径将胜过其他选择。

6. 把一个问题转移到别处,甚至是忽略它,都比解决它要容易得多

例如,在语音方面,声学建模是困难的,但是你可以让网络在解决不同问题(例如语音识别)的方法中找出这些细节。在 NLP 中,很难进行正确的解析。但值得庆幸的是,对于 99%的现实任务,我们可以不进行解析。

推论:除非迫不得已,否则不要解决问题。

7. 你总是要在一些事情上做权衡

速度 vs 内存,电池寿命 vs 准确性,公平性 vs 准确性,易于实现 vs 可维护性,……

8. 一切都比你想象的复杂

与购物时的价格冲击类似,工作中也有“努力冲击”。大多数经验丰富的研究人员和工程师都经历过“努力冲击”,要么是因为他们低估了处理大型数据集的工程问题,要么是因为他们低估了正在与之搏斗的领域的复杂性,要么是因为他们低估了对手。大多数论文让读者读起来觉得事情很简单,而忽略了这背后是经过了几百万次失败才有的成功。因此,论文不是研究,而是做研究的结果。因为这个原因,你永远可能通过阅读论文来体验做研究的过程。

9. 你永远都会是准备不足

这可以和第 8 点结合起来,事实上任何远程调用的成功的模型如果没有适当的计划,都可能由于自身的成功而崩溃。

10. 一个尺码不可能适合所有人,你的模型会一直犯令人尴尬的错误,尽管你的出发点是好的

角落案例和长尾失败模式将困扰你。值得庆幸的是,对于许多非关键的 ML 部署来说,这并不是什么大问题。最坏的情况下,它会成为一条搞笑的推文。但是,如果你在医疗保健或其他高风险情况下工作,ML 部署将因此成为一场噩梦。

11. 每一个旧的想法都会以不同的名字和不同的形式被再次提出,不管它是否有效

Schimdhuber 可能提出了一个更大的观点。没有人听他的,像他一样,我们把旧酒重新装进新瓶子,被迫重复错误的历史。

12. 达到完美不是因为没有什么可以补充的,而是因为没有什么可以去掉的

生活中的每件事都是如此,现实世界中的机器学习也是如此。唉,我们的会议回顾了他们对“新颖性”的嗜好,产生了不想要的 arxi -spam,其中包含了大量本来就不需要存在的垃圾。除非做“科学”能够鼓励宣传什么是有效的,而不是什么是新的,否则我不认为这种情况会改变。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 机器学习
    +关注

    关注

    66

    文章

    8123

    浏览量

    130567
收藏 人收藏

    评论

    相关推荐

    浅析机器学习的基本步骤

    机器学习中,机器学习的效率在很大程度上取决于它所提供的数据集,数据集的大小和丰富程度也决定了最终预测的结果质量。目前在算力方面,量子计算能超越传统二进制的编码系统,利用量子的纠缠与叠
    发表于 10-30 11:13 259次阅读
    浅析<b class='flag-5'>机器</b><b class='flag-5'>学习</b>的基本步骤

    ISM330DHCX可用的机器学习内核功能信息

    本文档旨在提供 ISM330DHCX 可用的机器学习内核功能信息。机器学习处理能力允许将一些算法从应用处理器转移到 MEMS传感器,从而持
    发表于 09-08 07:53

    机器学习为什么需要数据预处理

    并以格式化的方式进行存储。为此,我们使用数据预处理任务。 为什么我们需要数据预处理? 现实世界的数据通常包含噪声、缺失值,并且可能采用无法直接用于机器学习模型的不可用格式。数据预处理是
    的头像 发表于 08-24 09:20 1155次阅读
    <b class='flag-5'>机器</b><b class='flag-5'>学习</b>为什么需要数据预处理

    机器学习发展历程

    机器学习发展历程:机器学习发展现状、机器学习发展前景和机器
    的头像 发表于 08-17 16:30 1209次阅读

    机器学习有哪些算法?机器学习分类算法有哪些?机器学习预判有哪些算法?

    机器学习有哪些算法?机器学习分类算法有哪些?机器学习预判有哪些算法?
    的头像 发表于 08-17 16:30 1399次阅读

    机器学习theta是什么?机器学习tpe是什么?

    机器学习theta是什么?机器学习tpe是什么? 机器学习是近年来蓬勃发展的一个领域,其相关技术
    的头像 发表于 08-17 16:30 1229次阅读

    机器学习是什么意思?机器学习属于什么分支?机器学习有什么用处?

    机器学习是什么意思?机器学习属于什么分支?机器学习是什么有什么用处?
    的头像 发表于 08-17 16:30 1277次阅读

    机器学习算法入门 机器学习算法介绍 机器学习算法对比

    机器学习算法入门 机器学习算法介绍 机器学习算法对比 机器
    的头像 发表于 08-17 16:27 630次阅读

    机器学习算法总结 机器学习算法是什么 机器学习算法优缺点

    机器学习算法总结 机器学习算法是什么?机器学习算法优缺点?
    的头像 发表于 08-17 16:11 1082次阅读

    机器学习算法汇总 机器学习算法分类 机器学习算法模型

    机器学习算法汇总 机器学习算法分类 机器学习算法模型 机器
    的头像 发表于 08-17 16:11 727次阅读

    机器学习和深度学习的区别

    机器学习和深度学习的区别 随着人工智能技术的不断发展,机器学习和深度学习已经成为大家熟知的两个术
    的头像 发表于 08-17 16:11 3388次阅读

    增强现实和虚拟现实的区别 增强现实和虚拟现实的工作原理

    增强现实和虚拟现实的工作原理相似,都是通过数字技术来改变用户对现实世界或虚拟世界的感知,但原理上还是有所不同的。
    发表于 08-02 17:39 604次阅读

    如何使用Arm CMSIS-DSP实现经典机器学习

    和循环,而那很难解释它们是如何达到它们的结论。 机器学习领域包括神经网络以外的技术。其他技术可能以不同的名称使用,例如统计机器 学习本指
    发表于 08-02 07:12

    理解在现实世界中热阻

    电子发烧友网站提供《理解在现实世界中热阻.pdf》资料免费下载
    发表于 07-24 09:50 4次下载
    理解在<b class='flag-5'>现实</b><b class='flag-5'>世界</b>中热阻

    高效理解机器学习

    来源:DeepNoMind对于初学者来说,机器学习相当复杂,可能很容易迷失在细节的海洋里。本文通过将机器学习算法分为三个类别,梳理出一条相对清晰的路线,帮助初学者理解
    的头像 发表于 05-08 10:24 357次阅读
    高效理解<b class='flag-5'>机器</b><b class='flag-5'>学习</b>