读书摘要《Machine Learning Yearning》

2017-07-28  本文已影响107人  MingSun_Tse

目前书更新到03部分,电子版下载:百度网盘,密码:orgv

Part 01

  1. Why machine learning
  2. 如何用这本书
  3. Prerequisites & Notations
  4. 算法效果与数据量的关系
    数据少的时候,NN的优势并不明显,这时候数据是主要的瓶颈,既然数据少,hand-crafted feature counts more. 而数据越大,NN capacity的优势就越明显。
算法效果与数据量之间的关系:数据越大,NN的优势越明显
  1. 分数据集
    对于dev与test set,一定要选取最终应用场景的,而不是简单地把手头有的数据分成三份,这是目标导向(想吃什么做什么饭),而不是资源导向(有什么菜做什么饭)。只有dev与test数据分布是一样的时候,从dev中调的参数才能真实反映test set的情况。而这种情况下,dev好,test却坏,那么就只有一种可能:overfitting了dev set,解决办法:增加dev的数据量。

dev set的数据量一般在:1k-1w examples。大约1w个 examples能detect 0.1%的improvement。对于成熟的机器学习系统,performance提升0.01%也是值得的,毕竟关乎利润。

  1. dev与test set应该分布一样

  2. 分test set
    数据量少的情况,一般dev/test set:30%。大数据时代:上亿的数据总量,没必要分出30%这么多来做dev/test set,够用就好。

  3. 单值优化指标
    优化的指标最好只有一个,多个目标同时优化,有时候难以判断孰优孰劣。例如recall与precision是两个经常矛盾的指标,解决办法:可以把recall与precision合并成一个数F1-score = 2/((1/precision)+(1/recall)),即precision和recall的几何平均。

ps. 召回率/查全率recall、精度/查准率precision、虚检率false positive rate、漏检率miss rate

对于一个二分类系统,按照predict和ground truth可以分为四类:

pos/neg表示预测的是1/0,而true/false表示看了label之后对预测肯定还是否定:如果label和预测的一致,即表示肯定;如果label和预测的相反,即表示否定。

  1. satisficing metric and optimizing matric
    Running time、model storage这些在一定范围内不是unbearable就可以了,这种metric属于satisficing metric。accuracy这种越高越好,而不是在一个范围内就okay,属于optimizing matric。

再例如,在语音识别中,false positive(没唤醒它结果它自己醒了)可以作为satisficing metric,而false negative(我想唤醒它,结果它没反应)必须作为optimizing metric来优化。而在人脸识别中,false positive(不是数据库中人却放进去了)必须作为optimizing metric,false negative(是数据库中的人却没有识别出来)可以作为satisficing metric。

  1. 开发
    强调dev set与metric的重要性。


    开发的loop:越多的iteration,开发速度越快
  2. 何时换dev/test set与metric
    一般开发一个项目,在第一周分好数据集,确定metric,时间不要太长不要过早优化。但对于比较成熟的DL应用,可以时间长一点。

当根据metric在dev set上得到的结果好,但是实测却不好,那么可能有:

  1. 总结

Part 02

  1. Error Analysis
    假如,发现猫的分类中有一些狗的图片。该不该去画几个月时间去想办法在这些狗的图片上进一步改进?

在做之前,先进行简单的error analysis:把分错的那些图片抽样一下,,看看其中狗的图片占多少,譬如5%。假设原来的错误率是10%,即100张图片中10张分错了,而这里面有0.5张是狗的图片,现在把这些剔除掉,错误率仍然有9.5%。这就意味着,即使花了几个月时间完美解决了狗分错的问题,正确率也只能提升0.5%。这种情况,花几个月时间去解决狗分错的问题就不太值得。而如果error analysis中发现狗的图片占了50%,那么花比较多的经历去解决,还是比较值得的。

Part 03

  1. Error Analysis中同时评测多个idea
    从分错的图片中抽样100张图片,做这样一个error analysis,这样就知道great cat和blurry比dog问题要更值得去解决。


    error analysis

Done.

上一篇下一篇

猜你喜欢

热点阅读