大语言模型占显存的计算和优化

可以优化的地方:

per_device_train_batch_size(相当于batch size,越小显存占的越小)

gradient_accumulation_steps(per_device_train_batch_size*gradient_accumulation_steps=计算梯度的数据数)

gradient_checkpointing(前项激活值里面有很多是不需要存的,可以在反向传播再次计算的)

optim(可以改为adafactor)

冻结参数(只训练下游任务的参数)

将max_length减小

参考代码:

复制代码
train_args = TrainingArguments(output_dir="./checkpoints",      # 输出文件夹
                               per_device_train_batch_size=1,   # 训练时的batch_size
                               gradient_accumulation_steps=32,  # *** 梯度累加 ***
                               gradient_checkpointing=True,     # *** 梯度检查点 *** 前项激活值里面有很多是不需要存的,可以在反向传播再次计算的
                               optim="adafactor",               # *** adafactor优化器 *** 
                               per_device_eval_batch_size=1,    # 验证时的batch_size
                               num_train_epochs=1,              # 训练轮数
                               logging_steps=10,                # log 打印的频率
                               evaluation_strategy="epoch",     # 评估策略
                               save_strategy="epoch",           # 保存策略
                               save_total_limit=3,              # 最大保存数
                               learning_rate=2e-5,              # 学习率
                               weight_decay=0.01,               # weight_decay
                               metric_for_best_model="f1",      # 设定评估指标
                               load_best_model_at_end=True)     # 训练完成后加载最优模型

for name, param in model.bert.named_parameters():
    param.requires_grad = False

tokenized_examples = tokenizer(examples["review"], max_length=32, truncation=True, padding="max_length")
相关推荐
时见先生1 小时前
Python库和conda搭建虚拟环境
开发语言·人工智能·python·自然语言处理·conda
昨夜见军贴06163 小时前
IACheck AI审核在生产型企业质量控制记录中的实践探索——全面赋能有关物质研究合规升级
大数据·人工智能
智星云算力3 小时前
智星云镜像共享全流程指南,附避坑手册(新手必看)
人工智能
盖雅工场3 小时前
驱动千店销售转化提升10%:3C零售门店的人效优化实战方案
大数据·人工智能·零售·数字化管理·智能排班·零售排班
Loo国昌3 小时前
深入理解 FastAPI:Python高性能API框架的完整指南
开发语言·人工智能·后端·python·langchain·fastapi
发哥来了3 小时前
【AI视频创作】【评测】【核心能力与成本效益】
大数据·人工智能
醉舞经阁半卷书14 小时前
Python机器学习常用库快速精通
人工智能·python·深度学习·机器学习·数据挖掘·数据分析·scikit-learn
产品何同学5 小时前
在线问诊医疗APP如何设计?2套原型拆解与AI生成原型图实战
人工智能·产品经理·健康医疗·在线问诊·app原型·ai生成原型图·医疗app
星爷AG I5 小时前
9-14 知觉整合(AGI基础理论)
人工智能·agi
开源技术5 小时前
Violit: Streamlit杀手,无需全局刷新,构建AI面板
人工智能·python