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

北京做网站youyi51在线注册网站

北京做网站youyi51,在线注册网站,php网站开发实战视频,中国平面设计在线上文【04】LLaMA-Factory微调大模型——数据准备介绍了如何准备指令监督微调数据,为后续的微调模型提供高质量、格式规范的数据支撑。本文将正式进入模型微调阶段,构建法律垂直应用大模型。 一、硬件依赖 LLaMA-Factory框架对硬件和软件的依赖可见以下…

上文【04】LLaMA-Factory微调大模型——数据准备介绍了如何准备指令监督微调数据,为后续的微调模型提供高质量、格式规范的数据支撑。本文将正式进入模型微调阶段,构建法律垂直应用大模型。

一、硬件依赖

LLaMA-Factory框架对硬件和软件的依赖可见以下链接的说明文档。

LLaMA-Factory/README_zh.md at main · hiyouga/LLaMA-Factory · GitHubicon-default.png?t=N7T8https://github.com/hiyouga/LLaMA-Factory/blob/main/README_zh.md可根据该表格中方法和模型参数体量对应的硬件需求来评估自身硬件能否满足。

方法精度7B13B30B70B110B8x7B8x22B
FullAMP120GB240GB600GB1200GB2000GB900GB2400GB
Full1660GB120GB300GB600GB900GB400GB1200GB
Freeze1620GB40GB80GB200GB360GB160GB400GB
LoRA/GaLore/BAdam1616GB32GB64GB160GB240GB120GB320GB
QLoRA810GB20GB40GB80GB140GB60GB160GB
QLoRA46GB12GB24GB48GB72GB30GB96GB
QLoRA24GB8GB16GB24GB48GB18GB48GB

二、微调设置

训练方法方面,LLaMA-Factory框架不仅支持预训练(Pre-Training)、指令监督微调训练(Supervised Fine-Tuning),还是支持奖励模型训练(Reward Modeling)、PPO、DPO、ORPO等强化学习训练,可使用各种方法完成全参数训练、部分参数训练、LoRA以及QLoRA。

方法全参数训练部分参数训练LoRAQLoRA
Pre-Training
Supervised Fine-Tuning
Reward Modeling
PPO Training
DPO Training
KTO Training
ORPO Training
SimPO Training

(1)首先进入虚拟环境,启动LLaMA-Factory框架的web网页

选择训练阶段,当前即 指令监督微调训练(SFT),载入数据集

可根据实际需求设置相应的学习率、训练轮数、验证集比例、日志间隔、保存间隔等信息。之后点击预览命令,可查看对应配置的命令行,命令可以本地保存,此后以命令行方式运行也是可行的,点击开始进行训练(需选择基础模型)。命令的具体说明如下(LoRA示例)

CUDA_VISIBLE_DEVICES=1 llamafactory-cli train \--stage sft \      #指定sft微调训练,可选rm,dpo等--do_train True \  #训练是do_train,预测是do_predict--model_name_or_path /hXXXXX \  #模型目录--finetuning_type lora \    #训练类型为lora,也可以进行full和freeze训练--quantization_bit 4 \      #量化精度,4bit,可选8bit和none不量化--template XXXX \      #模版,每个模型要选对应的模版,对应关系见上文--flash_attn auto \          #flash attention,闪光注意力机制,一种加速注意力计算的方法--dataset_dir data \        #数据目录--dataset oaast_sft_zh \    #数据集,可以通过更改dataset_info.json文件配置自己的数据集--cutoff_len 1024 \         #截断长度--learning_rate 5e-05 \     #学习率,AdamW优化器的初始学习率--num_train_epochs 20.0 \   #训练轮数,需要执行的训练总轮数--max_samples 100000 \      #最大样本数,每个数据集的最大样本数--per_device_train_batch_size 1 \    #批处理大小,每个GPU处理的样本数量,推荐为1--gradient_accumulation_steps 1 \    #梯度累积,梯度累积的步数,推荐为1--lr_scheduler_type cosine \         #学习率调节器,可选line,constant等多种--max_grad_norm 1.0 \                #最大梯度范数,用于梯度裁剪的范数--logging_steps 100 \                #日志间隔,每两次日志输出间的更新步数--save_steps 5000 \                  #保存间隔,每两次断点保存间的更新步数。--warmup_steps 0.1 \                 #预热步数,学习率预热采用的步数。--optim adamw_torch \                #优化器,使用的优化器:adamw_torch、adamw_8bit 或 adafactor--packing False \                    --report_to none \--output_dir savesXXXXXX   \    #数据目录--fp16 True \                        #计算类型,可以fp16、bf16等--lora_rank 32 \                     #LoRA秩,LoRA矩阵的秩大小,越大精度越高,推荐32--lora_alpha 16 \                    #LoRA 缩放系数--lora_dropout 0 \--lora_target W_pack \               #模型对应的模块,具体对应关系见上文--val_size 0.1 \--evaluation_strategy steps \--eval_steps 5000 \--per_device_eval_batch_size 1 \--load_best_model_at_end True \--plot_loss True

该参数的分析说明参考以下这篇博文

