导出标注数据用于机器学习
如何将 Potato 标注导出为适合机器学习的格式,JSON/JSONL、CoNLL、Hugging Face Datasets、spaCy、COCO 和 YOLO,以及各自的用途。
标注的目的通常是训练或评估模型,因此导出格式很重要。Potato 既能写出普通的 JSON/JSONL/CSV,也能写出训练流程可直接读取的机器学习原生格式,无需额外的衔接代码。 在标注之前先确定目标格式,能帮你想清楚如何组织数据和 ID。
参考资料请见导出格式。
按任务挑选格式
| 格式 | 适用场景 |
|---|---|
| JSON / JSONL | 通用格式;每个条目一条记录。最稳妥的默认选项。 |
| CSV | 电子表格,以及对分类标签的快速分析。 |
| CoNLL | 词元级别的序列标注(NER、组块分析),使用 BIO 标签。 |
| Hugging Face Datasets | 直接加载到 transformers 进行训练。 |
| spaCy | 训练 spaCy 的 NER 和文本分类模型。 |
| COCO / YOLO | 基于图像标注的目标检测与分割。 |
| Parquet | 大规模列式存储与分析。参见 Parquet 导出。 |
设置输出格式
yaml
output_annotation_dir: "annotation_output/"
output_annotation_format: "jsonl" # json, csv, conll, ...导出中包含哪些内容
一条典型记录包含条目 ID、原始内容、每位标注者的标签,以及元数据(谁、何时)。保留所有标注者的标签而非仅保留聚合结果,可以让你计算一致性,并在日后用不同方法重新聚合。
标注前先规划导出
导出格式会约束你的输入设计。序列标注的导出需要一致的分词;COCO/YOLO 需要图像尺寸;Hugging Face 需要稳定的标签集。先确定目标格式,就不必重跑整个研究。参见为标注设计数据格式。