doccano标注工具|为机器学习建模做数据标注

目录

一、标记流程
二、配置环境
        2.1 安装
        2.2 运行doccano
三、案例
        3.1 创建项目
        3.2 上传数据
        3.3 定义标签
        3.4 添加成员
        3.5 开始标注
        3.6 导出数据
        3.7 导出数据

doccano

doccano是开源的数据标注工具,可以简化数据标注的难度。需要注意,市面上的机器学习课程一般都默认数据已标注,在此基础上讲机器学习。

您还可以将 doccano 与您的脚本集成,因为它将功能公开为API。 doccano API是在局域网内的网址链接,多台设备可打开浏览、标注。

一、标记流程

通过以下步骤开始和完成使用 doccano 的标签项目:

  • 安装doccano。
  • 运行doccano。
  • 设置标签项目。 选择标签项目的类型, 配置项目设置。
  • 导入数据集。 您还可以导入带标签的数据集。
  • 给项目添加标注人员
  • 给标志者定义标注工作文档说明
  • 开始标记数据。
  • 导出标记的数据集。


二、配置环境

2.1 安装
打开命令行(cmd、terminal)执行安装命令

pip3 install doccano


2.2 运行doccano
在命令行(cmd、terminal)内依次执行

#在电脑第一次运行的时候初始化doccano
#只需设置一次,之后不用再运行该命令
 

doccano init

#创建用户名及密码;例如现在有一个主管admin,两个标注员tom和jack
#设置好用户,之后不用再运行该命令
 

doccano createuser --username admin --password pass
doccano createuser --username tom --password pass
doccano createuser --username jack --password pass

#开启doccano服务
 

doccano webserver

完成上述操作后,另打开一个新的命令行,执行下列命令

doccano task


三、案例

下面我们以外卖评论数据为例,对评论进行判断,标注为正、负面情感。

3.1 创建项目

先登录用户名和密码,这里的admin是超级用户(权限最大)


为创建项目,如图点击Create按钮。 根据需要选择合适的项目类别,这里选择的Text Classification,

填写项目信息,例如项目名情感标注,简介、标注类型

根据需要选择项目的功能需求,例如允许单标签,把数据打乱随机显示, 用户之间共享标注

3.2 上传数据

创建项目后,点击Dataset按钮,点击Import dataset导入数据。我这里准备的是csv文件,拥有review和label两个字段。

3.3 定义标签

点击左侧菜单中的“Labels”按钮来定义我们的标签。 我们应该看到标签编辑器页面。 在标签编辑器页面中,您可以通过指定标签文本、快捷键、背景颜色和文本颜色来创建标签。

同理,可以定义负面neg标签。现在有了pos和neg两个标签。 

3.4 添加成员

点击左侧目录中的 Members 按钮,

然后,选择“Add”按钮以显示表单。 使用您要添加到项目中的用户名和角色填写此表单。 然后,选择“Save”按钮。 

如果没有可供选择的成员,记得创建成员。形如doccano createuser --username tom --password pass

3.5 开始标注

接下来,我们准备标注文本数据。 只需点击导航栏中的“Start annotation”按钮,我们就可以开始对文档进行批注了。

3.6 导出数据

在注释步骤之后,我们可以下载标注后的数据。 转到“Dataset”页面,然后单击“操作”菜单中的“Export dataset”按钮。 选择导出格式后,单击“Export”。 您应该看到以下屏幕:

到出的结果如下

3.7 导出数据

对了,当标注过程不同阶段,还看查看标注工作量等可视化信息

四、安装过程命令

#虚拟环境
conda create --name doccano python=3.9
conda info --envs
source activate doccano


#pip安装方式
pip install doccano (默认doccano==1.8.4版本)
doccano init
doccano createuser --username admin --password pass
doccano createuser --username tom --password pass
doccano webserver

#卸载
pip uninstall doccano

pip install doccano==1.8.2

#pip源更换,提高安装速度
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple doccano
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple doccano==1.8.2



#Docker安装方式

docker pull doccano/doccano

sing default tag: latest
latest: Pulling from doccano/doccano
7a6db449b51b: Pull complete 
e238bceb2957: Pull complete 
9c37eda4ff12: Pull complete 
120078faa760: Pull complete 
2d3523ccd6f4: Pull complete 
c62e2504b88c: Pull complete 
933dc7a3d368: Pull complete 
f5ecd3a845d0: Pull complete 
dfb494ed37e3: Downloading [==========>                                        ]  33.45MB/159.6MB
548b03d8e5e3: Download complete 
4fb76ac8dbcd: Download complete 
51219b6ada00: Download complete 
4f4fb700ef54: Download complete 
e3407eb63e03: Downloading [============================>                      ]  4.324MB/7.477MB
47f7c73cd77f: Downloading [===========================>                       ]  19.13MB/35.4MB



