03 机器学习任务攻略
一、作业概览与核心目标
- 作业设计模式
- 所有作业遵循统一框架:
- 输入(X):训练数据(如语音片段、图像、文本等)
- 输出(Y):目标预测结果(如音标分类、物体识别、说话人身份、翻译文本等)
- 测试数据:仅含输入(X),需模型预测对应输出(Y)
- 所有作业遵循统一框架:
- 具体作业任务示例
| 作业编号 | 任务类型 | 输入(X) | 输出(Y) | 应用场景示例 |
|---|---|---|---|---|
| 作业一 | 基础分类 | 结构化数据 | 分类标签 | 数据预测任务 |
| 作业二 | 语音识别 | 短音频信号 | 音标(Phoneme)分类 | 简化版语音识别系统 |
| 作业三 | 图像识别 | 图片像素 | 物体类别 | 图像分类 |
| 作业四 | 说话人识别 | 音频信号 | 说话人身份 | 银行客服身份验证 |
| 作业五 | 机器翻译 | 源语言文本(如日语) | 目标语言文本(如中文) | 跨语言翻译 |
二、模型训练核心流程
-
三步训练框架
- Step 1:定义模型(Model)
- 构建含未知参数(θ)的函数 \(f_θ(X)\),如线性模型、神经网络等。
- Step 2:定义损失函数(Loss)
- 量化模型预测结果与真实值的差距,如均方误差(MSE)、交叉熵(Cross-Entropy)。
- Step 3:优化参数(Optimization)
- 通过梯度下降(Gradient Descent)寻找最小化损失的参数 θ*。
- Step 1:定义模型(Model)
-
测试阶段
- 将优化后的 θ* 应用于测试数据,生成预测结果并提交评估。
三、训练问题诊断与解决策略
-
关键问题:训练损失(Training Loss)高
- 可能原因一:模型偏差(Model Bias)
- 定义:模型复杂度不足,无法捕捉数据规律。
- 判断方法:
- 对比更复杂模型(如增加层数、特征维度)的训练损失。
- 若复杂模型损失显著降低,则原模型存在偏差。
- 解决方案:
- 增加输入特征(如历史数据长度、图像局部特征)。
- 使用更复杂结构(如深层神经网络、注意力机制)。
- 可能原因二:优化失败(Optimization Failure)
- 定义:模型复杂度足够,但优化算法未找到最优参数。
- 判断方法:
- 对比浅层模型与深层模型的训练损失。
- 若深层模型损失未低于浅层模型(如56层网络损失高于20层),则优化失败。
- 解决方案:
- 调整优化算法(如更换优化器、调整学习率)。
- 使用初始化策略(如He初始化)、批量归一化(BatchNorm)。
- 可能原因一:模型偏差(Model Bias)
-
诊断工具与实验设计
- 基线模型对比:
- 先训练简单模型(如线性回归、SVM)作为性能基准。
- 若复杂模型无法超越基线,需优先排查优化问题。
- 层数对比实验:
- 通过逐步增加网络深度,观察损失变化趋势(如案例中4层网络损失0.10K,5层反升至0.34K)。
四、实例解析:优化问题的典型表现
案例:深层网络性能下降
- 现象:56层网络训练损失高于20层网络。
- 分析:
- 深层网络理论上可覆盖浅层网络的功能(如前20层复现浅层模型,后36层恒等映射)。
- 损失未降低表明梯度下降未有效收敛,需优化策略改进。
- 解决方案方向:
- 引入残差连接(ResNet)、自适应学习率(Adam)、数据增强。
五、总结与行动指南
- 训练流程优先级
- 先确保模型在训练集上表现良好,再关注测试集性能。
-
问题排查路径
Training Loss高 → 检查模型复杂度 → 对比简单/复杂模型损失 → 若复杂模型损失仍高 → 优化问题 → 若复杂模型损失降低 → 模型偏差 -
实践建议
- 逐步增加模型复杂度,避免“一步到位”设计。
- 记录不同结构的训练损失曲线,辅助问题定位。

浙公网安备 33010602011771号