AI模型开发全链路90天精细学习计划(每日任务版)
本文最后更新于 2026年7月29日 下午
AI模型开发全链路90天精细学习计划(每日任务版)
前置说明:
- 每日有效学习:3.5h左右;区分【理论阅读 + 代码实操 + 复盘】
- 技术主线:Python → Pandas/OpenCV数据清洗 → 数据标注工程 → PyTorch深度学习 → YOLOv8训练调参 → ONNX导出 + 边缘推理
- 融合人工智能训练师三级考点;偏向计算机视觉、嵌入式落地(RK系列部署方向)
- 所有数据集链接、开源仓库、学习网站直接附在对应日程
- 实操要求:所有代码必须自己手打运行,禁止直接复制粘贴
环境清单(第一周完成搭建)
Python3.10、Anaconda、Pandas、Numpy、OpenCV-Python、PyTorch、label-studio、ultralytics、onnxruntime
资源总前置清单(全程通用,先收藏)
学习网站
- 动手学深度学习:https://zh.d2l.ai/
- PyTorch官方教程:https://pytorch.org/tutorials/
- YOLOv8文档:https://docs.ultralytics.com/
- LabelStudio:https://labelstud.io/guide/
- CVAT文档:https://opencv.github.io/cvat/docs/
- HuggingFace镜像:https://hf-mirror.com/docs
- AI Studio(免费GPU):https://aistudio.baidu.com/
核心开源仓库
- Ultralytics YOLOv8:https://github.com/ultralytics/ultralytics
- LabelStudio:https://github.com/HumanSignal/label-studio
- OpenCV官方示例:https://github.com/opencv/opencv
- d2l代码仓库:https://github.com/d2l-ai/d2l-zh
- 图像数据集清洗工具集:https://github.com/ultralytics/yolo-utils
- 数据集划分脚本:https://github.com/jbwang1997/DataSetSplit
- COCO/YOLO标签格式转换工具:https://github.com/hvgazula/LabelConverter
练习数据集
- MNIST手写数字:https://www.kaggle.com/datasets/hojjatk/mnist-dataset
- Kaggle泰坦尼克:https://www.kaggle.com/c/titanic/data
- 猫狗分类数据集:https://www.kaggle.com/datasets/carlosm61/cats-and-dogs
- COCO128子集:https://github.com/ultralytics/yolov5/releases/download/v1.0/coco128.zip
阶段1|第1~21天:Python + 数据清洗基础
目标:熟练批量处理文件、表格清洗、图像预处理
第1周|Day1~Day7:Python基础
Day1
- 理论:Python基础语法(变量、运算符、if判断)
- 代码练习:
- 实现数值计算、条件判断脚本
- 编写函数:输入两个数字返回最大值
- 复盘:理解函数参数、返回值
Day2
- 理论:循环for/while、列表、字典
- 代码练习:
- 遍历列表,筛选指定元素
- 字典存取、遍历;构造图片名称-标签字典
Day3
- 理论:文件IO、os模块基础
- 代码练习:
- os.listdir遍历文件夹所有图片
- 批量打印文件夹内所有jpg文件名
Day4
- 理论:json/yaml读写(标注工程必备)
- 代码练习:
- 将图片名称、标签写入json文件
- 读取json,解析标签信息
Day5
- 理论:异常捕获try-except;路径处理pathlib
- 代码练习:
- 安全读取图片,捕获文件不存在异常
- pathlib实现跨平台文件路径管理
Day6
- 理论:面向对象基础class
- 代码练习:编写简易数据集管理类,加载图片路径、保存路径列表
Day7 本周综合项目
- 代码任务:批量重命名图像脚本
- 遍历文件夹,把img001.jpg统一规范命名00001.jpg;过滤非jpg文件
- 产出:batch_rename.py
第2周|Day8~Day14:Numpy + Pandas结构化数据清洗
Day8 Numpy基础
- 练习:数组创建、切片、形状变换、数值运算
Day9 Pandas基础
- 练习:DataFrame创建,csv读取、存储
Day10 缺失值处理(训练师高频考点)
- 代码练习:泰坦尼克数据集df.isnull()、dropna()、fillna()填充缺失数据
Day11 去重、异常值筛选
- 练习:drop_duplicates();利用四分位数剔除异常样本
Day12 数据筛选、条件查询
- 根据标签过滤样本,划分正负样本
Day13 数据集划分基础脚本
- 按比例随机切分csv数据集train/val
Day14 综合项目
- 泰坦尼克完整清洗流水线:读取csv→缺失处理→剔除异常→特征筛选→保存清洗后数据集
- 产出:data_clean_table.py
- 数据集:https://www.kaggle.com/c/titanic/data
第3周|Day15~Day21:OpenCV图像数据清洗(CV核心)
Day15 OpenCV基础
- 图像读取imread、显示、保存、通道转换BGR→RGB
Day16 图像缩放、裁剪
- 批量统一图片分辨率(训练数据集标准预处理)
Day17 图像滤波降噪
- 高斯模糊、均值滤波
Day18 亮度、对比度调整
- 图像标准化
Day19 脏图筛选思路
- 图片尺寸过滤、极小图剔除
- 代码:过滤分辨率小于320×320的无效图片
Day20 批量脚本
- 遍历文件夹,清洗图像并保存到新目录
Day21 阶段综合项目
- 图像清洗流水线脚本:原始图片文件夹→过滤过小图片→统一尺寸→输出清洗后数据集
- 产出:image_clean.py
- 练习数据集:猫狗分类数据集
阶段2|第22~42天:数据标注工程、数据集规范
目标:掌握标注工具、标签格式、标签校验、数据集划分
第4周|Day22~Day28:标注理论 + LabelStudio部署
Day22
- 学习:分类/目标检测/分割任务区别;标注规范、标注误差来源
- 阅读COCO格式文档:https://cocodataset.org/#format-data
Day23 本地部署LabelStudio
1 | |
- 搭建目标检测标注项目
Day24 LabelStudio实操
- 导入图片、创建标注标签
Day25 手动标注
- 标注50张图片,导出COCO JSON格式
Day26 理解YOLO txt标签格式
- class x y w h 归一化坐标
Day27 标签格式转换代码
- COCO JSON ↔ YOLO TXT
- 使用LabelConverter仓库代码改造练习
Day28 本周项目
- 50张图片标注,导出YOLO格式数据集
第5周|Day29~Day35:CVAT部署、AI预标注
Day29 Docker部署CVAT(官方文档)
Day30 CVAT项目创建
- 图片上传、标签配置
Day31 CVAT自动标注功能体验
- 预标注大幅降低标注工作量
Day32 CVAT批量修改标注框
Day33 CVAT导出COCO数据集
Day34 编写脚本:检查标签文件是否存在
- 图片与标签一一对应校验
Day35 脚本:查找没有标签的图片
- 漏标注筛查
第6周|Day36~Day42:完整数据集流水线
Day36 数据集均衡概念
- 正负样本平衡策略
Day37 数据集划分脚本开发
- 按照训练集80%、验证集20%自动划分图片+标签
- 开源参考:DataSetSplit
Day38 数据校验脚本
- 非法标签值筛查(类别id越界、坐标超出0~1)
Day39 数据增强理论
- 随机翻转、裁剪、色彩扰动
Day40 Albumentations图像增强库入门
Day41 批量增强脚本
- 扩充小数据集
Day42 阶段验收:全链路
- 原始图片→OpenCV清洗→CVAT标注→标签校验→数据集划分
- 产出:完整YOLO标准数据集文件夹结构
- 练习素材:coco128子集
阶段3|第43~63天:深度学习基础 + PyTorch模型训练
目标:看懂训练代码,理解训练循环、损失函数、过拟合、优化器
第7周|Day43~Day49:深度学习理论(zh.d2l.ai)
Day43 神经网络基础、激活函数
- sigmoid/relu
Day44 卷积神经网络CNN原理
Day45 损失函数、优化器
- SGD/Adam
Day46 训练集/验证集、过拟合、欠拟合
Day47 评估指标
- Acc、Precision、Recall
Day48 CNN经典网络
- LeNet、ResNet思想
Day49 理论复盘
- 整理笔记
第8周|Day50~Day56:PyTorch基础
Day50 Tensor基础、cuda显卡加速
Day51 Dataset、DataLoader自定义数据集加载器
Day52 搭建简易卷积网络
Day53 完整训练循环
- 前向传播、反向传播、梯度更新
Day54 模型保存
- torch.save/torch.load
Day55 模型推理代码
Day56 项目:训练MNIST手写数字分类模型
- 数据集:MNIST
第9周|Day57~Day63:迁移学习训练
Day57 TorchVision预训练模型调用ResNet
Day58 迁移学习原理
- 冻结主干网络训练分类头
Day59 数据集加载、图像归一化
Day60 训练分类模型(猫狗数据集)
Day61 绘制loss/acc训练曲线
Day62 测试模型,统计准确率
Day63 阶段验收
- 输出完整图像分类训练工程
阶段4|第64~80天:目标检测实战、训练调参、模型微调
目标:不从头训练,基于预训练模型微调(行业主流方案)
第10周|Day64~Day70:YOLOv8完整训练流程
Day64 安装ultralytics
- 熟悉YOLOv8配置文件yaml格式
Day65 构建YOLO数据集yaml
- 读取coco128测试训练
Day66 启动训练,看懂训练日志
1 | |
Day67 推理脚本编写
- 图片/视频预测
Day68 模型评估mAP指标解读
Day69 训练可视化结果查看
Day70 完整项目
- 训练小型目标检测数据集
第11周|Day71~Day77:训练调优实战
Day71 超参学习率、batchsize、epochs作用
Day72 数据增强参数配置
Day73 解决过拟合
- dropout、mixup、权重衰减
Day74 类别不均衡解决方案
Day75 训练日志分析
- 定位不收敛原因
Day76 早停策略、模型保存最优权重
Day77 多次对比实验
- 记录调参结果
第12周|Day78~Day80:大模型微调入门
Day78 HuggingFace数据集、transformers基础
Day79 全量微调 vs LoRA微调概念
Day80 看懂LLM微调基础代码(拓展认知)
阶段5|第81~90天:端到端全链路综合项目 + 模型导出推理部署
自主完成一套完整AI项目,作为作品集
| 日期 | 任务 |
|---|---|
| Day81 | 需求定义:选定检测目标,采集原始图片 |
| Day82 | OpenCV批量清洗原始图像脚本 |
| Day83 | CVAT标注所有图片,导出YOLO标签 |
| Day84 | 标签校验脚本,修正错误标注 |
| Day85 | 数据集划分,生成训练yaml |
| Day86 | YOLOv8训练,调参优化,得到最优模型 |
| Day87 | 模型测试,统计mAP、召回率 |
| Day88 | 导出ONNX模型 model.export(format=”onnx”) |
| Day89 | ONNX Runtime本地Python推理脚本开发 |
| Day90 | 最终整合:整理全部代码、数据集、训练日志,撰写项目文档 |
项目文档应包含
- 数据清洗说明
- 标注规范
- 训练参数
- 推理示例
嵌入式工程师学AI - 从工具使用者到模型开发者的进阶之路