深度学习进阶文档深度页
深度学习正则化
通过控制容量、权重衰减、Dropout、合理增强和提前停止改善神经网络泛化。
学习前需要掌握
神经网络训练内容待补充验证集内容待补充
背景与问题
正则化不能替代正确划分和验证;增强必须保持标签语义,推理需关闭 Dropout。
概念定义
深度网络参数多、训练久而数据少时容易过拟合,不同方法从参数、结构、数据和训练轮数限制自由度。
直观理解
限制记忆能力、制造合理变化,并在验证性能最佳时保存,而不是训练越久越好。
核心原理
先小模型基线;weight_decay、dropout、augmentation 和 patience 在验证数据上选择,测试只最后使用。
数学表达
核心表达
先小模型基线;weight_decay、dropout、augmentation 和 patience 在验证数据上选择,测试只最后使用。
变量含义
变量定义与本页概念定义一致,代码中的同名变量保持相同语义。
计算步骤
- 1建立小模型
- 2检查数据划分
- 3尝试权重衰减
- 4合理增强
代码对应位置
示例 1深度学习正则化 示例:对应文档中的可靠评价或训练流程。
计算与实现步骤
- 1
建立小模型
- 2
检查数据划分
- 3
尝试权重衰减
- 4
合理增强
- 5
验证早停
- 6
保存最佳权重
代码实现
示例 1
深度学习正则化 示例
深度学习正则化 示例
PyTorch
example_01.py用途:对应文档中的可靠评价或训练流程。
optimizer=torch.optim.AdamW(model.parameters(),lr=3e-4,weight_decay=1e-2)
dropout=torch.nn.Dropout(0.2)代码解析
解析始终位于完整代码下方,并按实际代码段逐项对应。
输入数据与任务
对应文档中的可靠评价或训练流程。
model- 组合预处理和估计器的模型对象。
Step 1 · 1–2 行
数据边界和划分方式是代码含义的一部分。
optimizer=torch.optim.AdamW(model.parameters(),lr=3e-4,weight_decay=1e-2)
dropout=torch.nn.Dropout(0.2)预期输出或运行结果
训练时应用权重衰减和随机 Dropout;eval 模式关闭 Dropout。
常见错误 · 3 条
- 增强改变标签
- 保存最后而非最佳
- 正则过强
实际应用
- 图像/文本网络
- 小数据微调
常见错误
增强改变标签
保存最后而非最佳
正则过强
文档来源
12|过拟合:诊断与解决方法原始文档
学习资料/learning_tech/12_overfitting_solutions.md- §13 神经网络和深度学习