再谈“炼金术”:可以使用不严谨的方法,但拒绝不严谨的评估方法

简介:
本文来自AI新媒体量子位(QbitAI)

昨天,NIPS大会中“Test of Time”最具时间价值大奖的获得者Ali Rahimi(阿里·拉希米)在演讲时表示,机器学习已经成为了炼金术。此话一出,就引发了大量讨论。

在Reddit上这个话题同样火爆,剑桥大学博士Ferenc Huszár在他的博客inFERENCe阐述了自己的观点,获得了很多人的支持。

他到底说了什么?他怎么看?

像大家一样,我很欣赏阿里在NIPS上的演讲,并且推荐所有人都去看一看。

我也看到了Yann LeCun对阿里演讲的反驳,表示阿里所说的炼金术实际上是工程学。尽管我认为他所反对的观点阿里在演讲中并没有提,但对于技巧(tricks)、实验性证据和理论在工程中扮演的不同角色,LeCun提出了一些非常重要的、不错的想法。

我也想谈谈自己的想法和经验。

不同的创新模型

我们可以将机器学习的知识看成是一张图,在这张图中,各种方法用节点表示,而线条代表着方法间的联系和类比。

创新意味着在这张图上画上新的内容,这里有很多画法——

1. 增加新的节点

这意味着你需要跳出思维定势,发现一些全新的、古灵精怪的可行方法。最近这种类型的机器学习中的创新做法很多,比如herding、noise-as-targets、batchnorm、dropout或GAN。我们在图中添加了新节点,它可能与图的其余部分连接关系很弱,最初大多数人可能不太清楚你的逻辑和推理。

2. 发现现存节点间的联系

这是在寻找新方法的解释——把K-均值当成期望最大化、把dropout和随机梯度下降当成变分推理、把GAN当成f-GAN、把batchnorm当成自然梯度、把去噪自动编码器当成评分匹配等。我们迫切需要在机器学习中使用这种有影响力的方法,因为这些联系帮助我们改进和推广技术,使我们的进展更可预测。

3. 完善模式

这是类比推理。我们注意到图中不完整的模式,推断出一些节点只能在完善了模式后才存在。在2010年NIPS研讨会上,我记得Zoubin Ghahramani开了个玩笑,讲了他和Sam Roweis是通过补全超立方体上的节点撰写一堆了论文,具体如下图所示。值得注意的是,这种“模式完善”在贝叶斯世界之外也发生了,例如双向卷积RNN或PixelGAN自动编码器。

每一种创新模式在构建知识和进步的过程中都至关重要的。我们的圈子更看重上述的第一条(只要论文的标题中有流行词);而大家为了发paper,又而第三条的风险最小、最容易完成,因此大家在这上面也花了很多功夫。

而第二步总是最容易被忽视的,这也是我理解的阿里演讲的主要内容之一。过度关注基准、数据集和实证结果,我们实际上是在为那些研究各种方法为什么管用或无效的研究人员设置障碍

还记得最初的GAN论文中的结果吗?这个结果在当时让人非常震惊,但现在看起来甚至有些拿不出手:

GAN可以说是一个非常有影响力、伟大的新想法。今天,同样结果的论文将无法出版,因为图片看起来不够漂亮。Wasserstein GAN(WGAN)的想法不错,无需去看实验结果。

Yann LeCun说神经网络在90年代由于缺乏凸优化方法所具备的收敛保证,而被不公平地抛弃,同样,今天我们也在不公平地否定任何不产生最先进结果的方法。

我曾经评审过一篇论文,另一位评审员写道:“如果这种方法与现有方法相比,能成为XX领域最有效的方法,那这篇论文就很不错。我想说,这种想法的错误程度,不亚于因为没有理论支撑就否定新想法。(顺便说一句,阿里也没这么说)。

可以使用不严谨的方法

但不能使用不严谨的评估方法

就我而言,我也习惯了使用不严谨的方法,或者理论框架不完善或不存在的方法。但是,

任何人都不应该对那些评价体系不严谨的论文感到满意。

