当前位置:   article > 正文

yolov8源码解析_yolov8源码解读

yolov8源码解读

方法等价于U-RTDETR源码解析

1、核心模块如下

在这里插入图片描述

2、首先打开models

在这里插入图片描述

3、查看engine/model

1、查看里面的_new方法(生成网络)

在这里插入图片描述

2、查看里面的_load方法(已经有网络,将其加载进来)

在这里插入图片描述

3、查看里面的_smart_load方法(智能化加载)

在这里插入图片描述

1、对应于yolo/model中的位置

在这里插入图片描述

2、以上述yolo/model/task_map为例

在这里插入图片描述

3、tasks/DetectionModel

在这里插入图片描述

4、tasks/DetectionModel/__init__方法中有parse_model(解析网络配置文件.yaml)

在这里插入图片描述

5、parse_model(解析网络配置文件.yaml)

在这里插入图片描述

4、神经网络训练流程:

1、定义网络(加载网络)
2、加载数据与真值label/GT(dataset、dataloader)
3、将数据投喂到网络中,计算预测值pred
4、计算loss(pred与GT的差异)
5、反向传播BP,更新参数
6、迭代3-5步骤

1、定义网络(加载网络)

如上述的3、查看engine/model步骤

2、加载数据与真值label/GT(dataset、dataloader)

1、engine/model/train中有如下位置

在这里插入图片描述
在这里插入图片描述

2、点击BaseTrainer

在这里插入图片描述

3、找到BaseTrainer里面的train方法

在这里插入图片描述

4、train方法里调用_do_train(点击)

在这里插入图片描述

5、_do_train里面调用_setup_train(初始化)(点击)

在这里插入图片描述

6、注意:点击get_dataloader之后,会跳转到基类的位置,但其实我们要找的是子类的实现类

在这里插入图片描述

7、找到get_dataloader

在这里插入图片描述

8、

在这里插入图片描述

9、

在这里插入图片描述

10、

在这里插入图片描述

11、

在这里插入图片描述

12、

在这里插入图片描述

3、将数据投喂到网络中,计算预测值pred

4、计算loss(pred与GT的差异)

将步骤2加载的数据投喂到网络中,计算预测值pred;将pred与GT比较,在前向传播中计算loss

在这里插入图片描述

1、

在这里插入图片描述

2、

在这里插入图片描述

3、

在这里插入图片描述

5、反向传播BP,更新参数

在这里插入图片描述

6、迭代3-5步骤

5、各个部分关系解释

在这里插入图片描述
核心模块
model
engine
nn

在这里插入图片描述

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号