完成状态:
Using default tag: latest
latest: Pulling from doccano/doccano
7a6db449b51b: Pull complete 
e238bceb2957: Pull complete 
9c37eda4ff12: Pull complete 
120078faa760: Pull complete 
2d3523ccd6f4: Pull complete 
c62e2504b88c: Pull complete 
933dc7a3d368: Pull complete 
f5ecd3a845d0: Pull complete 
dfb494ed37e3: Pull complete 
548b03d8e5e3: Pull complete 
4fb76ac8dbcd: Pull complete 
51219b6ada00: Pull complete 
4f4fb700ef54: Pull complete 
e3407eb63e03: Pull complete 
47f7c73cd77f: Pull complete 
Digest: sha256:165e8a1ba2fe3c3c92d4927d74b6badc9985d295c90de28674a5511a62bcdf5c
Status: Downloaded newer image for doccano/doccano:latest
docker.io/doccano/doccano:latest



docker container create --name doccano \
  -e "ADMIN_USERNAME=admin" \
  -e "ADMIN_EMAIL=admin@example.com" \
  -e "ADMIN_PASSWORD=password" \
  -v doccano-db:/data \
  -p 8000:8000 doccano/doccano


#创建中,稍等1分钟,显示
1dd2951d71970abb16199177e1fd8f9006508757f96d239669f23c1e7c09c7d5


#运行
docker container start doccano

运行完成显示doccano



五、已知问题

1、安装最新版本的1.8.4后,导入csv和excel文件一直无法成功,不清楚是源代码问题还是某个软件包版本问题,最后使用txt文件或json文件方式导入数据;

2、标注人员和审核人员,貌似权限没有什么区别,正常理解标注人员可以标注不能点击"对勾and叉叉"确定此条标注完成,审核人员审核后可以标注完成,目前安装完成后标注人员和审核人员都可以确认完成操作;

参考:
https://textdata.cn/blog/doccano_text_anotation/#32-%e4%b8%8a%e4%bc%a0%e6%95%b0%e6%8d%ae
https://blog.csdn.net/u013010473/article/details/125447063
https://zhuanlan.zhihu.com/p/371752234
https://blog.csdn.net/weixin_42475060/article/details/131540351
https://blog.csdn.net/weixin_37763484/article/details/132813982 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

在ssh 工具 Linux screen会话中使用鼠标进行上下滚动

经过几次发现 除xshell外, WindTerm finalshell MobaXterm 都是进入会话后,发现其界面无法滚动屏幕向上查看 如果想要在Linux screen会话中使用鼠标进行上下滚动。必须首先进入该screen的回滚(scrollback模式)才能进行上下滚动 第一步&#xff…

小白理智进入IT行业

职业测试 🔔 0基础请先按照以下步骤做一遍,试试自己的毅力 1️⃣ 请在b站搜索王佩丰vba,然后试着看一下 2️⃣ 看完视频,有两种结果 😭 视频看到一半就终止,代码只会复制粘贴。 🎉 看完全部视…

MHA高可用-解决MySQL主从复制的单点问题

目录 一、MHA的介绍 1.什么是 MHA 2.MHA 的组成 2.1 MHA Node(数据节点) 2.2 MHA Manager(管理节点) 3.MHA 的特点 4. MHA工作原理总结如下: 二、搭建 MySQL MHA 实验环境 …

mongoDB 优化(2)索引

执行计划 语法: db.collection_xxx_t.find({"param":"xxxxxxx"}).explain(executionStats) 感觉这篇文章写得很好,可以参考 MongoDB——索引(单索引,复合索引,索引创建、使用)_mongo …

软考高级架构师:CISC (复杂指令集计算机) 和 RISC (精简指令集计算机)概念和例题

作者:明明如月学长, CSDN 博客专家,大厂高级 Java 工程师,《性能优化方法论》作者、《解锁大厂思维:剖析《阿里巴巴Java开发手册》》、《再学经典:《Effective Java》独家解析》专栏作者。 热门文章推荐&am…

开源博客项目Blog .NET Core源码学习(13:App.Hosting项目结构分析-1)

