
从原始文本到训练数据集doccano 文本标注实战指南【免费下载链接】doccanoOpen source annotation tool for machine learning practitioners.项目地址: https://gitcode.com/gh_mirrors/do/doccano手里有一批原始文本要人工标注成命名实体识别NER或情感分析的训练数据手动改 JSON 文件既慢又容易出错doccano 是一款面向机器学习从业者的开源文本标注工具把建项目、导数据、划标签、导格式整条链路搬进浏览器支持多人协作、自动标注和 RESTful API 集成几个小时就能攒出一个可训练的数据集。先想清楚你的任务属于哪种标注类型标注效率的第一道分水岭不在工具而在任务定义。doccano 的项目类型直接决定了标注界面长什么样、数据能导出成什么格式所以这一步要在建项目之前定下来项目类型典型场景标注动作Text Classification情感分析、文本分类给整段文本挑一个标签Sequence LabelingNER、意图识别划选文字片段逐段分配标签Sequence to Sequence摘要、翻译为输入文本写出目标输出Image / Speech 任务目标检测、分割、语音转写框选区域、点选多边形、转写语音选错类型的代价是数据得重标一遍所以可以先用文档里的示例数据backend/data_import/pipeline/examples/跑一个最小项目感受一下界面。五分钟把 doccano 跑起来安装方式按环境复杂度三选一多数个人场景用 pip 就够了。pipPython 3.8默认用 SQLite 存储零依赖pip install doccano doccano init # 初始化数据库 doccano createuser --username admin --password pass # 创建超级用户 doccano webserver --port 8000 # 启动 Web 服务再开一个终端跑doccano task它是负责文件导入导出等长任务的队列进程缺了它数据集上传会卡住。然后访问http://127.0.0.1:8000/即可。Docker团队部署推荐数据持久化在命名卷里重启不丢docker pull doccano/doccano docker container create --name doccano \ -e ADMIN_USERNAMEadmin -e ADMIN_EMAILadminexample.com \ -e ADMIN_PASSWORDpassword \ -v doccano-db:/data -p 8000:8000 doccano/doccano docker container start doccanoDocker Compose需要 nginx PostgreSQL RabbitMQ 完整生产栈时使用先拉源码git clone https://gitcode.com/gh_mirrors/do/doccano cd doccano再按 docs/install_and_upgrade_doccano.md 配置.env后启动docker/docker-compose.prod.yml。生产部署的容器拓扑长这样建项目、定标签标注前的两个关键决策登录后进入项目列表点Create填好名称、描述并选定任务类型一个标注项目就建好了紧接着是标签设计它直接决定标注速度和数据一致性数量克制标签太多会让标注者在边界案例上反复犹豫先收敛到 5~10 个高频标签配好快捷键与颜色每个标签设一个键位和区分度高的背景色长文本标注时双手不离键盘留一个兜底标签如Other容纳无法归类的片段避免标注者弃标团队协作还要把成员拉进来。项目左侧菜单的Members面板里可以按用户名添加成员并指定角色——administrator、annotator、approver三级权限分别对应管理、标注与审核。新用户要先在管理后台创建具体路径见 docs/faq.md数据导入避坑格式、编码与文件细节项目建好后在Dataset页点Actions Import Dataset选择文件格式再上传即可。doccano 支持纯文本、CSV、JSON、JSONL、Excel、CoNLL、FastText 等多种格式解析逻辑集中在 backend/data_import/已标注数据也能直接导入省去从零开始。上传失败十有八九栽在下面几个细节上导入前自查一遍能省不少时间编码必须是UTF-8文件名用纯字母命名最稳妥数据里不能有空白行和空白字段JSON/JSONL 要先保证语法合法——挑一小段脱敏数据校验就够不必拿完整文件冒险标注工作台划词、快捷键与自动保存数据就绪后点导航栏的Start annotation进入标注界面。以序列标注为例鼠标划选文字片段按对应快捷键或点选标签完成一次标注然后继续往下推进。文档间可以前后翻页跳转标注结果自动保存中途关页面也不会丢。标注过程中你还能顺手做两件事给有歧义的片段加 comment把疑问留给approver角色的审核者以及通过项目 metrics 页面查看每个人的进度和标签分布哪个成员卡住了、哪个标签占比异常一目了然实现逻辑在 backend/metrics/。自动标注让 API 先标一版人来复核大批量数据如果全靠人工成本会成倍上涨。doccano 的自动标注功能可以挂接一个 Web API预训练模型服务也好云端服务也好打开新文档时自动先标一遍标注者只做修正。配置入口在项目的Settings Auto Labeling先选一个模板——内置模板覆盖 Amazon Comprehend 等云服务也支持 Custom REST Request 对接自己的模型服务模板选定后按请求参数 → 响应映射 → 标签映射 → 启用四步走用样本数据逐步测试确认 API 返回能正确转换成 doccano 内部标签再到标注页打开开关。整个模块实现在 backend/auto_labeling/详细步骤见 docs/advanced/auto_labelling_config.md。值得一提的是doccano 本身是 RESTful API 架构如果你不想走界面自动标注也可以直接写脚本调用 API 批量打标把模型推理和标注数据管理完全自动化。导出训练数据格式按训练框架选标注完成后回到Dataset页点Actions Export Dataset选择目标格式即可生成训练数据。doccano 支持 CSV、JSON、JSONL、FastText 等格式导出管线在 backend/data_export/不同任务类型会生成对应的字段结构。以序列标注导出的 JSONL 为例每条记录包含文本、标签区间和标注者{doc_id: 33, text: The Hitchhikers Guide to the Galaxy ..., labels: [[0, 36, Title], [89, 111, Genre], [130, 143, Person]], username: admin}导出前最后过一遍质量approver复核过的文档可信度最高标签分布明显偏斜的类别往往意味着标签定义或标注说明出了问题这时候回改标签体系比硬着头皮训练模型更划算。下一步到这里从原始文本到可训练数据集的完整闭环就跑通了。想继续深入docs/index.md 里有安装升级、多语言界面中/英/法/德、暗色主题、端口与 HTTPS 配置等细节团队使用时的常见问题都收在 docs/faq.md比如改端口、处理 CSRF 报错这类操作都有现成方案。【免费下载链接】doccanoOpen source annotation tool for machine learning practitioners.项目地址: https://gitcode.com/gh_mirrors/do/doccano创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考