2012年AI怎么突然变厉害,难道不是作弊?
摘要:这是 「AI是怎么回事」 系列的第 3 篇。我一直很好奇 AI 到底是怎么工作的,于是花了很长时间去拆这个东西——手机为什么换了发型还能认出你,ChatGPT 回答你的那三秒钟里究竟在算什么,AI 为什么能通过律师考试却会一本正经地撒谎。这
这是 「AI是怎么回事」 系列的第 3 篇。我一直很好奇 AI 到底是怎么工作的,于是花了很长时间去拆这个东西——手机为什么换了发型还能认出你,ChatGPT 回答你的那三秒钟里究竟在算什么,AI 为什么能通过律师考试却会一本正经地撒谎。这个系列就是我的探索笔记,发现了很多有意思的东西,想分享给你。觉得不错的话,欢迎分享+关注。
如果 AI 的历史是一部电影,2012 年 10 月就是高潮。
一个叫 AlexNet 的程序,让所有人的下巴掉了下来。
但在讲这个故事之前,我们得先说一场比赛。
一场给 AI 出的"高考"
上一篇我们讲了 AI 怎么"读懂"文字——把词变成一串数字,在高维空间里计算距离。第一篇讲了 AI 怎么"看"——图片就是数字矩阵,用检测器一层一层提取特征。
但如果你跟着读到这里,你可能会有一个很自然的问题:
如果原理这么"简单"——不就是数字运算吗——为什么 AI 不是一直都很厉害?为什么到 2012 年才突然爆发?
要回答这个问题,我们需要先了解一场比赛。
2010 年,一群做计算机视觉研究的科学家组织了一场大规模的 AI 比赛,叫做 ILSVRC——名字很长,你不需要记住它,只需要知道大家通常用它背后的数据集名字来称呼它:ImageNet 挑战赛。
ImageNet 是什么?是一个巨大的图片数据集。它由斯坦福大学的李飞飞教授团队从 2007 年开始建设,最终包含超过 1400 万张标注好的图片,涵盖两万多个类别。"标注好"的意思是:每张图都有人告诉你"这是猫"、"这是狗"、"这是一把椅子"——这些"正确答案"是 AI 学习的前提。
这个数据集有多大?我第一次看到这个数字的时候,做了个换算:如果你每秒看一张图片,不吃不睡不停地看,要看 162 天才能看完。
ImageNet 挑战赛用的是这个数据集的一个子集:大约 120 万张训练图片,1000 个类别。比赛规则很简单——
给 AI 看一张图,让它猜这是什么。每张图可以猜 5 次,5 次都没猜对才算错。看谁错得最少。
这个"猜 5 次"的规则是有原因的:有些图片确实很难分辨。比如一张照片里有一只狗,品种可能是"拉布拉多"、"金毛"、"大丹犬"……如果 AI 把"金毛"猜成了"拉布拉多",但 5 次里猜到了"金毛",就算对。这个指标叫做 top-5 错误率——5 次机会都猜错的比例。
简单来说,这就是一场给 AI 出的"高考"。
一场"正常"的进步
2010 年,第一届比赛。
冠军来自 NEC 实验室和伊利诺伊大学的联合团队,他们使用的是当时的主流方法——人工设计特征 + 统计模型分类。
这是什么意思?回忆一下第一篇的内容。我们讲过,AI"看"图片靠的是检测器——一组数字组成的小模板,在图片上滑动,提取边缘、形状、纹理等特征。AlexNet 的做法是让电脑自己从数据里学出这些检测器。但在 2012 年之前,这些检测器是人类手动设计的——比如第一篇里的 Sobel 算子,就是人类根据"比较左右亮度差"这个思路,亲手选定了那 9 个数字。
传统方法的流程是这样的:人类先设计一堆固定的检测器("找这种方向的边缘""统计这种纹理出现了几次""计算这块区域的颜色分布"),用这些检测器从图片中提取出一组数字,然后把这组数字交给一个统计模型(比如 SVM,支持向量机)去做最终的分类判断——"这组数字更像猫还是更像狗"。
这个方法能工作,但有一个根本的瓶颈:检测器是固定的。 人类能想到的特征就那么多,能手动设计的检测器也就那么多。不管你后面的统计模型多厉害,输入它的那些特征就这些——如果特征本身不够好,分类结果就上不去。
成绩:top-5 错误率 28.2%。
翻译一下:给 AI 看 100 张图片,5 次机会都猜不对的有 28 张。
如果把这换算成考试分数——满分 100 分的话——大概相当于考了 72 分。能及格,但说不上好。
2011 年,第二届。
冠军是来自法国的 XRCE 团队(施乐欧洲研究中心),用的是一种叫"压缩 Fisher 向量"的方法——本质上还是人工设计特征,然后用统计方法分类。
成绩:top-5 错误率 25.8%。
从 28.2% 到 25.8%,进步了 2.4 个百分点。
换算成考试分数:从 72 分进步到了 74 分。
这是一种很"正常"的进步——每年各个团队改进一下特征提取方法,调整一下分类器参数,小心翼翼地把错误率往下磨一点点。
所有人都默认:这就是 AI 进步的速度。2012 年也许能到 24%,2013 年也许能到 22%,像挤牙膏一样。
