我的任務利用13到16年的NBA比賽統計數據,去預測17年的每場NBA比賽。數據是從http://www.basketball-reference.com/這個網站獲得的。前期參考了https://www.shiyanlou.com/courses/782/labs/2647/document這裏的分析與實現方法。這個實驗樓裏實現用了LogisticRegression。現在我想對數據做一些預處理,並且用其他分類方法做決策,比較着看效果。Michael J. Lopez的《Building an NCAA men’s basketball predictive model and quantifying its success》這篇文章裏寫了幾個對預測有幫助的特徵。並且總結了下他們實現方法的侷限性。
對於數據預處理
特徵選擇
去掉方差小的特徵
用一個閾值來去除方差小的變量是一種最基礎最方便的方法,比如某個特徵在所有樣本中都是同一個值,那麼這個特徵沒有什麼信息量,可以去掉。
sklearn.feature_selection.SelectKBest
SelectKBest removes all but the k highest scoring features
分數評價標準對於分類有三種,分別是
chi2, f_classif, mutual_info_classif
- chi2 計算每個非負特徵和類之間的卡方統計。
- f_classif 計算所提供樣本方差的F統計值。
- mutual_info_classif 估計離散目標變量的互信息。