简介
trainer是transformers中提供的函数,内部封装了完整的训练,评估逻辑并集成了多种的 后端
完整使用流程
from transformers import Trainer,TrainingArguments
training_args=TrainingArguments(..)
trainer=Trainer(args=training_args,..)
trainer.train()
trainer.evaluate()
#模型预测
trainer.predict()
模型代码微调
#导入相关包
from transformers import AutoTokenizer,AutoModelForSequenceClassification
import pandas as pd
data=pd.read_csv("/ChrSentCorp_htl_all.csv")
data=data.dropna()
data
#创建datasets
from torch.utils.data import Dataset
class MyDataset(Dataset):
def __init__(self) ->None:
super().__init__()
self.data=pd.read_csv("/ChrSentCorp_htl_all.csv")
self.data=self.data.dropna()
def __getitem__(self,index):
return self.data.iloc[index]["review"],self.data.iloc[index]["label"]
def __len__(self):
return len(self.data)
dataset=MyDataset()
###这行代码定义了一个名为 MyDataset 的类,它继承自 torch.utils.data.Dataset 类。定义了一个名为 MyDataset 的类,它继承自 torch.utils.data.Dataset 类。这是 MyDataset 类的构造函数 __init__。在这个函数中,首先调用了父类 Dataset 的构造函数 super().__init__(),以确保正确初始化父类。这是 MyDataset 类的 __getitem__ 方法,用于获取索引为 index 的数据项。在这个方法中,代码使用 iloc 方法从 self.data 中获取指定索引位置的行,并返回该行的 "review" 列和 "label" 列的值。
#划分数据集
from torch.utils.data import random_split
trainset,validset=random_split(dataset,length=[0.9,0.1])
#创建dataloader
tokenizer=AutoTokenizer.from_pret

本文详细介绍了如何使用HuggingFaceTransformers库进行模型训练和微调,包括数据预处理、模型初始化、数据加载、训练流程、评估指标以及模型预测。主要步骤涉及训练Arguments的配置、Trainer类的使用以及自定义数据处理函数和评估函数。
最低0.47元/天 解锁文章
5097

被折叠的 条评论
为什么被折叠?



