AI大模型里有什么:671B参数、几十G的文件,到底都装了些什么
671B,就是6710亿个数字
第一次看到"671B参数"这种描述,大部分人都没概念。
这么说吧,大模型文件里主要就是一堆数字。
每个参数是一个浮点数,比如 0.00234,-1.23456。每个数占2个字节(FP16格式)。
6710亿 × 2字节 ≈ 126GB。
哦,这就是为什么大模型这么大。
这些数字能不能"看懂"?能不能把某个参数改成别的值,让模型突然变聪明?
理论上可以,但实际操作等于在大海里改一滴水的味道——6710亿个参数,改其中几个,模型基本没感觉。要改就得系统性地改,那就是重新训练了。
其实这里面有个挺有意思的事。单个参数啥也不是,就是个随机数。但6710亿个参数连在一起,就能"涌现"出理解能力。这个概念叫emergence,中文叫涌现,目前没人能完全解释清楚为什么数量到了某个临界点,质变就发生了。
这些数字是怎么来的
不是人设定的,是"训练"出来的。
一开始权重都是随机值——就像大脑刚出生时的神经连接是乱的。然后给模型喂海量文本(几万亿个词),每看一段就调整一下权重,让它能更准确地预测下一个词。看了几万亿个词之后,权重就"定型"了。
这个"预测下一个词"的训练方式,听起来很蠢,但效果惊人。
模型为了能准确预测下一个词,它必须"理解"前文在说什么——不理解的话,预测就是瞎猜。所以在这个过程中,模型"被迫"学会了语法、逻辑、常识、甚至一些推理能力。
训练完之后这些权重就固定了。每次你跟AI对话,它就是在用这些权重做计算——输入你的问题,经过几百层神经网络,最后输出回答。
你问它"1+1等于几",它不是在"回忆"答案,而是在算:给定输入"1+1等于",下一个词概率最高的是哪个。
这个区别很重要。
模型文件里还有什么
除了权重,还有几样东西:
配置文件 — 多少层、每层多大,相当于建筑图纸。
词表(tokenizer) — 把文字转换成数字,比如"你好"可能被转换成 [12345, 67890]。
多模态模型(能看图、听声音)还要多存:
- 视觉编码器 — 把图片转成数字序列,有自己的权重
- 对齐层 — 把图片、文字"翻译"到同一个数学空间里
多模态模型比纯文本模型大,不是因为"存了更多知识",而是多了编码器和对齐层的权重。
以LLaVA为例:纯文本70B + 视觉编码器4B + 对齐层1B = 约75B。多出来的5B,就是让模型"能看图"的代价。
权重里到底"编码"了什么
很多人以为模型里存的是"知识库"——比如"水的沸点是100度"这样的条目。
不是的。
训练数据本身并不在大模型文件里。模型文件里只有权重,没有原始文本。
那它是怎么"知道"那么多东西的?
训练数据里的信息,被"压缩"进了权重里——但不是把文字打包存起来,而是把文字之间的统计规律学到了权重里。
权重里存的是"概率",不是"原文"。
打个比方:你读了100遍"水在100度沸腾",你大脑里不会把这句话原封不动存下来,但你"知道"这件事。大模型也是类似的逻辑。
说穿了,权重就是一个超级复杂的函数——输入一段文字(或图片),输出下一个词的概率分布。
这个"函数"能工作,是因为它学会了词语之间的关联强度:
“水"后面容易跟"是”“的”……“水沸腾"后面容易跟"需要”“温度”……
671B参数,就是这个函数的"复杂度上限"。
但注意,这里说的"模式",不是"知识条目",就是关联强度。
这也是为什么大模型会"胡编"——它是在根据权重里的模式"猜"下一个词,而不是从某个知识库里"查"答案。
你问它一个它没见过的问题,它还是会基于关联强度"猜"一个答案出来。猜对了就是幻觉,猜错了就是胡说。
知道这些有什么用
知道大模型里"只有权重、没有原文",你就明白为什么AI会撒谎——它不是在"回忆",它是在"猜"。
知道参数多不等于聪明,你就不会被"我们的模型有XXXB参数"这种宣传语忽悠。
知道多模态模型是"额外加了编码器",你就明白为什么有些多模态模型看图能力很强、有些很烂——编码器的质量差很多。
其实搞清楚这些,最大的用处是:你不会再对AI有莫名其妙的敬畏感。它就是一堆数字,不是什么神秘黑盒。当然,这堆数字大到一定程度之后,表现确实像黑盒——目前连OpenAI自己都解释不清楚为什么GPT会突然学会某些能力。
这事儿挺有意思的。人类造出来的东西,自己却解释不了。
关注小虾,一起成长,一起进化
更多推荐
所有评论(0)