Scaled-YOLOv4 目标检测训练实战数据准备、训练曲线与推理这篇教程根据我复现 Scaled-YOLOv4 目标检测流程时整理重点演示环境安装、YOLO 格式数据接入、模型配置查看、训练评估和测试集推理。本文整理自我的学习和项目复现过程尽量按实操顺序保留 notebook 的关键步骤同时把数据集获取方式调整为适合中文教程发布的写法。本文会重点跑通以下流程安装 Scaled-YOLOv4 训练环境从数据集后台获取 YOLO 检测数据检查模型配置和数据配置训练自定义目标检测模型查看训练曲线并批量推理如果你正在系统学习目标检测、实例分割、OCR、多目标跟踪或视觉大模型建议收藏本文配套 notebook、示例图片和运行环境说明后续会继续整理。如果环境配置卡住可以在评论区说明具体报错。 文章目录Scaled-YOLOv4 目标检测训练实战数据准备、训练曲线与推理⚙️ 安装依赖 从数据集后台获取检测数据 检查数据配置 查看模型配置 整理训练数据目录️ 训练检测模型 训练结果查看️ 训练样本可视化 测试集推理 导出权重 小结 同系列教程汇总⚙️ 安装依赖Scaled-YOLOv4 对环境依赖较多建议优先在 Colab GPU 环境中按顺序执行。# 克隆 Scaled-YOLOv4 仓库!git clone https://github.com/WongKinYiu/ScaledYOLOv4.git# 进入仓库目录%cd/content/ScaledYOLOv4/#checkout the yolov4-large branch!git checkout yolov4-largeimporttorchprint(Using torch %s %s%(torch.__version__,torch.cuda.get_device_properties(0)iftorch.cuda.is_available()elseCPU))#install mish activation funciton for cuda%cd/content/!git clone https://github.com/JunnYu/mish-cuda%cd mish-cuda !python setup.py build install!pip install-U PyYAML%cd/content/ScaledYOLOv4/ 从数据集后台获取检测数据从数据集后台导出 YOLO 检测格式数据后修改数据集目录变量。fromtypesimportSimpleNamespace# 从数据集后台下载 YOLO 检测 格式数据集后修改 DATASET_DIR 指向解压目录。DATASET_DIR/content/dataset# 修改为数据集后台导出的数据集目录datasetSimpleNamespace(locationDATASET_DIR,version1,namecustom-dataset) 检查数据配置读取 data.yaml确认类别数、类别名和图片路径是否正确。# 查看数据集配置文件确认类别和路径。%cat{dataset.location}/data.yaml 查看模型配置先查看模型 YAML理解当前训练使用的网络结构。%cat/content/ScaledYOLOv4/models/yolov4-csp.yaml 整理训练数据目录把数据目录复制到训练仓库中保持 notebook 原有路径约定。orig_dataset_directorydataset.location orig_dataset_directory%cd{orig_dataset_directory}%cp-r{orig_dataset_directory}/content/ScaledYOLOv4️ 训练检测模型启动 Scaled-YOLOv4 训练可根据显存调整 batch、img 和 epochs。# train scaled-YOLOv4 on custom data for 100 epochs# time its performance%%time%cd/content/ScaledYOLOv4/!python train.py--img416--batch16--epochs100--data{dataset.location}/data.yaml--cfg./models/yolov4-csp.yaml--weights--name yolov4-csp-results--cache 训练结果查看通过 TensorBoard 和结果图查看 loss、mAP 等训练指标。# 启动 TensorBoard# 开始训练后再运行# 日志保存在 runs 目录%load_ext tensorboard%tensorboard--logdir runs# we can also output some older school graphs if the tensor board isnt working for whatever reason...#from utils.general import plot_results # plot results.txt as results.pngfromIPython.displayimportImage,display display(Image(/content/ScaledYOLOv4/runs/exp0_yolov4-csp-results/results.png))# view results.png️ 训练样本可视化查看原始标签和增强样本排查标注或数据增强问题。# 展示原始训练标签print(GROUND TRUTH TRAINING DATA:)Image(filename/content/ScaledYOLOv4/runs/exp0_yolov4-csp-results/test_batch0_gt.jpg,width900)# 展示增强后的训练样本print(GROUND TRUTH AUGMENTED TRAINING DATA:)Image(filename/content/ScaledYOLOv4/runs/exp0_yolov4-csp-results/train_batch0.jpg,width900) 测试集推理加载 best 权重在测试集图片上运行推理。# 训练权重默认保存在 weights 目录%ls runs/%ls./runs/exp0_yolov4-csp-results/weights# when we ran this, we saw .007 second inference time. That is 140 FPS on a TESLA P100!# use the best weights!%cd/content/ScaledYOLOv4/TEST_DIRf{dataset.location}/test/images!python detect.py--weights./runs/exp0_yolov4-csp-results/weights/best_yolov4-csp-results.pt--img416--conf0.4--source{TEST_DIR}# 展示全部测试集推理结果#this looks much better with longer training aboveimportglobfromIPython.displayimportImage,display%cd/content/ScaledYOLOv4/forimageNameinglob.glob(./inference/output/*.jpg):#assuming JPGdisplay(Image(filenameimageName))print(\n) 导出权重训练完成后下载 best 权重用于后续部署或离线推理。fromgoogle.colabimportfiles files.download(./runs/exp0_yolov4-csp-results/weights/best_yolov4-csp-results.pt) 小结这篇教程完整整理了Scaled-YOLOv4 自定义目标检测训练的核心复现流程。实际操作时建议先确认 GPU、依赖版本、数据集路径和模型权重路径再逐段运行 notebook。后续我会继续按源项目顺序整理同系列中的目标检测、实例分割、OCR、多目标跟踪和视觉大模型教程。 同系列教程汇总Google Gemini 3.5 Flash 零样本目标检测教程从提示词到可视化结果GLM-OCR 文档识别实战教程从验证码、公式到车牌 OCRRF-DETR ByteTrack 多目标跟踪实战教程从命令行到 Python 视频轨迹可视化SAM 3 图像分割实战教程文本、框和点提示的多种分割方式Scaled-YOLOv4 目标检测训练实战数据准备、训练曲线与推理