pytorch图像分类框架搭建——项目目录,自定义文件、包导入

最近接手的项目是关于图像分类的,参考了一些优秀的代码库,对使用pytorch框架的搭建分类项目的过程做一个记录总结,同时也记录一些常用的python包的使用。

1、第一篇先来介绍一下如何清晰调理组织项目目录可以帮助我们快速构建项目的整体框架,并专注于某一块逻辑功能的开发。个人习惯在项目目录下先建立几个常用的文件夹:

1) data文件夹用来存放数据集或者指向数据集的软连接。

2) model下存放自己定义的模型文件。

3)utils包括各种工具脚本,其中数据集的处理流程定义在dataset.py中。

4)可能需要在pytorch基础类上自己重载一些类来满足项目的需求,比如更好用的lossing函数和学习率调整策略。

5)exp文件夹来保存训练过程的模型权重,训练日志,以及各种可视化日志

6)训练以及测试过程分别定义在xxx_train.py,以及xxx_eval.pyz中,lr_find.py是参考网上的一种寻找初始学习率的方法。

cls_prj/
├── data
│   └── slide_seq
│       ├── test
│       └── train
├── criterion
│   ├── __init__.py
│   └── LabelSmoothing.py
├── model
│   ├── __init__.py
│   ├── resnet.py
│   ├── ret.py
│   └── transformer.py
├── utils
│   ├── augmentations.py
│   ├── cal_dataset.py
│   ├── collect_env.py
│   ├── comm.py
│   ├── config.py
│   ├── dataset.py
│   ├── distributed_sampler.py
│   ├── __init__.py
│   ├── logger.py
│   ├── lr_scheduler.py
│   ├── model_serialization.py
│   ├── model_utils.py
│   └── split_train_test.py
├── exp
│   ├── best_epoch11_acc81.87.pth
│   ├── last_epoch10_acc82.34.pth
│   ├── log.txt
│   └── tensorboardLoggs
│       └── events.out.tfevents.1629774768.guest-server
├── pred_test.csv
├── train.py
├── lr_find.py
├── class_train.py
└── eval_ret.py

2、关于自定义Python文件、包导入的问题可以参考下面的链接:

Python 3.x | 史上最详解的 导入(import)

在Python中以绝对路径或者相对路

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值