Fast.ai Machine Learning for coders - Lesson 1

  之前一直在吴恩达的公开课那块学习,一方面学习了一些算法以及思想,另一方面也了解了一些理论。现在开始看 fast.ai,以实践著称。作者Jeremy Howard并不是学术圈的人,是工业界的人,在Kaggle 2010和2011上得了冠军。其实有的时候啊,学术圈总是弄个准确率增加了0.1%啥的,类似于通信圈写了8页纸然后增加0.1 dB。所以想看看这种实践性的人是怎么考虑问题的。
  因为是实践性的课程,所以就列出要点了:

  1. 现在比较好用的算法是结构化的数据,用集成的随机森林比较好使,非结构化的用深度学习比较好使。
  2. Dimensional Curse和NO Free Lunch 两个理论是:“They are largely meaningless and basically stupid.”(这就是为啥我觉得为啥好多理论是bullshit)。因为首先数据并不是一个纯粹的随机数据,而是一个高维空间的低维流形。因此并不是说纬度越高,最后点与点之间的距离就没意义了,是依旧有意义的。另外一个NO Free Lunch也是第一个意思,就是数据不是纯随机的。如果是纯随机,那确实是这样。
  3. 如果是数值的特征发生了缺失,应该扩展一列,将缺失的按照1标注,没缺失的按照0标注,然后在缺失的位置填上平均数。如果是类别特征缺失,直接将缺失单独作为一列就可以了。
  4. 日期、时间特征的特征工程。需要给时间加上是不是周末,第几季度,是不是节假日等等。
  5. 随机森林很好用,把特征整理好之后,直接一跑,就能Kaggle 前25%。

你可能感兴趣的:(学习笔记)