quad_match_score / README.md
yuyijiong's picture
Update README.md
869931b
|
raw
history blame
2.44 kB
metadata
title: Quad Match Score
datasets:
  - SemEval2016 Task5
tags:
  - evaluate
  - metric
description: 'TODO: add a description here'
sdk: gradio
sdk_version: 3.19.1
app_file: app.py
pinned: false

Metric Card for My Metric

Module Card Instructions: 评估生成模型的情感四元组抽取结果.

Metric Description

评估生成模型的情感四元组抽取结果.

How to Use

import evaluate

module = evaluate.load("yuyijiong/quad_match_score")

predictions=["food | good | food#taste | pos"]
references=["food | good | food#taste | pos & service | bad | service#general | neg"]

result=module.compute(predictions=predictions, references=references)
print(result)

{'ave match score of weight (1, 1, 1, 1)': 0.375, 
'f1 score of exact match': 0.0, 
'f1 score of optimal match of weight (1, 1, 1, 1)': 0.5}

Inputs

List all input arguments in the format below

  • predictions (List[str]): 模型生成的四元组,列表中每个字符串代表一个样本的生成结果.
  • references (Union[List[str],List[List[str]]): 人工标注的四元组,列表中每个字符串代表一个样本的标签.如果列表元素为list,代表多个reference,评估时取最高分
  • weights (Tuple[float, float, float, float]):默认为(1,1,1,1),分别代表四个方面的评估指标的权重
  • tuple_len (str): indicate the format of the quad, see the following mapping 指示四元组的格式,默认为'0123'。对应关系如下所示
{'0123': "四元组(对象 | 观点 | 方面 | 极性)",
'01':'二元组(对象 | 观点)',
'012':'三元组(对象 | 观点 | 方面)',
'013':'三元组(对象 | 观点 | 极性)',
'023':'三元组(对象 | 方面 | 极性)',
'23':'二元组(方面 | 极性)',
'03':'二元组(对象 | 极性)',
'13':'二元组(观点 | 极性)',
'3':'单元素(极性)'}
  • sep_token1: the token to seperate quads 分割不同四元组的token
  • sep_token2: the token to seperate units of one quad 四元组中不同元素之间的分隔token

Output Values

最优匹配 f1值、最优匹配样本平均得分、完全匹配 f1值 组成的dict,f1值均在[0,1]之间

例如: {'ave match score of weight (1, 1, 1, 1)': 0.375, 'f1 score of exact match': 0.0, 'f1 score of optimal match of weight (1, 1, 1, 1)': 0.5}

Limitations and Bias

对比传统评估指标,得分偏高

Citation

论文即将发表