我在尝试训练模型时收到错误消息,但出于某种原因,每次更改模型时它都会给我相同的消息。
这是代码:
# Define training arguments
training_args = TrainArgument(
output_dir="bert_results",
num_train_epochs=3,
per_device_train_batch_size=8,
per_device_eval_batch_size=32,
warmup_steps=500,
weight_decay=0.01,
logging_dir="bert_results/logs",
logging_steps=10,
)
# Initialize the TFTrainer
trainer = Trainer(
model=model,
args=training_args,
train_dataset=train_dataset,
eval_dataset=eval_dataset,
loss_function=("categorical_crossentropy")
)
# Train the model
trainer.train()
What I am getting in return "Traceback (most recent call last):
File "C:\Users\Jesh\PycharmProjects\Yelp\finetuning.py", line 44, in <module>
trainer = Trainer(
^^^^^^^^
File "C:\Users\Jesh\PycharmProjects\Yelp\venv\Lib\site-packages\tftrainer\trainer.py", line 32, in __init__
if isinstance(callable, loss_function)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: isinstance() arg 2 must be a type, a tuple of types, or a union"
我正在开发一个机器学习项目,我希望在运行特定脚本后生成经过微调的模型。该脚本涉及使用自定义训练器类来训练模型。尽管对训练器类进行了各种修改以改进训练过程,但我始终遇到与模型状态相关的错误。
具体错误信息为:“sate error”。此错误表明模型在训练过程中或训练后的状态管理存在问题。
尝试从 Trainer 中删除
loss_function
参数。我在最新文档中找不到它的存在。
# Initialize the TFTrainer
trainer = Trainer(
model=model,
args=training_args,
train_dataset=train_dataset,
eval_dataset=eval_dataset
)
我还注意到您正在使用
TFTrainer
,最新版本的变压器似乎不支持它。我检查了一些变压器的旧文档,但仍然没有找到那个论点。
如果您需要自定义损失函数,请参阅此HF 线程。本质上,您必须子类化
Trainer
并重写 compute_loss
方法。