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

    文章

    8373

    浏览量

    132395
收藏 人收藏

    评论

    相关推荐

    什么是机器学习?通过机器学习方法能解决哪些问题?

    计算机系统自身的性能”。事实上,由于“经验”计算机系统主要以数据的形式存在,因此机器学习需要设法对数据进行分析学习,这就使得它逐渐成为智
    的头像 发表于 11-16 01:07 191次阅读
    什么是<b class='flag-5'>机器</b><b class='flag-5'>学习</b>?通过<b class='flag-5'>机器</b><b class='flag-5'>学习</b>方法能解决哪些问题?

    eda机器学习的应用

    机器学习项目中,数据预处理和理解是成功构建模型的关键。探索性数据分析(EDA)是这一过程不可或缺的一部分。 1. 数据清洗 数据清洗 是机器
    的头像 发表于 11-13 10:42 143次阅读

    鲁棒性机器学习的重要性

    金融风险评估。这些应用场景对模型的鲁棒性提出了极高的要求。 鲁棒性的定义 鲁棒性通常被定义为系统面对不确定性和变化时仍能保持其功能的能力。机器学习
    的头像 发表于 11-11 10:19 190次阅读

    具身智能与机器学习的关系

    (如机器人、虚拟代理等)通过与物理世界或虚拟环境的交互来获得、发展和应用智能的能力。这种智能不仅包括认知和推理能力,还包括感知、运动控制和环境适应能力。具身智能强调智能体的身体和环境智能发展
    的头像 发表于 10-27 10:33 267次阅读

    NVIDIA Isaac Lab训练四足机器人运动

    由于涉及复杂的动力学,为四足机器人制定有效的运动策略是机器人领域面临的重大挑战。现实世界训练
    的头像 发表于 09-06 14:48 436次阅读
    <b class='flag-5'>在</b>NVIDIA Isaac Lab<b class='flag-5'>中</b>训练四足<b class='flag-5'>机器</b>人运动

    人形机器人的理想与现实

    究竟哪一种才代表人形机器人产业的真相呢?
    的头像 发表于 07-10 22:59 3756次阅读
    人形<b class='flag-5'>机器</b>人的理想与<b class='flag-5'>现实</b>

    机器学习的数据分割方法

    机器学习,数据分割是一项至关重要的任务,它直接影响到模型的训练效果、泛化能力以及最终的性能评估。本文将从多个方面详细探讨机器
    的头像 发表于 07-10 16:10 1284次阅读

    如何理解机器学习的训练集、验证集和测试集

    理解机器学习的训练集、验证集和测试集,是掌握机器学习核心概念和流程的重要一步。这三者不仅构成了模型学习
    的头像 发表于 07-10 15:45 3165次阅读

    机器学习的数据预处理与特征工程

    机器学习的整个流程,数据预处理与特征工程是两个至关重要的步骤。它们直接决定了模型的输入质量,进而影响模型的训练效果和泛化能力。本文将从数据预处理和特征工程的基本概念出发,详细探讨这
    的头像 发表于 07-09 15:57 292次阅读

    增强现实和虚拟现实的联系和区别

    信息叠加到现实世界的技术。用户可以通过头戴式显示器、智能手机或平板电脑等设备,看到现实世界与虚拟信息的结合。 虚拟
    的头像 发表于 07-08 11:00 2005次阅读

    增强现实是虚实结合吗为什么

    们提供了一种全新的交互方式,使得虚拟世界现实世界之间的界限变得模糊,实现了虚实结合。 增强现实技术是一种将计算机生成的虚拟信息与现实
    的头像 发表于 07-08 10:58 429次阅读

    深度学习工业机器视觉检测的应用

    随着深度学习技术的快速发展,其工业机器视觉检测的应用日益广泛,并展现出巨大的潜力。工业机器视觉检测是工业自动化领域的重要组成部分,通过图
    的头像 发表于 07-08 10:40 961次阅读

    深度学习视觉检测的应用

    深度学习机器学习领域中的一个重要分支,其核心在于通过构建具有多层次的神经网络模型,使计算机能够从大量数据自动学习并提取特征,进而实现对复
    的头像 发表于 07-08 10:27 616次阅读

    机器学习在数据分析的应用

    随着大数据时代的到来,数据量的爆炸性增长对数据分析提出了更高的要求。机器学习作为一种强大的工具,通过训练模型从数据中学习规律,为企业和组织提供了更高效、更准确的数据分析能力。本文将深入探讨机器
    的头像 发表于 07-02 11:22 543次阅读

    深度学习与传统机器学习的对比

    人工智能的浪潮机器学习和深度学习无疑是两大核心驱动力。它们各自以其独特的方式推动着技术的进步,为众多领域带来了革命性的变化。然而,尽管
    的头像 发表于 07-01 11:40 1177次阅读