侧边栏壁纸
博主头像
小鱼吃猫博客博主等级

你所热爱的,便是你的生活。

  • 累计撰写 115 篇文章
  • 累计创建 47 个标签
  • 累计收到 14 条评论

目 录CONTENT

文章目录

Transformers学习之Evaluate组件

小鱼吃猫
2023-08-03 / 0 评论 / 1 点赞 / 44 阅读 / 1281 字

Transformers学习之Evaluate组件

这是一个评估函数,在模型训练与测试中,我们会根据一些指标来对模型进行评测,用起来也非常简单哈。

# 导包
import evaluate

支持的评估函数

支持的评估函数较多,这里只列出几个常见的,其余可以使用 evaluate.list_evaluation_modules() 方法进行查看

{'name': 'f1', 'type': 'metric'}
{'name': 'recall', 'type': 'metric'}
{'name': 'accuracy', 'type': 'metric'}
{'name': 'precision', 'type': 'metric'}

加载并使用评估函数

f1 = evaluate.load("f1")  
results = f1.compute(references=[0, 1, 2, 0, 1, 2], predictions=[0, 1, 1, 2, 1, 0],average="micro") 
print(results)
# {'f1': 0.5}

同时计算多个指标

multi_metrics = evaluate.combine(["accuracy", "f1", "recall", "precision"])  
multi_metrics.compute(predictions=[0, 1, 0], references=[0, 1, 1])
# {'accuracy': 0.6666666666666666, 'f1': 0.6666666666666666, 'recall': 0.5,'precision': 1.0}

批量计算

f1 = evaluate.load("f1")  
for ref, pred in zip([0,1,0,1], [1,0,0,1]):  
f1.add(references=ref, predictions=pred)  
f1.compute()
# {'f1': 0.5}
1

评论区