轻量级通用深度学习骨架,按需替换数据和模型即可运行。
- 进入目录:
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
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