將資料前九欄設定為X,最後一欄"等級"設為Y
資料訓練
資料透過分層抽樣,Alpha、beta共100組合,利用excel做隨機變數由小到大排序,每組前20%做測試集,後80%訓練集。
模型選擇
一開始我們使用SVM演算法來做分類,SVM是比較單調的機器學習演算法,比較難去解釋X是經過某種轉換的資料,SVM演算法無法使用在我們非常態製成的數據上,因為SVM本質是根據特徵去建構超平面,我們數據分類之間的關係是非常態的,所以超平面的建構就沒那麼理想,不適合用在我們較為複雜的數據上。得出結果並不那麼好,之後發現隨機森林較適合我們的非常態分類資料,因此最後選擇了隨機森林。
方法介紹
決策樹是一個利用像樹一樣的圖形的分類工具。每個決策樹可以對資料庫進行分割來做數據測試,當不能再進行分割或一個單獨的類可以被應用於某一分支時,就完成了分類。隨機森林分類器就是將許多決策樹結合起來以提升分類的正確率。
隨機森林(Random Forest)是一種基於決策樹(Decision Tree)的整體學習演算法。它通常用於分類(Classification)和迴歸(Regression)問題,而我們的數據集是分類資料。
隨機森林是由多個決策樹組成的集合,每個決策樹都是由隨機從訓練數據集中選擇的樣本和特徵構建而成。通過隨機選擇樣本和特徵,隨機森林降低了過擬合(Overfitting)的風險,提高了模型的泛化能力。
1.建立RandomForestClassifier模型
•RandomForestClassifier(n_estimators=100,criterion='gini’)
n_estimators是決定決策樹會有幾棵,其值越大模型效果越好。
我們將其設為100是因為我們有從50~300去設定,發現100是最適當的,因為訓練時間不會過長、模型出來的效果也是最好的,訓練難度和模型效果是最佳平衡。.
2.使用訓練資料訓練模型
將分層抽樣的80%訓練集、20%測試集套入隨機森林的模型做訓練。
3.使用訓練資料預測分類 ,下面這張圖為我們預測出來的結果。