Open JoshonSmith opened 2 months ago
label在处理的时候有-100(padding字段),这是为了训练的时候不参与损失函数的计算,请参考:
label在处理的时候有-100(padding字段),这是为了训练的时候不参与损失函数的计算,请参考:
感谢说明训练时的loss细节, 但是这些代码是在 zero_shot_text_classification/run_eval.py ,run_eval.py 不是训练代码,应该是评估代码。
按照 https://github.com/PaddlePaddle/PaddleNLP/blob/develop/applications/zero_shot_text_classification/README.md 说明,python run_eval.py 是模型评估预测,run_train.py是训练模型代码
label在处理的时候有-100(padding字段),这是为了训练的时候不参与损失函数的计算,请参考:
我也遇到这个bug了,我检查了下,是因为判断-100的时候会对tensor进行reshape,具体可以看我提交的这个pull request,但是现在还没审核通过。https://github.com/PaddlePaddle/PaddleNLP/pull/8384
软件环境
重复问题
错误描述
稳定复现步骤 & 代码
https://github.com/PaddlePaddle/PaddleNLP/blob/develop/applications/zero_shot_text_classification/run_eval.py def compute_metrics(eval_preds): 注释其中的 preds = preds[labels != -100].numpy() labels = labels[labels != -100].numpy()