Doccano 修复 spacy.gold 的bug

引言

最初只是想把Doccano标注的数据集转换成BIO(类似conll2003数据集)的标注格式;

摘要

可先阅读一下教程:【已解决】关于如何将Doccano标注的文本转换成NER模型可以直接处理的CoNLL 2003格式
装包:pip install doccano-transformer

报错信息

运行下述程序后,会报错

from doccano_transformer.datasets import NERDataset
from doccano_transformer.utils import read_jsonldataset = read_jsonl(filepath='NER.jsonl', dataset=NERDataset, encoding='utf-8')
gen=dataset.to_conll2003(tokenizer=str.split)file_name="CoNLL.txt"with open(file_name, "w", encoding = "utf-8") as file:for item in gen:file.write(item["data"] + "\n")

报错信息如下:

l In[18], line 1
----> 1 from doccano_transformer.datasets import NERDataset2 from doccano_transformer.utils import read_jsonlFile ~/anaconda3/envs/nlp/lib/python3.9/site-packages/doccano_transformer/datasets.py:52 import json3 from typing import Any, Callable, Iterable, Iterator, List, Optional, TextIO
----> 5 from doccano_transformer.examples import Example, NERExample8 class Dataset:9     def __init__(10         self,11         filepath: str,12         encoding: Optional[str] = 'utf-8',13         transformation_func: Optional[Callable[[TextIO], Iterable[Any]]] = None14     ) -> None:File ~/anaconda3/envs/nlp/lib/python3.9/site-packages/doccano_transformer/examples.py:41 from collections import defaultdict2 from typing import Callable, Iterator, List, Optional
----> 4 from spacy.gold import biluo_tags_from_offsets6 from doccano_transformer import utils9 class Example:ModuleNotFoundError: No module named 'spacy.gold'

修复bug

根据该GitHub doccano_transformer项目的github issues和pr 给出的信息修复该bug:

要修改doccano_transformer/examples.py源码文件;
根据报错信息,确定example.py文件所在目录

File ~/anaconda3/envs/nlp/lib/python3.9/site-packages/doccano_transformer/datasets.py:5

根据报错信息,知道笔者的examples.py路径如下:
(每人的所在文件夹不同,请自行修改)

 ~/anaconda3/envs/nlp/lib/python3.9/site-packages/doccano_transformer/examples.py

按照图片所示内容进行修改即可:
在这里插入图片描述

  • 修改点 1

    原始代码:

    from spacy.gold import biluo_tags_from_offsets
    

    修改成:

    from spacy.training import offsets_to_biluo_tags
    
  • 修改点 2

    原始代码:

    tags = biluo_tags_from_offsets(tokens, label)
    

    修改成:

    tags = offsets_to_biluo_tags(tokens, label)
    

修改完上述代码,重新运行代码就不会报错了;

相关阅读

  • BIO序列提取实体(NER命名实体识别)

    该文把BIO标注的数据,转成下述格式:
    {'string': '我是李明,我爱中国,我来自呼和浩特', 'entities': [{'word': '中国', 'type': 'loc'}, {'word': '呼和浩特', 'type': 'loc'}]}
    