开源博客项目Blog的App.Hosting项目为MVC架构的,主要定义或保存博客网站前台内容显示页面及后台数据管理页面相关的控制器类、页面、js/css/images文件,页面使用基于layui的Razor页面(最早学习本项目就是想学习layui的用法,不过最…

flink1.18源码本地调试环境

01 源码本地调试环境搭建 1. 从github拉取源码创建本地项⽬ https://github.com/apache/flink.git 可以拉取github上官⽅代码 https://github.com/apache/flink.git GitHub - apache/flink: Apache Flink 2. 配置编译环境 ctrlaltshifts (或菜单)打…

UE5启用SteamOS流程

一、安装OnlineSubsystemSteam插件 1、在UE里安装OnlineSubsystemSteam 2、设置默认开始地图 3、设置DefaultEngine.ini文件: 打开项目根目录/Config/DefaultEngine.ini文件 打开官网的配置说明 复制并粘贴到该文件中 4、设置运行模式 5、测试 确保Steam平台已…

Ansible批量操作(上传文件、删除文件指定文件内容、执行sh文件等)

官方网站 https://www.ansible.com/ 一、Ansible 简介 1、Ansible是新出现的自动化运维工具,完全基于Python开发,集合了众多运维工具(puppet、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行…

【详解】Windows系统安装Nginx及简单使用

【详解】Windows系统安装Nginx及简单使用 一、Nginx是什么? “Nginx 是一款轻量级的 HTTP 服务器,采用事件驱动的异步非阻塞处理方式框架,这让其具有极好的 IO 性能,时常用于服务端的反向代理和负载均衡。”Nginx 是一款 http 服…

RocketMQ是什么?

文章目录 一、RocketMQ是什么?二、RocketMQ 应用场景三、RocketMQ 优缺点1.优点2、缺点 一、RocketMQ是什么? RocketMQ 是一款纯 java、分布式、队列模型的消息中间件,支持事务消息、顺序消息、批量消息、定时消息、消息回溯等。 二、Rocke…

软件杯 深度学习YOLO抽烟行为检测 - python opencv

文章目录 1 前言1 课题背景2 实现效果3 Yolov5算法3.1 简介3.2 相关技术 4 数据集处理及实验5 部分核心代码6 最后 1 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 基于深度学习YOLO抽烟行为检测 该项目较为新颖,适合作为竞赛课…

BGP-(as-path-filter)

BGP-as-path-filter,缺省 as-path-filter,正则表达式,as-path过滤器,对于BGP的as-path属性实际上可以看成是一个包含空格的字符串。 特点:1、通过对BGP路由的as-path属性进行匹配达到对BGP路由的过滤。 2、在route-…

OpenHarmony实战:轻量级系统之移植验证

OpenHarmony芯片移植完成后,需要开展OpenHarmony兼容性测试以及芯片SDK功能性测试。除可获得测试认证之外,还可以在开发阶段提前发现缺陷,大幅提高代码质量。 OpenHarmony兼容性测试 OpenHarmony兼容性测试是XTS(OpenHarmony生态…

传统模型用腻了?GCN图卷积神经网络一键实现西储大学轴承故障诊断!发文新思路!

​ 声明:文章是从本人公众号中复制而来,因此,想最新最快了解各类智能优化算法及其改进的朋友,可关注我的公众号:强盛机器学习,不定期会有很多免费代码分享~ 目录 数据介绍与故障诊断讲解 1.数据…

[lesson04]布尔类型和引用

布尔类型和引用 布尔类型 C中的布尔类型 C在C语言的基本类型系统上增加了boolC中的bool可取的值只有true和false理论上bool只占用一个字节 注意: true代表真值,编译器内部用1来表示 false代表非真值,编译器内部用0来表示 bool类型只有true(…

RabbitMQ3.x之六_RabbitMQ使用场景

RabbitMQ3.x之六_RabbitMQ使用场景 文章目录 RabbitMQ3.x之六_RabbitMQ使用场景1. 为什么选择 RabbitMQ?1. 可互操作2. 灵活3. 可靠 2. 常见用户案例1. 服务解耦2. 远程过程调用3. 流处理4. 物联网 1. 为什么选择 RabbitMQ? RabbitMQ 是一个可靠且成熟的…

IDEA 中能提高开发效率的插件

目录 前言 插件 Rainbow Brackets AceJump POJO to JSON Json Helper MybatisX Maven Helper PlantUML Integration TONYYI Lingma 前言 IDEA 里又很多好用的插件可以帮助我们提升开发效率,这里罗列下自己开发过程中常用的插件,善于利用插件&…

STM32的定时器中断Cubemx

STM32的定时器中断Cubemx 0.定时器简介1.配置时钟2.配置定时器3.创建工程4.补充源码 0.定时器简介 基本定时器功能: 16位向上、向下、向上/下自动装载计数器16位可编程(可以实时修改)预分频器,计数器时钟频率的分频系数为1~65535之间的任意…

说一说Redis的Bitmaps和HyperLoLog?

本篇内容对应 “Redis高级数据类型”小节 和 “7.5 网站数据统计”小节 对应视频: Redis高级数据结构 网站数据统计 1 什么是UV和DAU? DAUUV英文全称Daily Active UserUnique Visotr中文全称日活跃用户量独立访客如何统计数据通过用户ID排重统计数据通…