完整项目结构

目录

 

1、一个完整的深度学习项目,一般包含以下功能

2、程序文件的组织结构:

3、关于__init__.py

4、数据加载

5、主文件


1、一个完整的深度学习项目,一般包含以下功能

模型定义

数据处理和加载

训练模型

训练过程的可视化

测试

2、程序文件的组织结构:

checkpoints/ 用于保存训练好的模型,使得程序异常退出后仍能重新载入模型

data/  数据相关操作(数据预处理等)

       __init__.py

      dataset.py

      get_data.sh

models/ 模型,可以有多个模型,一个模型一个py

       __init__.py

      AlexNet.py

      ResNet34.py

utils/  可能用到的功能函数

     __init__.py

     visualize.oy

config.py   配置文件,所有的可配置变量都集中在此,并提供默认值

main.py  主文件,训练和测试入口

requirements.txt  程序依赖的第三方库

README.md

3、关于__init__.py

一个目录如果包含了__init__.py文件,那么它就变成了一个包。该文件可以为空,也可以定义包的属性和方法,但它必须存在。

4、数据加载

基本原理:用Dataset封装数据集,再用Dataloader实现数据并加载。

5、主文件

def train(**kwargs):

   ..

定义网络

定义数据

定义损失函数和优化器

计算重要指标

开始训练:训练网络;可视化各种指标;计算验证集上的指标

   pass

def val(model, dataloader):

      ..

      pass

def test(**kwargs):

     ..

     pass

def help():

      ..

     pass

if __name__=='__main__':

        import fire

        fire.Fire()

猜你喜欢

转载自blog.csdn.net/yanyiting666/article/details/91522200