专栏首页AI研习社博客 | Machine Learning Yearning 要点笔记

博客 | Machine Learning Yearning 要点笔记

Andrew Ng. 的新书终于出完了。薄薄一百多页的小册子,翻下来其实是一堆实操经验集合。感觉还是有一定借鉴意义的,按照我自己的理解简单地整理如下,也不展开说了。有过实际经验的肯定心里有数。

  1. 新成果的驱动因素:数据,算力
  2. 数据集的划分:val & test
  3. val & test 应当来自相同的分布
  4. how large? 足够区分算法之间的(精度)差异
  5. 建立单一的评估指标,并通过不断迭代以优化和满足之
  6. 初始化 val & test 数据并建立 metrics,但要逐渐完善它
  7. 快速建立系统并迭代而不是一开始精心准备“完美”的东西
  8. 错误分析:查看 val 集中的错误样例,评估提升性能的所需,并行地尝试所有 ideas(节省时间,评估改进的作用)
  9. val 集纠错——随系统改善决定是否纠错
  10. val 集较大时,分成两部分:一部分用来查错(较小的)(eyeball),一部分用来调参(blackbox),二者不能重合(防止对后者过拟合。eyeball
  11. 集应该大到让你了解主要的错误类别(所以必须随机)
  12. 偏差和方差:对训练集的拟合程度和在测试集上的表现
  13. 过拟合和欠拟合
  14. 对比最优错误率(贝叶斯错误率,如以人为基准的系统)/进行偏差&方差分解,找到当前需要侧重解决的问题
  15. 可避免偏差较大,则增加模型的容量;方差大则增加训练数据集规模
  16. 偏差-方差权衡通常是困难的
  17. 减小偏差的方法:增加模型规模,基于错误分析改进输入(特征),减少正则化,修改模型架构
  18. 对训练集的错误分析:如何提升模型的表现/拟合能力(通过改进输入)
  19. 减小方差的方法:增加数据,正则化,早停,特征选择,减少模型规模(慎用),基于错误分析改善输入(同上),修改模型架构(同上)
  20. 方差&偏差诊断:观察 learning curve(局限:新增数据难以用于评估)
  21. learning curve 使用:对比 dev error,train error 和期望 error
  22. 对小样本数据需要极其谨慎
  23. 与人类水平的表现比较的意义:人类标签容易获取数据,可以利用人类的直觉/知识,以人类的性能去评估最优错误率和设置期望
  24. 计算机超过人类的任务的特点:难以获得标签,人类的直觉/知识不管用,难以获得最佳错误率和合理的期望错误率
  25. 如何定义人类的表现:设定专家级别的错误率为期望错误率。理由参考22:获得专家标注的数据;获取专家的直觉和知识;作为最优准确率是合理的。也可根据系统的提升进度逐步设置更高的人类参考基准(使用标注数据的成本不同)
  26. 超越人类的表现:算法不如人类时提升较快,超过人类后提升变慢。算法超过人类后仍可继续发展,如从人类处获得比算法转换质量更高的数据、利用人的知识和直觉加强对处理方法的理解、将人的最佳表现作为研发的期望,以及,“智能”系统的开发是没有止境的,输入变化任务随之变化,人能适应这些变化而机器不能。因此仍需将人作为开发中重要的参考基准
  27. 何时需在不同分布的数据上进行训练和测试:将额外获得的大量数据加入训练集作为辅助训练样本(但不要期待过高的提升)
  28. 是否使用全部数据?根据使用的模型做出决定,以及“外部”数据是否与任务相关、是否与基础训练集“高度”一致
  29. 加权数据:为不同数据设置不同的训练权重
  30. 训练集到验证集的泛化问题:欠拟合(通常可避免),过拟合,数据不匹配(train vs. val/test)。可设定四个数据集用于评估:训练集,训练子集,开发集,验证集。后两者应来自相同分布,用于评估泛化能力。训练子集用于跟踪训练进度
  31. 确定偏差、方差和不匹配错误:根据29中不同子集上的表现做出判断
  32. 人工合成数据:叠加(混音),剪接,加噪等
  33. 优化验证:判断问题出在优化过程还是目标函数上
  34. 强化学习的通常模式(略)
  35. 端到端学习的缺点:小数据上表现差,无法应对过于复杂的系统(应分模块)
  36. 构建管道:按功能,按特性,按效率。从简单到复杂,从底层到高层
  37. 分模块的错误检查
  38. 定位错误所在:逐个环节检查输入输出。设定“完美”的输入/输出以检查某环节上的错误
  39. 每个环节的表现与人类水平比较,逐步提升
  40. 有时每个环节工作良好,但整体表现差:跟管道的设计有关。整合模块/环节的方式也可能有问题。

本文分享自微信公众号 - AI研习社(okweiwu)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-10-08

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • macOS: 查看隐藏文件

    Petrichor_
  • python: 读取.xlsx文件

    Petrichor_
  • macOS: 安装卷宗失败

    如果插上希捷移动硬盘后,mac右上角还是显示“安装卷宗失败”,则进入系统偏好设置 -> 安全性与隐私:

    Petrichor_
  • 深度学习: 从 anchor 进化到 proposal

    Petrichor_
  • CTO 能力模型 V0.1

    最近思考了很多,我在大贲这几年的工作内容。从一开始到现在,伴随着大贲从一二十人,走到了现在的两百多人。我的工作也从一开始的带头冲锋陷阵,逐步转移到了带领产品研发...

    用户1172223
  • macOS: 查看CPU信息

    Petrichor_
  • macOS: 字体(font)文件 的 存放路径

    Petrichor_
  • macOS: 没有移动硬盘的 写权限

    Note: 这里以希捷(seagate)硬盘为例。其他牌子移动硬盘写权限的问题可以举一反三。

    Petrichor_
  • 阿里从来不只属于马云,马云永远属于阿里

    9 月 10 日教师节,阿里巴巴集团创始人马云发出题为“教师节快乐”的公开信宣布:一年后的阿里巴巴 20 周年之际,即 2019 年 9 月 10 日,他将不再...

    AI科技大本营
  • Tmux 使用

    [1] 十分钟学会 tmux [2] Tmux使用手册 [3] 第 2 章 配置 tmux

    Petrichor_

扫码关注云+社区

领取腾讯云代金券