7-5-年机器学习经验后的教训

7.5 年机器学习经验后的教训

原文:towardsdatascience.com/lessons-learned-after-6-5-years-of-machine-learning/

当我七年前开始学习机器学习时,这个领域正处于真正获得动力的过程中。大约在 2017 年,我上了第一堂关于经典机器学习的大学课程,幕后,关键方法正在被开发,这将导致 2020 年代初人工智能的繁荣。GPT 模型正在发表,其他公司也效仿,通过他们的模型在性能和参数大小上推陈出新。对我来说,这是一个开始学习机器学习的绝佳时机,因为这个领域发展如此迅速,总有新的东西出现。

不时地,通常每隔 6 到 12 个月,我会回顾过去几年,从大学课程快速过渡到进行商业人工智能研究。在回顾的过程中,我经常发现一些在学习机器学习过程中一直伴随着我的新原则。在这篇回顾中,我发现深入研究一个狭窄的主题在过去几年中一直是我进步的关键原则。除了深度工作之外,我还确定了其他三个原则。它们并不一定是技术洞察,而是心态和方法的模式。

深度工作的重要性

温斯顿·丘吉尔不仅以其演讲才能著称,还以其惊人的思维敏捷性而闻名。有一个关于他与英国议会第一位女性议员阿斯托尔夫人之间口头争论的流行故事。她试图结束与他的争论,开玩笑说:

如果我是你的妻子,我会在你的茶里下毒。

丘吉尔以其标志性的锐利,回应道:

如果我是你的丈夫,我会喝它。

给出那样机智的回应是令人钦佩的,因为这是一种罕见的技能,并不是每个人都天生具备这样的反射性智慧。幸运的是,在我们这个领域,进行机器学习研究和工程,机智并不是让你走得很远的超级力量。真正重要的是能够深入专注。

机器学习工作,尤其是研究方面,在传统意义上并不快节奏。它需要长时间的、不间断的、强烈的思考。编写机器学习算法、调试难以捉摸的数据问题、构建假设——这一切都需要深度工作。

通过“深度工作”,我指的是两个方面:

  • 长时间集中精力的技能

  • 允许并鼓励这种专注的环境

在过去两到三年里,我逐渐认识到深度工作是取得有意义进步的关键。我每周多次专注于沉浸式工作的时间,比许多更碎片化的、分心的生产力块要高效得多。幸运的是,深度工作是可以学会的,并且可以设置环境来支持它。

对我来说,最满足的时期总是那些临近论文提交截止日期的时候。这些时候你可以高度集中精力:世界缩小到你的项目,你处于心流状态。理查德·费曼说得好:

要真正做好物理学,你需要绝对稳定的时间段……这需要大量的专注。

将“物理学”替换为“机器学习”,这个观点依然成立。

你应该(大部分时间)忽略趋势

你听说过大型语言模型吗?当然,你听说过——像 LLaMA、Gemini、Claude 或 Bard 这样的名字充斥着科技新闻周期。它们是生成式 AI 的酷孩子,或者现在时髦地称为“GenAI”。

但这里有个问题:当你刚开始的时候,追逐趋势可能会让获得动力变得困难。

我曾经和一个研究人员一起工作过,我们当时都刚开始“做机器学习”。我们可以称我的前同事为约翰。为了他的研究,他一头扎进了当时热门的新领域——检索增强生成(RAG),希望通过整合外部文档搜索来提高语言模型输出。他还想分析大型语言模型(LLMs)的涌现能力——即使这些模型没有明确训练,它们也能做到的事情,并将这些能力提炼成更小的模型。

约翰的问题?他基于其工作的模型变化太快。仅仅运行一个新的最先进模型就需要几周时间。等他做到这一点时,一个更新、更好的模型已经被发表。这种变化速度,加上他所在领域的评估标准不明确,几乎让他无法继续进行研究。尤其是对于像当时我和约翰这样的研究新手来说。

这并不是对约翰(我可能也会失败)的批评。相反,我讲这个故事是想让你考虑:你的进步是否依赖于不断追逐最新趋势的最前沿?

反复进行枯燥的数据分析

每次我到达训练模型的时候,我都会在心里松一口气。

为什么?因为这意味着我已经完成了隐藏的困难部分:数据分析。

这通常的顺序是这样的:

  1. 你有一个项目。

  2. 你获取一些(真实世界的)数据集。

  3. 你想训练机器学习模型。

  4. 但首先…你需要准备数据。

在最后一步中,可能会出很多问题。

让我用我在处理 ERA5 气象数据时犯的一个错误来举例说明——这是来自欧洲中期天气预报中心的巨大、网格化数据集。我想使用 ERA5 数据中的历史天气模式来预测 NDVI(归一化植被指数),这表明植被密度。

对于我的项目,我必须将 ERA5 气象数据与美国气象机构 NOAA 提供的 NDVI 卫星数据合并。我将 NDVI 数据转换为 ERA5 的分辨率,添加为另一层,并且没有形状不匹配,我高兴地继续训练一个视觉 Transformer。

几天后,我可视化了模型的预测结果,……惊喜!模型认为地球是倒置的。字面上说——我的输入数据显示了正常方向的世界,但我的植被数据在赤道处被翻转了。

发生了什么问题?我忽视了分辨率转换如何翻转 NDVI 数据的方向。

为什么我会错过那个?简单:我不想做数据工程,而是直接跳到机器学习。但现实是,在现实世界的机器学习工作中,正确处理数据才是工作。

是的,学术研究通常让你可以使用精心挑选的数据集,如 ImageNet、CIFAR 或 SQuAD。但对于真正的项目?你需要:

  1. 清理、对齐、归一化和验证

  2. 调试奇怪的边缘情况

  3. 视觉检查中间数据

然后重复这个过程,直到真正准备好

我通过跳过我认为对我的数据不是必要的步骤而艰难地学到了这一点。不要做同样的事情。

(机器学习)研究是一种特定的试错过程

从外面看,科学进步似乎总是优雅而平稳的:

问题 → 假设 → 实验 → 解决方案

但在实践中,它要混乱得多。你会犯错误——有些小,有些令人尴尬。(例如,地球倒置。)没关系。重要的是你如何对待这些错误。

错误只是偶然发生。但富有洞察力的错误能教会你一些东西。

为了更快地从感知到的失败中学习,我现在维护一个简单的实验笔记。在运行实验之前,我会写下:

  1. 我的假设

  2. 我期待发生什么

  3. 为什么我期待它

然后,当实验结果回来(通常是一个“不,没有工作”),我可以反思为什么它可能失败,以及这对我假设的说明。

这将错误转化为反馈,将反馈转化为学习。正如俗话所说:

专家是那些在一个非常狭窄的领域犯过所有可能犯的错误的人。

那是研究。

最后的想法

经过 7 年半的时间,我逐渐意识到,做好机器学习与耀眼的趋势或仅仅调整(大型语言)模型几乎没有关系。事后看来,我认为它更多的是关于:

  • 为深度工作创造时间和空间

  • 选择深度而非炒作

  • 认真对待数据分析

  • 接受试错过程的混乱

如果你刚开始——或者甚至已经几年了——这些经验教训值得内化。它们不会出现在会议演讲中,但它们会出现在你的实际进步中。


  • 费曼的引言来自 Cal Newport 的书籍《深度工作》

  • 对于丘吉尔的引言,存在几种变体,有的有咖啡,有的有茶,有的被下毒

posted @ 2026-03-27 09:45  绝不原创的飞龙  阅读(2)  评论(0)    收藏  举报