此训练代码基于此处找到的run_glue.py脚本:
# Set the seed value all over the place to make this reproducible.
seed_val = 42
random.seed(seed_val)
np.random.seed(seed_val)
torch.manual_seed(seed_val)
torch.cuda.manual_seed_all(seed_val)
# Store the average loss after each epoch so we can plot them.
loss_values = []
# For each epoch...
for epoch_i in range(0, epochs):
# ========================================
# Training
# ========================================
# Perform one full pass over the training set.
print("")
print('======== Epoch {:} / {:} ========'.format(epoch_i + 1, epochs))
print('Training...')
# Measure how long the …Run Code Online (Sandbox Code Playgroud) 我在运行评估报告时收到此错误。我使用 bert-base-german-cased 为我的自定义数据集训练了我的模型。
代码如下:
from sklearn.metrics import confusion_matrix
...
tn, fp, fn, tp = confusion_matrix(labels, preds).ravel()
Run Code Online (Sandbox Code Playgroud)
错误是
ValueError Traceback (most recent call last)
<ipython-input-33-0d7757abd7dd> in <module>
10 model = model_class.from_pretrained(checkpoint)
11 model.to(device)
---> 12 result, wrong_preds = evaluate(model, tokenizer, prefix=global_step)
13 result = dict((k + '_{}'.format(global_step), v) for k, v in result.items())
14 results.update(result)
<ipython-input-30-c0946f859f89> in evaluate(model, tokenizer, prefix)
76 elif args['output_mode'] == "regression":
77 preds = np.squeeze(preds)
---> 78 result, wrong = compute_metrics(EVAL_TASK, preds, out_label_ids)
79 results.update(result)
80
<ipython-input-30-c0946f859f89> …Run Code Online (Sandbox Code Playgroud)