兰 亭 墨 苑
期货 · 量化 · AI · 终身学习
首页
归档
编辑文章
标题 *
URL 别名 *
内容 *
(支持 Markdown 格式)
先纠正一个理解:现在的AI不是”搜索引擎的升级版”,它和搜索引擎在底层原理上完全是两码事。这个误解非常普遍,但不纠正这个认知,后面的问题就没法聊了。搜索引擎干的事情是”索引+检索”——谷歌把互联网上的网页抓下来,建一个倒排索引,你输入关键词,它把最相关的结果排序返回给你。本质上它是一个图书管理员,虽然效率极高,但它自己不产生任何新内容,不做推理,不做判断。你搜”感冒了怎么办”,它给你一堆链接让你自己看。大模型干的事情完全不同,它是把海量文本数据当成”训练材料”,通过数十亿次的数学运算,在自己的参数里”压缩”出一套关于语言和知识的统计规律。训练完成之后,它生成内容靠的不是去网上搜,而是根据这些内部化的统计规律,一个字一个字地”预测”下一个最可能出现的词。虽然有些AI产品确实会调用搜索引擎做辅助(比如联网版的ChatGPT),但那是锦上添花,不是核心机制。核心机制是那个训练出来的、几千亿参数的神经网络。这个东西在00年代根本不可能存在,不是因为缺搜索引擎,而是因为缺三个更基本的条件——算力、数据、算法,缺一不可,而00年代三个都缺。 要说哪个最致命,我觉得是算力。你可能会觉得00年代的电脑也挺快了,上网、打游戏、做办公都够用,怎么就训练不了AI?这涉及到一个很多人不清楚的事实:训练一个现代大模型需要的计算量,跟日常用电脑的计算量根本不在一个量级上,不是十倍百倍的差距,是几百万倍、几千万倍。你用电脑打开一个网页,CPU可能需要执行几十亿次运算。训练GPT-3需要多少?大约3.14×10²³次浮点运算。你用一台00年代的电脑跑这个运算,不吃不喝不断电,得算几万年。00年代训练AI用的是CPU,CPU的设计目标是”什么都能干一点”——擅长处理复杂逻辑、分支预测、乱序执行,但不擅长大规模并行计算。而神经网络训练的核心操作是矩阵乘法,成千上万个简单的乘法和加法要同时进行。这种活儿CPU干得很慢,因为它每个时钟周期只能处理几个运算。GPU是为图形渲染设计的,天生就是干并行计算的料,一块GPU上有几千个小计算核心,每个都不如CPU核心聪明,但胜在数量碾压,训练神经网络刚好需要这种”笨但多”的算力。 问题是00年代的GPU还不能做通用计算。NVIDIA直到2006年才推出CUDA——第一个让程序员能用GPU跑通用程序(而不仅仅是渲染3D图形)的编程平台。在CUDA之前,你想用GPU做矩阵运算,得把计算问题伪装成一个图形渲染任务,通过OpenGL的shader去算,写过的人都知道那有多蛋疼。所以2006年之前,基本没人拿GPU训练神经网络,不是不想,是太难了。真正的转折点是2012年,Alex Krizhevsky用两块GTX 580显卡训练了一个叫AlexNet的深度卷积神经网络,在ImageNet图像识别比赛上把错误率从26%干到了15.3%,领先第二名十个百分点。这个成绩把整个学术圈都炸了——原来用GPU训练深度网络效果这么恐怖。第二年同一个比赛,前20名全改用深度学习了。这才拉开了深度学习复兴的大幕。 算力之外,第二个缺的是数据。题主说得没错,00年代互联网上确实有大量文字和图片,但”有”和”能用”是两回事。训练AI,尤其是当时主流的监督学习,需要的是标注好的数据——一张照片得有人告诉机器这是猫还是狗,一段话得有人标注情感是正面还是负面。00年代没有大规模的标注数据集,ImageNet是2009年才由李飞飞团队发布的,1400多万张图片、两万多个类别,全靠亚马逊众包平台一张张标出来的。在这之前,最大的图像数据集可能就几万张。你用几万张图训练深度网络,过拟合得一塌糊涂,完全没法用。更根本的是,00年代的全球数据总量跟现在差了好几个数量级。2005年全球数据量在EB(艾字节)级别,2018年就到了33 ZB(泽字节),2024年是159 ZB。1 ZB等于100万EB,二十年间增长了几万倍。这个增长来自移动互联网的爆发——00年代没有智能手机(iPhone 2007年才发布),没有微信,没有短视频,没有外卖App,人们上网主要靠台式机和拨号/低速宽带。产生数据的终端和场景跟现在完全不是一个级别。训练大模型需要TB甚至PB级别的高质量文本,00年代的互联网提供不了这个量。而且这里有个鸡生蛋的问题:在深度学习证明”数据越多效果越好”之前,没有人有动力去花大力气搞海量数据。00年代主流的机器学习方法——SVM、决策树、随机森林——对数据量的需求没那么大,几千几万个样本就够了。大家没觉得数据是瓶颈,所以也没人去解决这个问题。 最后说算法,这个是最被低估的一环。00年代AI研究并没有在睡觉,恰恰相反,那时候的机器学习领域非常活跃,SVM、随机森林、梯度提升决策树(GBDT)都是那个时期发展成熟的。但它们有一个共同的天花板:都是”浅层”模型,表达能力有上限。SVM的核心是找一个超平面把数据分开,分类可以,但处理不了特别复杂的模式识别;决策树系列通过集成学习变强了一些,但本质上还是在人工设计的特征空间里做决策——特征怎么提取,得靠人去想。深度学习最革命性的地方在于它把特征提取和决策合成了一步,让网络自己从原始数据里学特征。你给它一堆图片像素,它自己学出”边缘→纹理→部件→物体”这种层次化的表示。这个能力理论上80年代就有人提过(反向传播1986年就有了),但实际做起来有一堆技术坑没填。最典型的是梯度消失——网络一超过几层,训练信号从输出层往回传的时候越来越弱,到了前面几层基本归零,前面的层根本学不到东西。这个问题直到2010年前后才逐步解决:ReLU激活函数让梯度不再衰减、Batch Normalization稳定了训练过程、残差连接(ResNet,2015年)让你可以训一百多层的网络而不崩。 然后是2017年那篇可能是过去十年最重要的AI论文——Google的”Attention Is All You Need”,提出了Transformer架构。在这之前处理文本用的是RNN,RNN只能一个字一个字顺序处理,前面的信息到后面就忘得差不多了,而且没法并行。Transformer引入了自注意力机制,让模型可以同时看到一整段文本里所有词之间的关系,并且因为不需要顺序处理,在GPU上并行效率极高。没有Transformer就没有GPT系列,没有ChatGPT,没有现在你看到的一切。而这篇论文2017年才发表,距离00年代已经过去了快二十年。2020年OpenAI的GPT-3用1750亿参数验证了所谓的”缩放定律”——模型越大、数据越多、算力越猛,效果就越好,而且会涌现出训练时没有显式教过的能力。这才是现在AI爆发的直接导火索。 所以回到题主的问题:为什么00年代有互联网有搜索引擎,AI却到20年代才行?因为AI需要的东西,搜索引擎一样都给不了。搜索引擎给你的是信息检索——帮你从已有的信息里找到相关的那条。AI需要的是从海量数据中学习统计规律的能力,这个能力需要三个条件同时到位:能做大规模并行计算的硬件(GPU+CUDA,2006年后才有,2012年后才被AI界广泛采用),足够大的训练数据(移动互联网爆发之后的产物),以及能有效利用这些算力和数据的算法(Transformer,2017年)。00年代这三样东西一样都不具备。有个比方我觉得挺贴切:这三个条件就像火箭的发动机、燃料和发射架。00年代的时候,发动机是小号的(SVM级别),燃料只有一桶(几万张标注图片),发射架是个小板凳(CPU)。火箭飞不起来,不是因为天上没有月球,是因为手上的东西根本不够。实际上00年代也有AI产品——语音识别、机器翻译、推荐系统都有了雏形,但效果跟现在天差地别。你跟当年的语音识别系统说话试试,识别率可能还不到70%,而现在已经超过95%了。差距全在这二十年的技术积累里。 这事儿有一个更深的启示。技术突破往往不是单点突破,而是多个条件同时成熟后的突然引爆。00年代有互联网但没有GPU通用计算,有神经网络理论但没有训练深层网络的实用技术,有一定的数据但远远不够喂大模型。这些条件在2012到2017年之间逐一到位,然后在2020年前后形成了临界点。不是某一天突然发生的,是二十多年积累的结果。就像你往一堆沙子上一粒一粒加,加了很久什么都没发生,但最后一粒落下去的时候,整个沙堆塌了。AI这二十年走的就是这么一条路。 有具体想聊的可以在评论区问,我看到会回。
配图 (可多选)
选择新图片文件或拖拽到此处
标签
更新文章
删除文章