Andrej Karpathy:忙人的LLM入门指南(病毒式30分钟讲解)

Andrej Karpathy
lecturetutorialtrainingresearch

视角

这是大语言模型的权威入门讲座——Karpathy在原始讲座未被录制后重新录制了这个病毒式的30分钟讲话用于YouTube。如果你理解了这场讲座,你就理解了基础知识。

“大语言模型就是两个文件。” 参数文件(Llama 2 70B为140GB——70亿参数 × 2字节的float16)和运行文件(约500行C代码,无依赖)。拿着这两个文件,编译一下,你就可以在MacBook上离线与模型对话。这就是全部内容。

训练就是压缩。 拿10TB的互联网文本,6000个GPU运行12天(约200万美元),将其压缩成140GB的参数。这大约是100倍的压缩——但这是有损压缩。模型拥有训练数据的”完形”,而不是完全复制。“这有点像互联网的zip文件。”

反向诅咒显示了这种知识有多奇怪。 GPT-4知道汤姆·克鲁斯的母亲是玛丽·李·菲弗。但问”玛丽·李·菲弗的儿子是谁?“它就不知道了。“这种知识很奇怪,有点像一维的。你必须从某个特定的方向提问。”

“LLM基本上是难以理解的人工物。” 我们知道确切的架构、每个数学运算。但我们不知道1000亿个参数在做什么。“我们可以测量它在下一个词预测上做得更好,但我们不知道这些参数是如何协作来执行这个任务的。“不像汽车那样,我们理解所有零件。

预训练与微调。 预训练:大量低质量的互联网数据,构建知识。微调:较小的数量(约10万个例子),非常高质量的问答对,给模型”助手”的格式。预训练很昂贵(几个月、数百万美元、一年一次)。微调很便宜(可能每天迭代)。

RLHF使用比较是因为比较比生成更容易。 写一首俳句很难。从几个选项中挑选最好的俳句更容易。第3阶段微调用强化学习人类反馈来利用这一点。

标度定律是关键洞察。 性能是”仅关于两个变量的非常光滑、表现良好、可预测的函数:N(参数)和D(训练数据)。“没有触顶的迹象。“算法进步不是必需的——通过训练更大更长的模型,我们可以免费获得更强大的模型。“

关键要点

  • 两个文件 - 参数(70B模型为140GB)+ run.c(约500行)
  • 100倍有损压缩 - 10TB互联网 → 140GB参数
  • 下一个词预测 - 基础任务;强制学习世界知识
  • 反向诅咒 - 知识是一维的;方向重要
  • “基本上难以理解” - 我们知道架构但不知道参数做什么
  • 预训练 = 知识 - 昂贵,数月,网络规模数据
  • 微调 = 对齐 - 便宜,每天可进行,10万高质量例子
  • RLHF - 比较比生成容易;第3阶段优化
  • 标度定律 - 性能可从参数×数据预测;无平台期
  • 开源vs闭源 - 闭源(GPT-4、Claude)效果更好;开源(Llama)可追上
  • “幻觉” - 模型不知道它记忆了什么与生成了什么

大局

LLM是人类知识的100倍压缩版本,可以放在笔记本电脑上。我们构建了它,我们可以运行它,但我们不完全理解1000亿个参数如何协作产生智能。我们处于一个奇怪的位置——在完全理解之前创造了强大的东西。