tools/run_optimized_supervised.sh
该脚本服务当前 XNet2d 全监督超声分割主线。
脚本会自动完成:
DATASET 解析数据集根目录scripts/generate_project_split.pytools/train.pyconfigs/segmentation/optimized/*.yamldataset、image_size、batch_size、amp、lr 和 SwanLab 配置DATASET="${DATASET:-BUSI}"
SEED="${SEED:-42}"
RUN_ALL="${RUN_ALL:-0}"
EXTRA_SET_ARGS="${EXTRA_SET_ARGS:-}"
含义:
DATASET:选择数据集SEED:项目级 split 随机种子RUN_ALL:设为 1 时依次跑内置全部监督数据集EXTRA_SET_ARGS:追加给 tools/train.py --set 的覆盖参数脚本固定使用:
/opt/miniforge3/envs/xnet_mamba/bin/python
BUS-UCLMBUSIBUS-BRABUS_UCCCAUIDDTIOTU_2dTN3KTG3K跑单个数据集:
DATASET=BUSI bash tools/run_optimized_supervised.sh
短跑调试:
DATASET=BUSI \
EXTRA_SET_ARGS="train.epochs=2 train.batch_size=2 train.val_batch_size=2 logging.use_swanlab=false" \
bash tools/run_optimized_supervised.sh
一次跑全部监督数据集:
RUN_ALL=1 bash tools/run_optimized_supervised.sh
当前正式优化训练配置在:
configs/segmentation/optimized/
所有优化配置统一使用 384x384、amp=true,并默认打开 SwanLab cloud,同时将本地日志保存在 swanlog/。
关闭 wavelet branch:
DATASET=BUSI \
EXTRA_SET_ARGS="model.use_wavelet_branch=false checkpoint.dir=outputs/experiments/supervised_ablation/BUSI_no_wavelet logging.experiment_name=xnet_busi_no_wavelet" \
bash tools/run_optimized_supervised.sh
关闭 frequency refine:
DATASET=BUSI \
EXTRA_SET_ARGS="model.use_frequency_refine=false checkpoint.dir=outputs/experiments/supervised_ablation/BUSI_no_freq logging.experiment_name=xnet_busi_no_freq" \
bash tools/run_optimized_supervised.sh
关闭两者:
DATASET=BUSI \
EXTRA_SET_ARGS="model.use_wavelet_branch=false model.use_frequency_refine=false checkpoint.dir=outputs/experiments/supervised_ablation/BUSI_no_wavelet_no_freq logging.experiment_name=xnet_busi_no_wavelet_no_freq" \
bash tools/run_optimized_supervised.sh
强制 SS2D 使用 torch fallback:
DATASET=BUSI \
EXTRA_SET_ARGS="model.ssm_backend=torch checkpoint.dir=outputs/experiments/supervised_ablation/BUSI_ssm_torch logging.experiment_name=xnet_busi_ssm_torch" \
bash tools/run_optimized_supervised.sh
先跑:
BUSIDDTITN3KTG3K再扩:
BUS_UCBUS-BRABUS-UCLMOTU_2dCCAUI当前项目的论文主线更适合优先落在甲状腺或乳腺 2D 超声分割。