在我看来,有关GAN的论文大多向我们展示了一些漂亮的图片,但我们没有严谨的方法来评估样本的多样性,或者是否有任何形式的过拟合。

根据我的经验,将一个足够新颖的深度学习理论应用于实践是一个脆弱的过程:一开始不管用,然后可能终于管用了却不收敛,接下来又收敛到了错误的地方……这种东西通常是突然管用了,却不清楚具体它有用的原因是什么,这个过程类似于多个假设测试。

你做了数不清的实验,得到了超出你期望的目前最好的结果。潜在的问题是,我们将软件开发过程的需要,与实现手动超参数搜索和选择出的最好结果混为一谈。因此,我们在论文中提到的“经验证据”,可能没有我们期望中的那么公正可靠。

理论一旦出现,就不应该抵制它

我同意Yann的观点,在找到理论支持或严谨的分析之前,先开始采用技术是有好处的。然而问题在于,找到了理论支持之后,基于经验表现的推理往往还会胜过严谨性。

我遇到过几次这种模式:有人提出了一个想法,使用了非常大的神经网络和大量的技巧,经过几个月的手动调整和搜索超参数,在一些大型复杂的问题上运行得很好。但我发现这个方法有一个理论问题。但他们却反驳说:这个方法在实践中运行良好,所以我没有看到问题。

我之前写过两篇文章批评过计划抽样(scheduled sampling)和弹性权重巩固(Elastic Weight Consolidation,EWC)。有审稿人说,这两种方法在“现实世界的问题”上有效,而对于计划抽样方法,甚至有人评价说“这些方法毕竟是在基准竞赛中首先提出来的,肯定是正确的”。

我反对这种说法,如果一个方法可行,但可行的原因是错误的,或者和作者给出的原因不一样,我们就遇到了一个问题。

你可以把“在数据集上做一个深度学习方法”当成统计测试来看,我会认为这种方法的统计功效不足。我们做了很多事情,比如提前停止、手动调整超参数、运行多个实验或只报告最好的结果。大家可能都知道,当测试假设时,不应该做这些事情。然而,这些实践在报告实证结果时被认为是好的。许多人仍然这样做,并认为这些报告的实证结果是支持一种理论“强有力的经验证据”。

总结

感谢阿里的演讲,演讲的内容确实有些容易引起冲突,但我认为这并不是“侮辱”。可能说“挑衅”可能更确切吧。我并不认同阿里的全部演讲内容,但我不认为这是错误的。

阿里的演讲涉及到很多问题,我认为这些问题应该得到群体的认可和赞赏。严谨不是关于学习理论、收敛保证、界限或定理证明的。无论我们是否已经完全开发出用于分析的数学工具,知识的严密性是所有机器学习的准则。

严谨性意味着周密、详尽、细致。它包括了良好的实践,比如诚实地描述方法的潜在弱点,思考可能出了什么问题,设计突出和分析这些弱点的实验,在某些案例中预测算法的行为并根据经验证明它确实符合预期,拒绝使用不合理的评价方法,接受和处理批评……所有这些都应该适用于机器学习,无论深度还是不深,它们确实适用于整个工程。

