Q1: 关于评价指标的明确。
#评测内容#
本次大赛基于抽取系统从输入序列中抽取的输出记录(Record)进行评价。我们将不同范式(schema)的抽取任务统一表示成不同的多元组,并对集合去重后的结果进行评价。评测脚本自动将提交格式中的输出结果转化为多元组并进行评价,评价形式可能包括二元组与三元组。
多元组中所涉及的基本元素包括:
- 文本块抽取结果span(以字符串形式体现,不需要对应回offset)
- 表示类型的标签(例如:实体类型、事件类型)
- 表示关联关系的标签(例如:关系类型、事件论元类型)。
具体来说,评价的多元组可能包含有:
- (Span,类型标签):代表性的抽取任务包括有实体抽取任务(实体提及span,实体类型)、事件触发词识别任务(触发词span,事件类型)
- (关联关系标签,Span1,Span2):代表性的抽取任务包括有关系抽取任务(关系类型, 主体span, 客体span)、情感三元组(情感极性,目标对象span,情感表达span)
- (类型标签,关联关系标签,Span):代表性的抽取任务包括有事件论元识别(事件类型,论元角色,论元span)
请注意,本次评测主要关注于信息的抽取,而非标注。因此,对于同一段文本中出现多次的相同信息,我们将去重后进行评价。例如,对于同一段输入文本中出现有多次相同的特定实体,模型仅需要输出一个二元组即可,输出多个相同的二元组,评价脚本将自动去重。
#评测指标#
对于每个任务的正确预测(TP),正确匹配标准答案中的多元组,即视为:TP += 1。
每个任务的计分方式为:
P=|TP| / |Pred|
R=|TP| / |Gold|
F1=|2 * P * R| / (P+R)
#总体打分#
我们会给出一个总体的多元组打分以及每个领域的schema下的评测结果打分。所有打分评价指标使用微平均Micro-F1。
对于A榜而言,每个领域我们考察的抽取任务如下:
人生信息:抽取(关系类型, 主体span, 客体span)关系三元组
机构信息:抽取(关系类型, 主体span, 客体span)关系三元组
金融信息:抽取(事件类型,论元角色,论元span)事件论元三元组
体育竞赛:抽取(事件类型,论元角色,论元span)事件论元三元组
影视情感:抽取(情感极性,目标对象span,情感表达span)情感三元组
灾害意外:抽取(事件类型,论元角色,论元span)事件论元三元组
对于B榜的Seen Schema而言,每个领域我们考察的抽取任务如下:
人生信息:抽取(关系类型, 主体span, 客体span)关系三元组、抽取(实体提及span,实体类型)实体二元组
机构信息:抽取(关系类型, 主体span, 客体span)关系三元组、抽取(实体提及span,实体类型)实体二元组
金融信息:抽取(事件类型,论元角色,论元span)事件论元三元组
体育竞赛:抽取(事件类型,论元角色,论元span)事件论元三元组
影视情感:抽取(情感极性,目标对象span,情感表达span)情感三元组
灾害意外:抽取(事件类型,论元角色,论元span)事件论元三元组
对于 B 榜的 Unseen Schema 所涉及的抽取目标将在 B 榜 Schema 发布之时通知。
Q2: 关于外部数据的使用。
1. 本评测鼓励参赛者使用公开可获取的数据集和知识库数据通过半监督、远距离监督等形式构建训练数据。
2. 以往其他赛事的竞赛数据,需要报名审核而无法再次获取的数据不纳入公开可获取范畴。
3. 获奖队伍的评审材料中需提供数据来源,保证结果的有效性。
Q3: 对模型是否有要求。
A3: 无要求,抽取结果正确符合要求即可。
Q4: 提交显示错误为: 'f4204XXXX' 等实例编号
A4:
1. 请确认使用的是4.26号更新的 duuie_test_a.zip 文件,包含5801数据。
2. 请确认所有的 duuie_test_a.zip 中的实例 id 都包含在提交文件中。
事件触发词识别任务(触发词span,事件类型)是不算在评价结果了吗,可以给一个提交的格式吗?
格式是这个,应该为text,与原始数据一致,网页说明更新中。
{
"id": "3411976a-af61-11ec-b786-00155d5ab327",
"entity": [],
"relation": [],
"event": [
{
"type": "夺冠",
"text": "金牌",
"args": [
{"type": "夺冠时间", "text": "2月10日"},
{"type": "夺冠赛事", "text": "北京冬奥会男子单人滑"},
{"type": "冠军", "text": "陈巍"}
]
}
请教一下,按照baseline的步骤,处理数据,训练模型,预测,生成结果文件。最后只有人生信息,影视情感,机构信息,可以预测出结果。体育竞赛,灾害意外,金融信息的测试集【事件数据集】,预测出的结果都是空的。请问这是什么原因呢,望回复,谢谢!
因为事件数据的预处理是默认在当前目录下的,猜测可能是更改了目录路径,导致预处理脚本没有处理到事件相关数据。
谢谢!确实是修改了路径!我贴一下预处理的结果和预测为空的结果,帮忙确认下是不是数据处理的问题,谢谢!
预测结果文件部分结果
预处理文件结果部分结果,event的处理有问题吗?
找到问题了,确实是数据处理时出了问题,多谢!问题已解决!
可以公开一下评测代码吗?方便评估模型效果
我也出现了这个问题,请问以下要怎么改呢?谢谢
您好,我把基线系统中的预训练模型换成了T5,同样的,Tokenizer也换成了T5Tokenizer,训练和验证不报错,但是验证和预测的结果都为0。是哪里出了问题,能帮我看下吗?
请问使用的是中文T5吗?
应该在默认路径 ./DuUIE 执行预处理脚本即可。
是t5-small
是哪一个T5-small?Google的T5-small是英文的。baseline中的模型是从头训练的,可能是 extra_id_0 之类的特殊token对不上。
在 DuUIE 目录下执行脚本即可。
问题已解决,将Tokenizer更改为基线中的T5BertTokenizer,Model依旧采用t5-small就可以了,只是效果比基线下降14个点。明白原因了,谢谢解答~~~
请问下如何更改基线的预训练模型呢
可以更改命令行参数 --model_name_or_path 实现
对应需要更改 PaddleNLP 基线中 run_seq2struct.py 文件下的 Line 513 的tokenizer和model类型
因为不同的预训练模型所对应的tokenizer和model不同。
请问基准线代码 用的是t5-samll吗
基线的原始模型是我们使用中文数据训练的T5-char-small。
t5-small是英文模型,
了解了 感谢