Pytorch模型训练(0) - CPN源码解析
《CPN源码解析》
文章目录
- 0 博客目录
- 1 前言
- 2 源码结构
0 博客目录
Pytorch模型训练(0) - CPN源码解析
Pytorch模型训练(1) - 模型定义
Pytorch模型训练(2) - 模型初始化
Pytorch模型训练(3) - 模型保存与加载
Pytorch模型训练(4) - Loss Function
Pytorch模型训练(5) - Optimizer
Pytorch模型训练(6) - 数据加载
1 前言
本人在博客2D多人关键点–《Cascaded Pyramid Network for Multi-Person Pose Estimation》中简述了CPN的原理,这里则来解析下其源码;论文作者提供的源码是tensorflow版本的,之前有人分析过了;正好还有个pytorch版本的CPN
本人想通过这份源码的学习来总结学习Pytorch模型训练的一些相关知识;pytorch-cpn这份源码结构清晰,知识点丰富,非常适合拿来当学习案例
2 源码结构
256.192.model与384.288.model:只是模型不同,其他类似;下面是train和test脚本
(下载链接:https://pan.baidu.com/s/1IAIoT69m1xZAIo8Rax4ElQ 提取码:2zzq 复制这段内容后打开百度网盘手机App,操作更方便哦)
cocoapi:这是COCO数据集提供的操作数据的一些接口函数包
data:放COCO数据的文件夹
dataloader:数据加载包
networks:网络结构包
utils:其他功能函数包
label_transform.py:COCO的人体关键点label文件转换脚本
根据自己学习经验,将代码分解成下面4个模块:
1 CPN模型
- 模型定义
- 模型初始化
- 模型保存和加载
2 Loss函数和优化器
- Loss Function
- Optimizer
3 数据加载
- 数据加载
4 模型监控
- 主要是训练过程中,监控loss变化,或valid预测效果等
- 训练可视化
PyTorch 中使用 TensorBoardX 对神经网络进行统计可视化,如Loss 曲线、Accuracy 曲线、卷积核可视化、权值直方图及多分位数折线图、特征图可视化、梯度直方图及多分位数折线图及混淆矩阵图等
TensorBoardX是借助TensorFlow的tensorboard,模型训练也不是非要可视化,所以这部分暂时先不更新,以后有时间再总结
Pytorch模型训练(0) - CPN源码解析相关推荐
- Android8.0 bindService源码解析
1.AMS的bindService 我们从调用bindService方法开始来看 bindService(intent,serviceConnection, Context.BIND_AUTO_CRE ...
- Android7.0 bindService源码解析
看到标题的时候,有些同学可能会有些质疑:现在都Android12了,你讲Android7,是不是太过时了.这里有两个原因: (1)Android8.0和Android7.0的源码有些不同,但是Andr ...
- EventBus1.0.1源码解析
很久没有更新过源码解析类文章,以下内容作为源码分析类的笔记.分析方法适用于其它源码分析. 分析工具说明 许久以来,阅读源代码最得力的工具就非Source Insight莫属了.然,后来微软出了一款轻量 ...
- YYModel V1.0.4源码解析
YYKit出现了很长时间了,一直想要详细解析一下它的源码,都是各种缘由推迟了. 最近稍微闲了一点,决定先从最简单的YYModel开始吧. 首先,我也先去搜索了一下YYModel相关的文章,解析主要AP ...
- 部署测试fabric1.0及源码解析
开发环境 UBUNTU 16.04 LTS docker docker-compose git go 1.8以上 docker,docker-compose以及go的安装这里不再描述. 部署测试 新建 ...
- android9.0 UsbService源码解析
文章目录 前言 一.服务启动 二.服务创建 三.系统就绪 四.系统启动完毕 前言 USBManager作为一接口类,客户端,当然要有一个服务端来支持工作,这个服务就是UsbService.我这里先从他 ...
- android9.0 UsbManager源码解析
文章目录 前言 一.UsbManager是什么? 二.每个类的简介 总结 前言 安卓手机可以通过USB连接外设,比如键盘,鼠标,摄像头.还可以与电脑互联进行数据传输,加强了对外扩展的能力. 这功能无疑 ...
- [Dubbo3.0.8源码解析系列]-12-全局视野来看Dubbo3.0.8的服务启动生命周期
目录 12 全局视野来看Dubbo3的服务启动生命周期 12.1 启动方法简介 12.2 启动器启动方法的调用逻辑start() 12.3 应用程序发布器DefaultApplicationDeplo ...
- react native 0.50 源码解析 再出发 持续更新
1.核心类 1.1 RCTRootView 一个RCTRootView持有一个RCTBridge成员变量 RCTRootView : UIViewRCTBridge *bridge;UIViewCon ...
- [源码解析] PyTorch 分布式(2) ----- DataParallel(上)
[源码解析] PyTorch 分布式(2) ----- DataParallel(上) 文章目录 [源码解析] PyTorch 分布式(2) ----- DataParallel(上) 0x00 摘要 ...
最新文章
- Hdu-6249 2017CCPC-Final G.Alice’s Stamps 动态规划
- java 判断日期是同一天_如何检查Java中的两个日期是否在同一天
- 关于HTTP_CLIENT_IP,HTTP_X_FORWAR
- 前台线程和后台线程(Foreground and Background Threads)
- 精美技术图赏-技术精华|二期
- asp.net中大文件下载
- Ubuntu下selenium+Chrome的安装使用
- Google C++编程风格指南(一):背景
- C语言——二维数组转置
- 内存耗尽后,Redis会发生什么?
- [USACO14JAN]Recording the Moolympics
- 【VMware vSAN 6.6】5.4.vSAN 配置提示:vSAN硬件服务器解决方案
- 将Excel VBA封装成exe程序[老贴收藏]
- MySQL服务器状态变量
- 解压后缀.tar.gz的软件包
- nacl溶解度_运用溶解度曲线判断混合物分离、提纯的方法
- 【Ceres基本使用方法】使用Ceres拟合曲线求解最小二乘问题
- pytorch使用说明2
- MySQL中的蠕虫复制
- primordials is not defined错误,正确的解决方案 亲测 完美 好用
热门文章
- 联想计算机启机按F1,电脑开机提示按f1不能正常启动怎么办
- Node.js 之 Crypto模块
- 【模型加速】PointPillars模型TensorRT加速实验(4)
- cc2530dma控制器功能_dma控制器是什么_dma控制器工作方式
- RZR 丝印RZR Marking RZR 12Pin 芯片,终于找到型号了
- 新更新....llq原创考试第二题
- 曾经的荣誉,偶然被唤醒
- pip install时timeout设置
- sd卡受损怎么修复?这个技巧一定要看
- 微型计算机硬件系统包括什么,微型计算机的硬件系统包括什么?