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

HugginngFace的Trainer的常见用法

Hugging FaceTrainer 类提供了一个高度集成的训练、评估和预测接口,能大幅简化我们预训练和微调的工作量。比如我最近最常会遇到的用监督学习微调语言模型任务为例,只需要定义一个Trainer,然后传入我想要训练的模型和数据集,就可以直接运行微调任务。

以下是 Trainer 的一些常见用法和参数配置:

首先,Trainer 可以通过提供模型、数据集、训练参数等来进行快速的模型训练:

from transformers import Trainer, TrainingArguments, AutoModelForSequenceClassification, AutoTokenizer
from datasets import load_dataset# 加载预训练模型和分词器
model = AutoModelForSequenceClassification.from_pretrained("bert-base-uncased", num_labels=2)
tokenizer = AutoTokenizer.from_pretrained("bert-base-uncased")# 加载数据集
dataset = load_dataset("glue", "sst2")
encoded_dataset = dataset.map(lambda x: tokenizer(x['sentence'], padding="max_length", truncation=True), batched=True)# 设置训练参数
training_args = TrainingArguments(output_dir="./results",          # 模型保存路径evaluation_strategy="epoch",     # 每个epoch进行一次评估learning_rate=2e-5,              # 学习率per_device_train_batch_size=16,  # 每个设备的训练批次大小per_device_eval_batch_size=16,   # 每个设备的评估批次大小num_train_epochs=3,              # 训练轮数weight_decay=0.01,               # 权重衰减
)# 创建Trainer
trainer = Trainer(model=model,                         # 预训练模型args=training_args,                  # 训练参数train_dataset=encoded_dataset['train'],  # 训练数据集eval_dataset=encoded_dataset['validation'],  # 评估数据集
)# 开始训练
trainer.train()


http://www.mrgr.cn/news/43601.html

相关文章:

  • Python使用matplotlib绘制图形大全(曲线图、条形图、饼图等)
  • 二叉搜索树 (BST) 节点插入、查找、删除、获取最大值、最小值和中序遍历排序等功能
  • 每日一题|134. 加油站|循环数组单次遍历
  • PriorityQueue分析
  • 数据结构阶段测试2的一点小补充
  • FRP搭建内网穿透:云服务端 + 家用Linux/Windows主机【2024】
  • 【ShuQiHere】Linux 系统内存清理指南:优化内存使用,提升系统性能
  • centos7安装配置python3环境
  • 【C++ 真题】B2049 最大数输出
  • CPU和GPU的区别
  • springboot中配置优先级
  • 基于Node2Vec的图嵌入实现过程
  • 《普林斯顿数学分析读本》中文版目录
  • UE4 材质学习笔记03(翻书(Flipbook)动画/环境混合)
  • 【Qt】Qt学习笔记(一):Qt界面初识
  • 【代码随想录Day31】贪心算法Part05
  • 【ShuQiHere】双系统指南:如何在 Linux 系统情况下安装 Windows 11,处理引导与网络问题 ️
  • yub‘s Algorithm Adventure Day6
  • Unity Shader Graph基础包200+节点及术语解释
  • 【每天学个新注解】Day 16 Lombok注解简解(十五)—@FieldNameConstants