本文作者:安妮
原文发布时间:2017-12-08 
相关文章
|
存储 Go
Go语言接口声明规范和最佳实践
Go语言接口声明规范和最佳实践
311 0
|
10月前
|
机器学习/深度学习 人工智能 PyTorch
DeepSeek进阶开发与应用1:DeepSeek框架概述与基础应用
DeepSeek是一个高效、灵活的深度学习框架,旨在简化模型的构建、训练和评估。其核心特点包括模块化设计、自动微分、多后端支持及易于扩展。本文通过手写数字识别的CNN模型实例,展示了DeepSeek的安装、数据准备、模型构建、编译、训练与评估过程,最终模型在测试集上达到了98%以上的准确率。
|
11月前
|
机器学习/深度学习 人工智能 自然语言处理
《鸿蒙Next:让人工智能语音交互听懂每一种方言和口音》
鸿蒙Next系统通过丰富方言语音数据、优化语音识别模型、引入语音合成技术及用户反馈机制,大幅提升对不同方言和口音的识别能力。具体措施包括多渠道收集方言数据、建立动态数据库、采用深度学习算法、实现多任务学习与对抗训练、生成标准方言样本,并结合硬件如麦克风阵列技术优化语音输入质量。这些综合手段确保了语音交互的准确性和实时性,为用户提供更智能、便捷的服务。
706 16
|
运维 监控 Devops
DevOps 文化建设:促进跨职能团队合作
【8月更文第30天】在当今快速变化的商业环境中,组织需要更快地交付高质量的产品和服务来满足客户需求。DevOps作为一种文化和实践,旨在通过改进开发(Dev)和运维(Ops)团队之间的协作来提高软件交付的速度和质量。本文将探讨如何构建一个积极的DevOps文化,并提供具体的策略和工具来加强团队间的沟通与协作。
672 2
|
开发框架 安全 应用服务中间件
【文件上传绕过】——解析漏洞_IIS7.0 | IIS7.5 | Nginx的解析漏洞
【文件上传绕过】——解析漏洞_IIS7.0 | IIS7.5 | Nginx的解析漏洞
781 9
|
机器学习/深度学习 人工智能 自然语言处理
NVIDIA Triton系列03-开发资源说明
NVIDIA Triton 推理服务器是用于高效部署机器学习模型的开源工具。本文介绍了初学者如何通过官方文档和 GitHub 开源仓库获取开发资源,包括快速启动指南、生产文档、示例和反馈渠道。特别强调了核心仓库中的六个重要部分,涵盖服务器部署、核心功能、后端支持、客户端接口、模型分析和模型导航工具。这些资源有助于初学者全面了解和掌握 Triton 项目。
404 0
NVIDIA Triton系列03-开发资源说明
|
Java Nacos Maven
Nacos常见问题之插件错误如何解决
Nacos是一款易于使用的动态服务发现、配置管理和服务管理平台,针对不同版本可能出现的兼容性和功能问题,本汇总贴心整理了用户在使用Nacos时可能遇到的版本相关问题及答案,以便用户能够更顺畅地进行服务治理和配置管理。
342 0
|
SQL 弹性计算 关系型数据库
TiDB的主要特点:深入了解其技术特性
【2月更文挑战第25天】TiDB作为一款高性能、分布式的关系型数据库,其独特的技术特性使其在数据处理领域脱颖而出。本文将深入探讨TiDB的主要特点,包括其分布式架构、MySQL协议兼容性、弹性伸缩能力、强一致性保证以及丰富的SQL功能等,帮助读者更全面地了解这一优秀的数据库产品
1303 6
|
编解码 边缘计算 自然语言处理
2024年5月计算机视觉论文推荐:包括扩散模型、视觉语言模型、图像编辑和生成、视频处理和生成以及图像识别等各个主题
五月发布的计算机视觉领域重要论文涵盖了扩散模型、视觉语言模型、图像生成与编辑及目标检测。亮点包括:1) Dual3D提出双模式推理策略,实现高效文本到3D图像生成;2) CAT3D利用多视图扩散模型创建3D场景,仅需少量图像;3) Hunyuan-DiT是多分辨率的中文理解扩散Transformer,可用于多模态对话和图像生成;4) 通过潜在扩散模型从EEG数据重建自然主义音乐,展示复杂音频重建潜力。此外,还有关于视觉语言模型和图像编辑的创新工作,如BlobGEN用于合成具有控制性的图像。
599 3
|
机器学习/深度学习 传感器 人工智能
智能家居技术的演进与未来
本文深入探讨了智能家居技术从诞生到现代的演变历程,并展望了其未来的发展方向。通过分析智能家居系统的核心组成、关键技术以及市场趋势,揭示了这一领域面临的挑战和机遇。文章旨在为读者提供一个全面的视角,理解智能家居技术如何塑造我们的日常生活,并对未来的居住环境产生影响。
336 0