一篇论文的复现步骤如下
一、读论文
一篇论文的abstract、applications、method、quantitative evaluation部分比较重要,着重看。在这一阶段对网络的架构等做一定的了解。
二、论文代码解读
1. ReadMe
了解网络实现功能,前期环境准备,如何开始训练网络,网络所需参数等。
2. 代码结构
程序入口文件:train.py、main_train.py等类似文件
程序实现功能文件
评价函数
模型定义文件夹
3. 核心代码
代码文件说明:
A. 参数定义
B. 数据处理
C. 模型框架定义
D. 优化器
E. 学习率衰减
F. 损失定义及反传
三、论文复现
- 与torch代码相对应的各种所需参数定义和初始化
- 数据的读取和预处理操作实现(对数据做了哪些操作,如何实现,输入输出维度复现后是否一致)
- 模型框架的定义和初始化
- 网络流程定义,包括优化器、学习率、损失函数、反传操作、梯度惩罚等
四、评估模型
查看复现出的代码指标是否与论文中指标一致。
五、小结
- 读github网页的readme文件
- 了解代码文件结构
- 阅读模型文件,了解模型框架结构(与论文做