已经把重要的配置全部拎出来了,每次训练只需要修改配置文件就可以了。

This commit is contained in:
zhanghuan
2025-09-10 15:02:23 +08:00
parent 4c2fa0e533
commit 06fead1ab3
3 changed files with 65 additions and 14 deletions
+51
View File
@@ -0,0 +1,51 @@
"""
食物分类器配置文件
包含训练参数、路径配置等
"""
import os
# 基础路径配置
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
# 数据集路径
DATASET_DIR = os.path.join(BASE_DIR, 'dataset')
TRAIN_DATA_DIR = os.path.join(DATASET_DIR, 'train')
VAL_DATA_DIR = os.path.join(DATASET_DIR, 'val')
TEST_DATA_DIR = os.path.join(DATASET_DIR, 'test')
# 模型保存路径
MODEL_DIR = os.path.join(BASE_DIR, 'model', '03')
BEST_MODEL_PATH = os.path.join(MODEL_DIR, 'best_food_model.pth')
TRAINING_CURVES_PATH = os.path.join(MODEL_DIR, 'training_curves.png')
# 训练参数
# NUM_EPOCHS = 100
NUM_EPOCHS = 3
BATCH_SIZE = 32
LEARNING_RATE = 0.001
WEIGHT_DECAY = 1e-4
# 学习率调度器参数
SCHEDULER_STEP_SIZE = 30
SCHEDULER_GAMMA = 0.1
# 数据预处理参数
IMAGE_SIZE = (32, 32)
NORMALIZE_MEAN = (0.485, 0.456, 0.406)
NORMALIZE_STD = (0.229, 0.224, 0.225)
# 数据增强参数
RANDOM_HORIZONTAL_FLIP_P = 0.5
RANDOM_ROTATION_DEGREES = 10
COLOR_JITTER_BRIGHTNESS = 0.2
COLOR_JITTER_CONTRAST = 0.2
COLOR_JITTER_SATURATION = 0.2
COLOR_JITTER_HUE = 0.1
# 模型参数
NUM_CLASSES = 3
# 其他配置
NUM_WORKERS = 0 # Windows下建议设为0
DEVICE = 'cuda' # 'cuda' 或 'cpu',程序会自动检测可用性