我使用 seq2seq 模型,它可以计算每个 epoch 的 BLEU 分数(一个 NMT 分数)。但是,我不能将 BLEU 分数设置为验证指标,因此它不能提前停止训练。我阅读了源代码,但是除了“+loss”之外,没有任何关于可以将哪种字符串添加到验证指标中的提示。请救救我,谢谢!
问问题
93 次
1 回答
2
默认validation_metric
实际上是"-loss"
,不是"+loss"
。“-”表示这是一个应该最小化而不是最大化的度量。
因此,要改用 BLEU 分数,请将其设置validation_metric
为"+BLEU"
.
通常,您可以使用模型.get_metric()
方法返回的任何指标。您使用的度量标准的名称validation_metric
必须与返回的字典中的相应键匹配.get_metric()
。
在您的情况下,大概您的模型的.get_metric()
方法返回如下内容:{"BLEU": ...}
,这就是为什么validation_metric
应该设置为"+BLEU"
.
于 2020-10-26T19:36:21.737 回答