当前位置: 首页 > news >正文

LLM预训练过程-简明版本

文章总结自视频:【1080P】安德烈·卡帕西:深入探索像ChatGPT这样的大语言模型|Andrej Karpathy_哔哩哔哩_bilibili

LLM 预训练
定义:用海量通用文本(如互联网、书籍)训练基础模型(如 GPT、LLaMA),学习语言通用规律。
目的:赋予模型理解 / 生成文本的基础能力(生成的文本不一定是你想要的),形成 “语言本能”,无需针对具体任务。

后训练(微调)
定义:用特定任务 / 领域数据(如医疗对话、代码)进一步训练预训模型。
目的:让模型适配细分场景(如问答、翻译),提升任务精度,减少通用噪声干扰。

1. 准备训练集

详细的数据集准备方法可参考视频,或者huggingFace

2. 分词(Tokenizer)

分词(Tokenization) 是将连续的自然语言文本(如句子、段落)分割成有意义的独立单元(称为 “词” 或 “Token”)的过程。这些单元可以是词语、子词(如词缀)、字符甚至字节,具体取决于语言特性和模型需求。

分词的本质是将人类语言的 “模糊性” 转化为机器可计算的 “离散符号”,其质量直接决定了 NLP 系统的上限。

分词工具:https://tiktokenizer.vercel.app/ 

 如下,gpt-4o分词工具,将"hello, how are you?"分成6个tokens,分别是:

24912, 11, 1495, 553, 481, 30

 deepseek-r1分词情况(中文)如下。

 那么一次分词器需要多少个不同的tokens来表示编码所有文本内容呢?gpt需要100277个。

3. 训练

语言模型训练的核心逻辑:基于上下文序列,预测下一个 token 的概率分布,并通过监督学习优化模型参数。

如下上下文输入的是前4个tokens(逐渐增加输入tokens,理论上可以无限多个,但是实际计算量太大,会限制输入个数作为最大上下文长度),下一个token是3962,预测此token的概率。网络输出的是一个 100277维度的概率分布,每一个位置表示下一个是对应token的概率。如下3962位置的概率是4%,目标是通过有监督学习使得此概率越大越好。

注意:这样训练得到的只是一个base model;他只会根据输入,随机概率出后续内容。它不是instruct model。如下图所示,直接复制输入维基百科内容,base model会填充后续的维基百科内容内容。这些base model非常删除记忆训练的数据,所以输入前面的内容,他会补充后续的内容。

4. 推理

LLM 的自回归特性:生成下一个 Token 时,始终基于已生成的历史内容,逐步扩展序列,直至满足终止条件(如达到指定长度或生成结束符)。

相关文章:

  • 400. 第 N 位数字
  • ajax组件是什么
  • zerotier搭建免费moon服务器
  • 2.5 Spring Boot异常处理全局化:@ControllerAdvice实战
  • 刷leetcode hot100--动态规划3.12
  • RHCE大纲
  • std::ranges::views::reverse, std::ranges::reverse_view
  • 什么是 Java 的 SPI(Service Provider Interface)机制?
  • doris:外表统计信息
  • mock的定义和使用场景
  • LORA中 软提示是什么
  • LoRA,DoRA,RSLoRA,LoRA+ 是什么
  • STM32外部中断
  • 复现 MoGe
  • 计算机网络:Socket编程 Tcp协议 第二弹
  • 传智杯-省赛-第二场(B组)题解
  • 限制数据库字段长度的公用写法:length和like和rlike对于限制字段长度的原理与区别
  • 【技海登峰】Kafka漫谈系列(九)SpringBoot整合Kafka多数据源配置
  • BFS最短路径(十六)127. 单词接龙 困难
  • 爬虫案例十四js逆向中国五矿
  • 硅料收储挺价“小作文”发酵光伏板块罕见大涨,知情人士:确实在谈
  • 上海建筑领域绿色发展2025年工作要点发布
  • 巴基斯坦称对印精准打击造成设施损坏和人员伤亡
  • “苏河超级管”调研:桥下公园“留白”很好,指引差点
  • 明星同款撕拉片,为何能炒到三四百一张?
  • OpenAI任命了一位新CEO