结构化机器学习项目——吴恩达深度学习课程笔记(三)

文章总览图

ML项目流程

1,确立目标(确定开发/测试集 + 唯一最优化指标)

确定开发/测试集:开发/测试集应尽可能接近将来应用场景中的数据。

划分数据集:开发集和测试集大小足以评估模型表现即可。

设置唯一最优化指标:

方法1:使用多个指标的加权作为最优化指标

方法2:设置单一最优化指标,其它指标设置为约束指标。

2,逼近目标(正交化思想:orthogonal)

正交化思想:设计和使用效果彼此独立的旋钮。

依次实现四个子目标:拟合训练集,拟合开发集,拟合测试集,在真实应用场景表现良好。

改变目标(开发/测试集 + 评估指标)时机:训练开发测试集都ok但真实应用场景效果不理想。

泛化误差分析

人类表现水平,ML表现水平,和 Bayes最优极限:

Bayes最优极限是由数据质量本身决定,在很多项目如图像识别语音识别可以用人类表现水平来估计Bayes最优极限。

1,可避免偏差:训练集误差 - 贝叶斯最优误差(可用人类表现估计)

2,方差:开发集误差 - 训练集误差(前提是开发集和训练集同分布)

3,数据不匹配误差:开发集误差 - 开发测试集误差(来源于开发集和训练集非同分布)

错误例子分析

当机器学习模型尚不如人的表现时,可以用以下工具进行提升。其中利用人工标注的方式分析错误例子发生错误的原因非常有帮助,它可以帮助我们确定优化的细节方向。

解决数据不足

与应用场景完全匹配的标签数据有时候获取相当昂贵或者困难。可以使用人工合成数据、迁移学习、多任务学习等方式适当缓解数据不足问题。

1,人工合成数据

2,迁移学习

3,多任务学习

ML项目架构

ML项目架构可以分成传统的pipeline结构和end-to-end结构,或者组合结构。

1,端到端结构

2,流水线结构

3,组合结构

Python与算法之美

(Python_Ai_Road)

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181126G0AANM00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券