AI 大模型项目落地实战
蓝金伟
AI 创业者,前新浪网技术专家
2369 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已更新 17 讲/共 26 讲
AI 大模型项目落地实战
15
15
1.0x
00:00/00:00
登录|注册

16|训练:真实的电商客服模型训练过程藏有哪些魔鬼细节?

你好,我是金伟。
如果把训练数据看作一个程序里的数据结构,那模型训练则可以看作这个程序的算法部分。通过上一节课,数据已经准备完毕,接下来请你跟着我一起来尝试大模型训练。
如果你已经接触过一些大模型的资料,可能会发现大模型训练的核心代码都类似下面这一小段程序(程序 1)。
#程序1
import torch
from transformers import Trainer, TrainingArguments
#定义训练参数
training_args = TrainingArguments(
output_dir='./results', #输出目录
evaluation_strategy="epoch", #评估策略,每个epoch评估一次
per_device_train_batch_size=8, #训练时每个设备的批量大小
per_device_eval_batch_size=8, #评估时每个设备的批量大小
num_train_epochs=50, #最大训练轮次
save_steps=10_000, #保存间隔步数
eval_steps=500, #评估间隔步数
logging_steps=500, #日志记录间隔步数
learning_rate=2e-5, #学习率
load_best_model_at_end=True, #在结束时加载最佳模型
)
#创建Trainer实例
trainer = Trainer(
model=model, #你的模型
args=training_args, #训练参数
train_dataset=train_dataset, #训练数据集
eval_dataset=eval_dataset #验证数据集
)
#开始训练
trainer.train()
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
  • 解释
  • 总结

1. 模型训练的核心代码包含了数据集、训练参数、训练器和执行训练,实际工程中需考虑更多细节,但总体代码量级与示例程序相近。 2. 选择合适的基座大模型和微调方法是模型训练的关键,针对电商客服场景,选型ChatGLM作为基座大模型,并选择P-tuning v2微调方法。 3. 数据需要分批分步训练,学习率、批次大小和损失率是重要的训练参数,工程师需要通过分析、调整参数和数据,让大模型效果达到最优。 4. 数据集的处理需要经过格式转化、拆分和token化等步骤,以便进行模型训练。 5. 实验结果表明,调整参数后的训练损失和验证损失都逐步降低并收敛,可以判定为正常训练结果。 6. 一般要做至少10次的实验,通过这个过程工程师可以了解业务数据的特性,找到合适的参数范围,再进行更大数据量的模型训练。 7. 在真实项目里,一般先拿部分业务数据做训练和微调,测试应用效果,确定大致的参数和数据规则后再跑全量数据训练,这样可以节省成本的前提下保证效果。 8. 模型训练最难的部分在于参数微调,需要根据经验整理一个调参流程图,以便在训练过程中查看和找到对应的处理方法。 9. 模型训练过程中最重要的参数是批次大小,学习率;最重要的指标是训练损失率,验证损失率。 10. 在大模型微调实验中需要探索更多的调参方法和其他细节,真正的大模型工程师经验需要从实验-工程反复多次实战中才能得到。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《AI 大模型项目落地实战》
新⼈⾸单¥59
立即购买
登录 后留言

精选留言

由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论
显示
设置
留言
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部
文章页面操作
MAC
windows
作用
esc
esc
退出沉浸式阅读
shift + f
f11
进入/退出沉浸式
command + ⬆️
home
滚动到页面顶部
command + ⬇️
end
滚动到页面底部
⬅️ (仅针对订阅)
⬅️ (仅针对订阅)
上一篇
➡️ (仅针对订阅)
➡️ (仅针对订阅)
下一篇
command + j
page up
向下滚动一屏
command + k
page down
向上滚动一屏
p
p
音频播放/暂停
j
j
向下滚动一点
k
k
向上滚动一点
空格
空格
向下滚动一屏
播放器操作
MAC
windows
作用
esc
esc
退出全屏
⬅️
⬅️
快退
➡️
➡️
快进
空格
空格
视频播放/暂停(视频全屏时生效)