基于brat对数据集.txt文件进行标注构造.ann文件

一、brat的安装

        参考同伴的csdn创新实训-BRAT的安装-CSDN博客

        在官网下载好了brat的安装包,在ubuntu中解压后利用解压包中的install脚本即可实现安装,在设定好自己的用户名密码及邮箱后,导入自己的数据,并导入与小组讨论得出的配置文件,便可实现brat的标注功能。现将配置文件放在此处。

注意:配置文件要和自己的数据在同一层目录下,如下图所示:

命名为:annotation.conf

该标注实体中的具体内涵参考创新实训-BRAT使用-CSDN博客,实体内容由小组讨论得出,并且更加适用于RCT随机对照试验。

[entities]

total-partcipants
intervention-participants
control-participants
age
eligibility
condition  
location
ethinicity 
intervention
control
outcome
outcome-Measure
iv-bin-abs
cv-bin-abs
iv-bin-percent
cv-bin-percent
iv-cont-mean
cv-cont-mean
iv-cont-median
cv-cont-median
iv-cont-sd
cv-cont-sd

 此外,我们还需要在该目录的上一层中利用指令:find 文件夹名 -name '*.txt'|sed -e 's|\.txt|.ann|g'|xargs touch实现每个.ann文件的创建,在一切上述工作都完成后,即可进行brat的标注工作。

二、数据标注(集体分工合作)

数据标注的具体页面如下图所示,利用鼠标在指定地方划出,便可以选择需要的实体类型了。本人负责标注了30篇,共标注了180篇。

图片展示:

标注结果展示:

标注结果总览:

三、配置文件思考及后续优化

        我们的配置文件仅设置了实体,对于信息提取这方面,能够方便模型的优化,但是当涉及到信息匹配及表格化输出时,还有待我们思考,后续会着重考虑与解决这个问题。

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
brat标注ann文件转换为BIO格式可以分为以下几个步骤: 1. 读取ann文件,获取标注的实体和其对应的位置信息。 2. 将实体按照位置信息在原始文本中标记出来。 3. 将标记好的文本按照BIO格式进行标注。 下面是一个简单的Python代码示例,用于将brat标注ann文件转换为BIO格式: ```python def ann_to_bio(ann_file, txt_file): # 读取ann文件,获取标注的实体和其对应的位置信息 entities = [] with open(ann_file, 'r', encoding='utf-8') as f: for line in f: if line.startswith('T'): fields = line.strip().split('\t') entity_id = fields[0] entity_type, start, end = fields[1].split() start = int(start) end = int(end) entity_text = fields[2] entities.append((entity_id, entity_type, start, end, entity_text)) # 读取txt文件,获取文本内容 with open(txt_file, 'r', encoding='utf-8') as f: text = f.read() # 将实体按照位置信息在原始文本中标记出来 entity_positions = [] for entity in entities: entity_id, entity_type, start, end, entity_text = entity entity_position = (start, end, entity_type) entity_positions.append(entity_position) entity_positions.sort(key=lambda x: x[0]) last_end = 0 annotated_text = [] for start, end, entity_type in entity_positions: annotated_text.append(text[last_end:start]) annotated_text.append('[{}]'.format(entity_type)) annotated_text.append(text[start:end]) annotated_text.append('[/{}]'.format(entity_type)) last_end = end annotated_text.append(text[last_end:]) # 将标记好的文本按照BIO格式进行标注 bio_tags = [] for token in annotated_text: if token.startswith('['): bio_tags.append('B-' + token[1:-1]) elif token.startswith('[/'): bio_tags.append('I-' + token[2:-1]) else: bio_tags.append('O') # 输出BIO格式标注结果 for token, bio_tag in zip(annotated_text, bio_tags): print('{}\t{}'.format(token, bio_tag)) ``` 使用时只需调用`ann_to_bio`函数,将`ann_file`和`txt_file`参数分别替换为实际的ann文件txt文件路径即可。函数将输出BIO格式的标注结果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值