超参数是模型训练前人为设定的"配置项",用于控制训练过程;而模型评估与优化则是通过指标衡量模型表现,并利用超参数调优、正则化等手段提升其泛化能力的完整体系。
超参数是什么?
超参数是在训练开始之前由人为设定的配置项,用于控制训练过程本身。它不是模型从数据中自动学到的,而是你手动(或通过搜索算法)设定的。
常见超参数举例:
| 超参数 | 作用 | 举例 |
|---|---|---|
| 学习率(Learning Rate) | 控制每次参数更新的步长 | 0.001、0.01 |
| Batch Size | 每次训练用多少条数据 | 32、64、128 |
| 网络层数 | 模型有多深 | 3层、50层(ResNet50) |
| 隐藏层维度 | 每层有多少个神经元 | 256、512、1024 |
| Dropout 比率 | 随机丢弃多少神经元防止过拟合 | 0.1、0.5 |
| 优化器类型 | 用什么算法更新参数 | SGD、Adam、AdamW |
| 训练轮数(Epochs) | 整个数据集训练多少遍 | 10、50、100 |
超参数 vs 模型参数(核心区别):
- 模型参数:模型自己从数据中学到的(如权重 W 和偏置 b),训练过程中自动更新
- 超参数 :你手动设定的,训练过程中不会自动更新,需要你反复实验来找到最优值
简单理解:超参数就像"做菜时的火候、时间、调料比例",模型参数就像"食材本身的味道"。火候和时间是你定的,味道是食材自己呈现的。
模型评估指标
用来衡量模型"好不好"的标准,不同任务用不同指标:
| 任务类型 | 常用指标 | 含义 |
|---|---|---|
| 分类 | 准确率(Accuracy) | 预测正确的比例 |
| 分类 | 精确率(Precision) | 预测为正的样本中,真正为正的比例 |
| 分类 | 召回率(Recall) | 真正为正的样本中,被正确预测出来的比例 |
| 分类 | F1 Score | 精确率和召回率的调和平均 |
| 回归 | MSE / RMSE | 预测值与真实值的均方误差 |
| 目标检测 | mAP | 综合评估检测精度 |
| 语义分割 | IoU | 预测区域与真实区域的重合度 |
优化方法
提升模型性能的主要手段:
- 超参数调优:通过网格搜索(Grid Search)、随机搜索(Random Search)、贝叶斯优化等方法,系统性地寻找最优超参数组合
- 正则化 :防止模型过拟合(在训练集上表现好,测试集上表现差)
- L1/L2 正则化:给损失函数加惩罚项,限制权重过大
- Dropout:训练时随机"关闭"一部分神经元
- 数据增强:对训练数据做翻转、裁剪、旋转等,增加数据多样性
- 早停(Early Stopping):验证集指标不再提升时提前停止训练
- 学习率调度:训练过程中动态调整学习率(如 Cosine Annealing、Warmup)
- 模型架构搜索(NAS):自动搜索最优的网络结构
整体逻辑串联
搭建模型 → 设定超参数 → 训练模型 → 用评估指标衡量效果 → 发现效果不好 → 调整超参数 / 加正则化 / 换架构 → 重新训练 → 循环迭代,直到满意