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%。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章