参考资料

  • [1] github issues https://github.com/doccano/doccano-transformer/issues/35
  • [2] 该bug的PR参考 https://github.com/doccano/doccano-transformer/pull/38/files

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/501036.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于springboot+vue的中药实验管理系统(前后端分离)

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、阿里云专家博主、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战,欢迎高校老师\讲师\同行交流合作 ​主要内容:毕业设计(Javaweb项目|小程序|Pyt…

SpringBoot源码解读与原理分析(三十八)SpringBoot整合WebFlux(一)WebFlux的自动装配

文章目录 前言第13章 SpringBoot整合WebFlux13.1 响应式编程与Reactor13.1.1 命令式与响应式13.1.2 异步非阻塞13.1.3 观察者模式13.1.4 响应性13.1.5 响应式流13.1.6 背压13.1.7 Reactor13.1.7.1 Publisher13.1.7.2 Subscriber13.1.7.3 Subscription13.1.7.4 Processor13.1.7.…

【机器学习实战1】泰坦尼克号:灾难中的机器学习(一)数据预处理

🌸博主主页:釉色清风🌸文章专栏:机器学习实战🌸今日语录:不要一直责怪过去的自己,她曾经站在雾里也很迷茫。 🌼实战项目简介 本次项目是kaggle上的一个入门比赛 :Titani…

【01】openEuler 源码安装 PostgreSQL

openEuler 源码安装 PostgreSQL 部署环境说明Shell 前端软件包管理器基础概念YUM 简介DNF 简介 源码安装 PostgreSQL环境变量(env)设置临时环境变量设置永久环境变量设置 初始化数据库(initdb) 数据库基本操作数据库基本配置&…

稀疏图带负边的全源最短路Johnson算法

BellmanFord算法 Johnson算法解决的问题 带负权的稀疏图的全源最短路 算法流程 重新设置的每条边的权重都大于或等于0,跑完Djikstra后得到的全源最短路,记得要还原,即:f(u,v) d(u,v) - h[u] h[v] 例题

提升智能客服机器人的语义理解能力:理解用户的语义和意图

智能客服机器人的发展已经成为现代服务业的一大亮点。它们不仅能够提供724小时不间断的服务,而且能够处理大量的用户请求,大大提高了服务效率。然而,尽管智能客服机器人的技术已经取得了显著的进步,但其语义理解能力仍有待提高。为…

StarRocks实战——vivo基于 StarRocks 构建实时大数据平台

目录 前言 一、数据挑战 1.1 时效性挑战,业务分析决策需加速 1.2 访问量挑战,性能与稳定性亟待提高,支撑业务稳定运行 1.3 计算场景挑战,难以满足业务复杂查询需求 1.4. 运维挑战,用户查询体验需优化 二、OLA…

Flink——芒果TV的实时数仓建设实践

目录 一、芒果TV实时数仓建设历程 1.1 阶段一:Storm/Flink JavaSpark SQL 1.2 阶段二:Flink SQLSpark SQL 1.3 阶段三:Flink SQLStarRocks 二、自研Flink实时计算调度平台介绍 2.1 现有痛点 2.2 平台架构设计 三、Flink SQL实时数仓分…

utniy urp shinyssrr插件使用

文章目录 前言步骤1首先在URP的配置文件里添加SSR后处理2 修改RenderingPath为延迟渲染3 启用深度纹理4 为物体添加脚本 插件下载 前言 用来实现屏幕空间反射效果 unity 版本为2021.3.8LTS,低版本的untiy URP的参数设置位置z可能会不同 步骤 1首先在URP的配置文件…

经销商文件分发 怎样兼顾安全和效率?

经销商文件分发是指将文件、资料、产品信息等从制造商或经销商传递给经销商的过程。这一过程对于确保经销商能够获取最新的产品信息、销售策略、市场活动资料等至关重要。 想要管理众多经销商合作伙伴之间的文件传输并提高效率,可以采取以下措施: 1、建…

gpt批量原创文章生成器,不限制内容的生成器

在当今的数字化时代,内容创作是网站持续发展的重要组成部分。然而,对于拥有大量内容需求的网站来说,手动创作文章可能会耗费大量时间和精力。为了解决这一问题,许多GPT(生成式预训练模型)文章生成软件应运而…

2024第三届中国氢能国际峰会:聚焦清洁能源,共创绿色未来

2024第三届中国氢能国际峰会将于5月16日至17日在上海举行,由ECV International主办。此次峰会旨在搭建一个全球性平台,促进氢能技术的国际交流与合作,推动氢能产业的绿色可持续发展,共同应对全球气候变化和能源安全的挑战。 会议背…