Skip to content

ailuntz/template_dl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

简介

轻量级通用深度学习骨架,按需替换数据和模型即可运行。

快速开始

  • 进入目录:cd template_dl
  • 创建环境:conda create -n template_dl python=3.11
  • 激活环境:conda activate template_dl
  • 安装依赖:pip install -r requirements.txt
  • 设置路径:export PYTHONPATH=<项目路径>
  • 预处理:python scripts/preprocess.py
  • 训练:python scripts/train.py --config configs/default.yaml --override configs/model/ours.yaml
  • 断点续练:python scripts/train.py --config configs/default.yaml --override configs/model/ours.yaml --resume
  • 推理:python scripts/infer.py --config configs/default.yaml --override configs/model/ours.yaml
  • 评估:python scripts/evaluate.py --config configs/default.yaml --override configs/model/ours.yaml
  • 线性基线:python scripts/train.py --config configs/default.yaml --override configs/model/baseline_linear.yaml
  • 消融实验1_无dropout:python scripts/train.py --config configs/default.yaml --override configs/ablation/ablation_no_dropout.yaml
  • 消融实验2_无隐藏层:python scripts/train.py --config configs/default.yaml --override configs/ablation/no_hidden.yaml

文件结构 (泛化多任务:llm、分割、扩散、生成、图像处理)

project/
├── configs/
│   ├── default.yaml           # 公共默认配置
│   ├── model/                 # 对比实验配置
│   │   ├── ours.yaml
│   │   └── baseline_x.yaml
│   └── ablation/              # 消融实验配置
│       └── no_xxx.yaml
├── data/
│   ├── raw/                   # 原始CSV数据
│   └── processed/             # 预处理后CSV数据
├── src/
│   ├── data.py                # Dataset + DataModule
│   ├── model.py               # 模型工厂函数
│   ├── models/                # 完整模型定义
│   │   ├── mlp.py
│   │   └── transformer.py
│   ├── layers/                # 通用可复用层
│   │   ├── attention.py       # MultiHeadAttention, SelfAttention
│   │   ├── embed.py           # PositionalEncoding, DataEmbedding等
│   │   └── norm.py            # RevIN, RMSNorm等
│   ├── baselines/             # 对比方法
│   ├── lit_modules/           # LightningModule(多任务)
│   │   └── classification.py  # 分类任务
│   ├── metrics.py             # 评估指标
│   ├── losses.py              # 损失函数
│   ├── utils/                 # 通用工具
│   │   └── config.py          # 配置加载、实验名格式化
│   └── callbacks/
│       ├── checkpoint.py
│       ├── early_stopping.py
│       └── logger.py
├── scripts/
│   ├── preprocess.py          # 数据预处理
│   ├── train.py               # 训练入口
│   ├── infer.py               # 推理
│   └── evaluate.py            # 批量评估
├── experiments/               # 按实验归档日志、权重、指标
│   ├── default/               # 实验名(在配置文件中设置)
│   │   ├── tensorboard/       # TensorBoard日志
│   │   │   ├── hparams.yaml   # 超参数配置
│   │   │   └── events.out.*   # 训练日志
│   │   ├── checkpoints/
│   │   │   ├── best.ckpt      # 最佳模型
│   │   │   └── last.ckpt      # 最新模型(断点续练用)
│   │   ├── wandb/
│   │   └── metrics.json
│   └── ...
├── results/                   # 论文图表、定稿结果
│   └── figures/
├── requirements.txt
└── README.md

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages