大模型之一:大语言模型预训练的过程

介绍

大语言模型的一般训练过程(3步):1、预训练学知识,2、指令微调学格式,3、强化学习对齐人类偏好

预训练

所以要想大模型有领域知识,得增量预训练(靠指令微调记知识不靠谱,不是几十w条数据能做到的)

1. 准备工作

准备基座模型->收集数据->数据清洗

2. 增量预训练所用训练框架

超大规模训练:选用 3D 并行,Megatron-Deepspeed拥有多个成功案例

少量节点训练:选用张量并行,但张量并行只有在 nvlink 环境下才会起正向作用,但提升也不会太明显。

少量卡训练:如果资源特别少,显存怎么也不够,可以使用 LoRA 进行增量预训练。

3. 增量预训练

先用大规模通用语料预训练,再用小规模领域语料二次训练

直接进行大规模领域语料预训练

通用语料比例混合领域语料同时训练

4. 流程

数据预处理:参考 LLaMA 的预训练长度,也把数据处理成2048长度(如果不够,做补全)。

分词器:如果使用 LLaMA 可能需要添加中文词表,目前有不少人做了相关工作,当然也可以自己添加自己需要的词表。

原始模型:各家框架的模型层名不太一样,训练时可能需要做一些调整,在预训练时尽量选择基座模型,不选 Chat 模型。

训练模型:跑通只是第一步,根据训练情况反复调整比较重要。

模型转换:不同框架的checkpoint格式不同,还会根据并行度分成很多个文件。

模型测试:简单测试下续写能力,验证下模型是否正常。

相关推荐
苏苏susuus35 分钟前
NLP:Transformer之self-attention(特别分享3)
人工智能·自然语言处理·transformer
猫天意38 分钟前
【目标检测】metrice_curve和loss_curve对比图可视化
人工智能·深度学习·目标检测·计算机视觉·cv
山烛1 小时前
OpenCV:图像透视变换
人工智能·opencv·计算机视觉·图像透视变换
艾醒(AiXing-w)1 小时前
探索大语言模型(LLM):Ollama快速安装部署及使用(含Linux环境下离线安装)
linux·人工智能·语言模型
月小水长1 小时前
大模型接入自定义 MCP Server,我开发了个免费使用的基金涨跌归纳和归因分析的 Agent
人工智能·后端
咏方舟【长江支流】1 小时前
AI+华为HarmonyOS开发工具DevEco Studio详细安装指南
人工智能·华为·移动开发·harmonyos·arkts·deveco studio·长江支流
阿里云云原生2 小时前
Qoder 全新「上下文压缩」功能正式上线,省 Credits !
人工智能
我星期八休息2 小时前
深入理解跳表(Skip List):原理、实现与应用
开发语言·数据结构·人工智能·python·算法·list
蒋星熠2 小时前
如何在Anaconda中配置你的CUDA & Pytorch & cuNN环境(2025最新教程)
开发语言·人工智能·pytorch·python·深度学习·机器学习·ai
Hcoco_me2 小时前
什么是机器学习?
人工智能·机器学习