AI智能体研发之路-模型篇(一):大模型训练框架LLaMA-Factory在国内网络环境下的安装、部署及使用-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/weixin_48007632/article/details/138819599本文采用LoRA方法对模型进行微调。

LoRA的基本原理是利用模型参数的稀疏性,通过学习模型参数的局部关系来高效地微调模型。具体来说,LoRA通过随机选择一部分模型参数进行微调,而不是对所有参数进行微调。这种方法可以大大减少模型的训练时间和计算资源,同时提高模型的性能。在实现上,LoRA可以分为两个阶段。在第一阶段,LoRA随机选择一部分模型参数进行训练,得到一个初步的微调模型。在第二阶段,LoRA对初步微调模型进行优化,进一步调整模型参数。这个过程可以重复多次,以得到更好的性能。
LoRA的优点在于它能够有效地利用模型参数的稀疏性,减少训练时间和计算资源。同时,由于LoRA只对部分参数进行微调,可以避免过拟合和泛化能力下降的问题。此外,LoRA还可以扩展到大规模深度学习模型中,具有广泛的应用前景。
在实际应用中,LoRA已经被应用于各种深度学习模型和任务中,取得了显著的效果。例如,在自然语言处理领域中,LoRA被用于文本分类、情感分析、机器翻译等任务中,取得了优秀的性能表现。在计算机视觉领域中,LoRA被用于图像分类、目标检测、人脸识别等任务中,也取得了很好的效果。

LoRA中具体每一参数的含义可参考这篇博客。

PEFT LoraConfig参数详解_深度学习_新缸中之脑-GitCode 开源社区 (csdn.net)icon-default.png?t=N7T8https://gitcode.csdn.net/662763f09c80ea0d2271339f.html?dp_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZCI6NjUwMjE2LCJleHAiOjE3MjE4MDY0NjAsImlhdCI6MTcyMTIwMTY2MCwidXNlcm5hbWUiOiJINjY3Nzg4OTkifQ.GLkvRn5166k33ax3BiMR9H8KJLE8wV2JTOa4TGpZjbE

三、微调llama3-8b-chinese-chat模型

选择已经配置好路径的llama-9b-chinese模型

设置对应的输出目录和配置路径,开启训练 

整个指令微调过程耗时约8个小时,需要耐心等待

检查显卡的运行情况

nvidia-smi

在训练的过程中也可随时保存参数,中断训练

之后,可选择相应的配置进行恢复

此后,可接着中断点继续训练模型

模型训练完成后会显示训练情况

导出损失率和训练轮数的折线图

 

随着训练epoch的增加,损失值总体呈下降趋势。这通常表明模型在学习和改进,对数据的拟合逐渐变得更好。

四、微调Qwen-2模型

模型选择与训练开启的方法与llama3-8b-chinese-chat相同

训练开启后,命令行如图所示

通过网页端可观察训练过程中损失率的变化以及进度

模型微调的耗时约为7个小时

训练结果如下:

 

【注意】两个模型微调时不是一致的参数,Qwen-2的训练在LoRA的秩为32,日志间隔50,保存间隔200。 

 

 小结

本文介绍了如何对模型进行微调。下文【06】LLaMA-Factory微调大模型——微调模型评估将对微调后的模型进行应用与评估,欢迎您持续关注,如果本文对您有所帮助,感谢您一键三连,多多支持。

http://www.hengruixuexiao.com/news/18143.html

相关文章:

  • 修改WordPress上传图片时间网站优化网站
  • 代办公司营业执照seo编辑的工作内容
  • 怎么提交网站地图中国seo谁最厉害
  • wordpress有声电台优化合作平台
  • 熊掌号结合网站做seoseo排名策略
  • 学网站建设 去那里黑龙江最新疫情
  • 自建网站推广的最新发展seo优化培训多少钱
  • 淘客个人网站怎么建设宁德seo
  • 中国建设银行官网站周波网站域名费一年多少钱
  • 洛阳哪家网站做的好最新疫情新闻100字
  • php无版权企业网站管理系统国外搜索引擎网址
  • 郑州网站推广效果seo排名培训学校
  • wordpress如何设置网站描述企业seo优化
  • 我的网站突然找不到网页了网站关键词seo费用
  • 创建个人网站怎么赚钱seo外链优化方法
  • 做公司年报网站登录密码是什么网络营销公司业务范围
  • 贵阳网站设计案例上海关键词seo
  • 法院网站建设免费关键词排名优化软件
  • wordpress邮箱验证配置文件排名seo公司哪家好
  • 做网站费用滁州信息流优化师招聘
  • wordpress建站产品导入不同目录seo准
  • 成都网站制作电话怎么写网站
  • 北京旅游网站排名上海网优化seo公司
  • 霸州有做滤芯网站的吗seo优化网站推广专员招聘
  • 扬中会建网站互联网营销师怎么报名
  • 西安好玩的地方排行榜正规网站优化哪个公司好
  • 网站搭建品牌品牌策划是做什么的
  • 公司网站快速备案百度金融
  • 做网站找哪家好怎么自己找外贸订单
  • 做app还是网站免费网站流量统计工具