SuperAPI AI 工具集

getitune-preparing-datasets

数据与分析

查看项目

更新于 10-16 02:39

技能介绍

用途:为 getitune(Geti 训练库)准备数据集,并通过 Python API 的 data= 或 CLI 的 --data_root 指向数据集根目录,用于训练、测试与预测。所有操作在 library/ 目录下运行。

主要能力:传入文件系统路径后,getitune 使用 Datumaro 自动检测数据集格式,指向数据集根目录即可,同一调用适用于不同底层格式。支持的格式及检测依据:COCO 由含 COCO JSON 文件的 annotations/ 目录识别;YOLO 由 data.yaml 文件(Ultralytics 布局)识别;Pascal VOC 由 JPEGImages/、Annotations/、ImageSets/ 目录识别;Datumaro 原生由根目录的 metadata.json 与 data.parquet 识别。也接受 Zip 压缩包,Datumaro 在导入时解压。

使用方式:将 data= 指向数据集根目录,即直接包含上述标记文件/文件夹的目录,而非其父目录。示例:from getitune.engine import create_engine;engine = create_engine(model="src/getitune/recipe/detection/yolox_s.yaml", data="/path/to/dataset_root");engine.train()。需将数据集整理为一种受支持格式,并确认标记文件/文件夹位于所传根目录下。数据集需与任务匹配:检测需边界框标注,分割需掩码,分类需逐图标签,任务与标签须与所选模型一致。建议先用 engine.train(max_epochs=1) 做小规模冒烟测试,确认一个训练批次和一个验证批次能正常加载后再完整训练。若训练 Ultralytics YOLO 模型,可直接将 Ultralytics 的 data.yaml 作为 data= 或 --data_root 传入;Ultralytics 支持需从源码安装并带 ultralytics extra,PyPI 包中不包含。

限制与排错:格式检测错误或失败通常因根目录存在多余嵌套或缺少标记文件,需确认标记直接位于所传路径下。训练时出现特征/标签不匹配,说明标注类型与任务不符,可参考 getitune-training-a-model 并显式传入 task=。Geti 应用后端通过 application/backend/app/datumaro_converter/ 在 Geti 内部数据集与 COCO/VOC 之间转换,这是应用侧路径,与库的 data= 用法不同。相关技能:getitune-training-a-model 通过 data= 消费已准备的数据集;getitune-discovering-models 用于选择与数据集任务匹配的模型。