小编syl*_*ter的帖子

Pytorch:IndexError:索引超出自身范围。怎么解决?

此训练代码基于此处找到的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)

python pytorch bert-language-model

19
推荐指数
2
解决办法
7万
查看次数

sklearn fusion_matrix:ValueError:没有足够的值来解包(预期为 4,得到 1)

我在运行评估报告时收到此错误。我使用 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)

python scikit-learn

4
推荐指数
1
解决办法
2905
查看次数