不用手工标注训练 YOLOv8 分类模型:CLIP 自动标注与分类微调

发布时间:2026/7/22 21:37:15
不用手工标注训练 YOLOv8 分类模型:CLIP 自动标注与分类微调 不用手工标注训练 YOLOv8 分类模型CLIP 自动标注与分类微调这篇教程根据我复现自动标注分类训练流程时整理重点演示用 CLIP 生成伪标签再训练 YOLOv8 分类模型并查看评估结果。本文整理自我的学习和项目复现过程尽量按实操顺序保留 notebook 的关键步骤同时把数据集获取方式调整为适合中文教程发布的写法。本文会重点跑通以下流程安装 Autodistill、CLIP 和 YOLOv8 依赖从数据集后台获取未标注或弱标注图片设计分类 prompt 并检查单图预测自动生成分类数据集训练 YOLOv8 分类模型并查看评估结果如果你正在系统学习目标检测、实例分割、OCR、多目标跟踪或视觉大模型建议收藏本文配套 notebook、示例图片和运行环境说明后续会继续整理。如果环境配置卡住可以在评论区说明具体报错。 文章目录不用手工标注训练 YOLOv8 分类模型CLIP 自动标注与分类微调⚙️ 安装依赖 导入依赖 从数据集后台获取图片️ 设计 Prompt 并测试 自动生成分类数据集️ 训练 YOLOv8 分类模型 评估模型 部署说明 小结 同系列教程汇总⚙️ 安装依赖安装 Autodistill、CLIP、YOLOv8 和可视化依赖。!pip install autodistill autodistill-clip autodistill-yolov8 supervision-q 导入依赖导入自动标注、分类训练和可视化模块。fromautodistill_clipimportCLIPfromautodistill.detectionimportCaptionOntologyfromautodistill_yolov8importYOLOv8importsupervisionassvimportcv2importos HOMEos.getcwd() 从数据集后台获取图片准备待自动标注的图片目录。# 从数据集后台下载待自动标注图片后修改 DATASET_DIR 指向解压目录。DATASET_DIR/content/imagesTRAIN_IMAGE_DIRf{DATASET_DIR}/trainprint(train image dir:,TRAIN_IMAGE_DIR)️ 设计 Prompt 并测试先用一张图测试 prompt 是否能区分类别再批量标注。base_modelCLIP(ontologyCaptionOntology({damaged sign:damaged sign,sign:sign}))image./Damaged-Signs-Multi-label-3/train/0aad64567664f31b63fe4a5041fd9b89-graffiti-pictures-science_jpg.rf.9049d7164fbf942e158d503e2c607511.jpgpredbase_model.predict(image)sv.plot_image(cv2.imread(image),size(4,4))classesbase_model.ontology.classes()print(classes[pred.class_id[0]]) 自动生成分类数据集使用 CLIP 基座模型为训练图片生成分类标签。base_model.label(input_folderTRAIN_IMAGE_DIR,output_folder./dataset)️ 训练 YOLOv8 分类模型使用自动标注结果训练 YOLOv8 分类模型。fromautodistill_yolov8importYOLOv8 target_modelYOLOv8(yolov8n-cls.pt)target_model.train(f{HOME}/dataset/,epochs100) 评估模型查看混淆矩阵并随机抽样推理。fromIPython.displayimportImageimportrandom Image(filenamef{HOME}/runs/classify/train/confusion_matrix.png,width600)random_imagerandom.choice(os.listdir(f{HOME}/dataset/valid/damaged sign))resultstarget_model.predict(os.path.join(f{HOME}/dataset/valid/damaged sign,random_image))print(results[0].names)print(results[0].probs) 部署说明这一段改为本地占位说明实际部署可接入自己的模型服务。# 可选将训练好的模型接入自己的部署流程。MODEL_DIRf{HOME}/runs/classify/trainprint(trained model dir:,MODEL_DIR) 小结这篇教程完整整理了YOLOv8 无手工标注分类训练的核心复现流程。实际操作时建议先确认 GPU、依赖版本、数据集路径和模型权重路径再逐段运行 notebook。后续我会继续按源项目顺序整理同系列中的目标检测、实例分割、OCR、多目标跟踪和视觉大模型教程。 同系列教程汇总Google Gemini 3.5 Flash 零样本目标检测教程从提示词到可视化结果GLM-OCR 文档识别实战教程从验证码、公式到车牌 OCRRF-DETR ByteTrack 多目标跟踪实战教程从命令行到 Python 视频轨迹可视化SAM 3 图像分割实战教程文本、框和点提示的多种分割方式SAM 3 视频分割实战教程用文本提示分割并跟踪视频中的目标不用手工标注训练 YOLOv8 分类模型CLIP 自动标注与分类微调-本文