1 我的深度学习项目代码文件组织结构

一般来说,深度学习项目需要包含以下内容:

  • 数据集预处理与加载

  • 深度学习模型定义

  • 模型训练

  • 模型推理

根据以上的功能描述,我的深度学习项目代码文件组织结构如下:

├─bin
├─configs
├─data_loader
├─data_preprocess
├─model
├─modules
├─my_work_dir
├─utils
├requirements.txt
├README.md

其中,

  • bin:放置执行脚本,比如train.py,test.py,recognize.py,export.py等等;
  • configs:一般用于放置项目配置文件yaml、json等,包括数据集加载参数、文件夹路径、模型配置参数、模型训练超参等的配置,一般结合yaml、argparse等读取配置文件,设置项目可配置参数;

  • data_loader:与数据集数据加载与数据集加载后处理(数据增强)等相关的代码文件

  • data_preprocess:与数据集预处理(数据集加载之前)相关的代码文件

  • model:与深度学习模型网络结构定义相关的代码文件

    • layers:放置自定义网络需要到的网络层的代码文件
  • modules:自定义的模型补充模块相关的代码文件,如(CTC decoder等)

  • my_work_dir:项目运行时设置的工作目录,用于中间文件保存,日志文件保存,模型文件保存等

  • utils:可复用的、通用的工具代码文件,如日志模块等

  • requirements.txt:本项目依赖的第三方库

  • README.md:项目架构、项目执行等必要说明

参考链接