训练指南 ========= 基本训练 -------- EMCAD 项目使用 Trainer 类封装完整的训练流程。 .. code-block:: python from src.utils.config import Config from src.core.networks import EMCADNet from src.utils.dataloader import get_loader from src.utils.trainer import Trainer config = Config.from_yaml("configs/default.yaml") train_loader = get_loader( config.dataset.root_path, config.dataset.list_dir, config.dataset.volume_path, split="train", img_size=config.dataset.img_size, batch_size=config.training.batch_size, ) model = EMCADNet( num_classes=config.model.num_classes, encoder=config.model.encoder, kernel_sizes=config.model.kernel_sizes, expansion_factor=config.model.expansion_factor, ) trainer = Trainer( model=model, config=config, train_loader=train_loader, ) trainer.train(epochs=config.training.max_epochs) 自定义训练 ---------- 早停配置 ~~~~~~~~ 在配置文件中启用早停: .. code-block:: yaml training: early_stopping: enabled: true patience: 50 min_delta: 0.001 学习率调度 ~~~~~~~~~~ 支持多种学习率调度器: .. code-block:: yaml training: lr_scheduler: type: "CosineAnnealingLR" T_max: 300 eta_min: 1e-6 监督策略 -------- EMCAD 支持三种监督策略: 1. **mutation**: 多尺度监督 2. **deep_supervision**: 深度监督 3. **last_layer**: 仅最后一层监督 .. code-block:: yaml training: supervision: "mutation"