如何进行目的地网站建设,图书建设网站,如何做网站的订阅,大连手机网站设计文本抽取任务Label Studio使用指南 1.基于Label studio的训练数据标注指南#xff1a;信息抽取#xff08;实体关系抽取#xff09;、文本分类等 2.基于Label studio的训练数据标注指南#xff1a;#xff08;智能文档#xff09;文档抽取任务、PDF、表格、图片抽取标注等…文本抽取任务Label Studio使用指南 1.基于Label studio的训练数据标注指南信息抽取实体关系抽取、文本分类等 2.基于Label studio的训练数据标注指南智能文档文档抽取任务、PDF、表格、图片抽取标注等 3.基于Label studio的训练数据标注指南文本分类任务 4.基于Label studio的训练数据标注指南情感分析任务观点词抽取、属性抽取
目录
1. 安装2. 文本抽取任务标注 2.1 项目创建2.2 数据上传2.3 标签构建2.4 任务标注2.5 数据导出2.6 数据转换2.7 更多配置 1. 安装
以下标注示例用到的环境配置
Python 3.8label-studio 1.7.1paddleocr 2.6.0.1
在终端(terminal)使用pip安装label-studio
pip install label-studio1.7.1
pip install label-studio
#安装过程报错ERROR: Could not install packages due to an OSError: [WinError 5] 拒绝访问
#添加管理员权限
pip install --user label-studio#如果途中出现警告WARNING: Ignoring invalid distribution -sonschema (d:\anaconda\envs\paddlenlp\lib\site-packages)
1.原因可能是之前下载库的时候没有成功或者中途退出当包出现问题例如缺少依赖项或与其他包冲突时可能会出现此警告消息。如果包与正在使用的 Python 版本不兼容也可能发生这种情况。
2.到提示的目录site-packages下删除~ip开头的目录。
3.然后pip重新安装库即可。#如果怕环境冲突就新建虚拟环境单独安装
conda create -n test python3.8 #test为创建的虚拟环境名称安装完成后运行以下命令行
label-studio start在浏览器打开http://localhost:8080/输入用户名和密码登录开始使用label-studio进行标注。 2. 文本抽取任务标注 2.1 项目创建
点击创建Create开始创建一个新的项目填写项目名称、描述然后选择Object Detection with Bounding Boxes。
填写项目名称、描述 命名实体识别、关系抽取、事件抽取、实体/评价维度分类任务选择Relation Extraction。 文本分类、句子级情感倾向分类任务选择Text Classification。 添加标签(也可跳过后续在Setting/Labeling Interface中配置) 图中展示了实体类型标签的构建其他类型标签的构建可参考2.3标签构建 2.2 数据上传
先从本地上传txt格式文件选择List of tasks然后选择导入本项目。 2.3 标签构建
Span类型标签 Relation类型标签 Relation XML模板 RelationsRelation value歌手/Relation value发行时间/Relation value所属专辑//Relations分类类别标签 2.4 任务标注
实体抽取
标注示例 该标注示例对应的schema为
schema [时间,选手,赛事名称,得分
]关系抽取 对于关系抽取其P的类型设置十分重要需要遵循以下原则
“{S}的{P}为{O}”需要能够构成语义合理的短语。比如对于三元组(S, 父子, O)关系类别为父子是没有问题的。但按照UIE当前关系类型prompt的构造方式“S的父子为O”这个表达不是很通顺因此P改成孩子更好即“S的孩子为O”。合理的P类型设置将显著提升零样本效果。
该标注示例对应的schema为
schema {作品名: [歌手,发行时间,所属专辑]
}事件抽取 该标注示例对应的schema为
schema {地震触发词: [时间,震级]
}句子级分类 该标注示例对应的schema为
schema 情感倾向[正向负向]实体/评价维度分类 该标注示例对应的schema为
schema {评价维度: [观点词,情感倾向[正向负向]]
}2.5 数据导出
勾选已标注文本ID选择导出的文件类型为JSON导出数据 2.6 数据转换
将导出的文件重命名为label_studio.json后放入./data目录下。通过label_studio.py脚本可转为UIE的数据格式。
抽取式任务
python label_studio.py \--label_studio_file ./data/label_studio.json \--save_dir ./data \--splits 0.8 0.1 0.1 \--task_type ext句子级分类任务
在数据转换阶段我们会自动构造用于模型训练的prompt信息。例如句子级情感分类中prompt为情感倾向[正向,负向]可以通过prompt_prefix和options参数进行配置。
python label_studio.py \--label_studio_file ./data/label_studio.json \--task_type cls \--save_dir ./data \--splits 0.8 0.1 0.1 \--prompt_prefix 情感倾向 \--options 正向 负向实体/评价维度分类任务
在数据转换阶段我们会自动构造用于模型训练的prompt信息。例如评价维度情感分类中prompt为XXX的情感倾向[正向,负向]可以通过prompt_prefix和options参数进行声明。
python label_studio.py \--label_studio_file ./data/label_studio.json \--task_type ext \--save_dir ./data \--splits 0.8 0.1 0.1 \--prompt_prefix 情感倾向 \--options 正向 负向 \--separator ##2.7 更多配置
label_studio_file: 从label studio导出的数据标注文件。save_dir: 训练数据的保存目录默认存储在data目录下。negative_ratio: 最大负例比例该参数只对抽取类型任务有效适当构造负例可提升模型效果。负例数量和实际的标签数量有关最大负例数量 negative_ratio * 正例数量。该参数只对训练集有效默认为5。为了保证评估指标的准确性验证集和测试集默认构造全负例。splits: 划分数据集时训练集、验证集所占的比例。默认为[0.8, 0.1, 0.1]表示按照8:1:1的比例将数据划分为训练集、验证集和测试集。task_type: 选择任务类型可选有抽取和分类两种类型的任务。options: 指定分类任务的类别标签该参数只对分类类型任务有效。默认为[“正向”, “负向”]。prompt_prefix: 声明分类任务的prompt前缀信息该参数只对分类类型任务有效。默认为情感倾向。is_shuffle: 是否对数据集进行随机打散默认为True。seed: 随机种子默认为1000.schema_lang选择schema的语言将会应该训练数据prompt的构造方式可选有ch和en。默认为ch。separator: 实体类别/评价维度与分类标签的分隔符该参数只对实体/评价维度分类任务有效。默认为##。
备注
默认情况下 label_studio.py 脚本会按照比例将数据划分为 train/dev/test 数据集每次执行 label_studio.py 脚本将会覆盖已有的同名数据文件在模型训练阶段我们推荐构造一些负例以提升模型效果在数据转换阶段我们内置了这一功能。可通过negative_ratio控制自动构造的负样本比例负样本数量 negative_ratio * 正样本数量。对于从label_studio导出的文件默认文件中的每条数据都是经过人工正确标注的。
References
Label Studiolabel studio标注