R語言機器學習算法的性能分析比較
大小:0.6 MB 人氣: 2017-10-12 需要積分:1
標簽:機器學習(129859)
你如何有效地計算出不同機器學習算法的估計準確性?在這篇文章中,你將會學到8種技術,用來比較R語言機器學習算法。你可以使用這些技術來選擇最精準的模型,并能夠給出統計意義方面的評價,以及相比其它算法的絕對優勢。選擇最好的機器學習模型
你如何根據需求選擇最好的模型?
在你進行機器學習項目的時候,往往會有許多良好模型可供選擇。每個模型都有不同的性能特點。
使用重采樣方法,如交叉驗證,就可以得到每個模型在未知數據上精準度的估計。你需要利用這些估計從你創建的一系列模型中選擇一到兩個最好的模型。
仔細比較機器學習模型
當你有了新數據集,使用多種不同的圖形技術可視化數據是個好主意,你可以從不同角度來觀察數據。
這種想法也可以用于模型選擇。你應該使用不同的方法來進行估計機器學習算法的準確率,依此來選擇一到兩個模型。
你可以使用不同的可視化方法來顯示平均準確率、方差和模型精度分布的其他性質。
比較并選擇R語言的機器學習模型
在本節中,你將會學到如何客觀地比較R語言機器學習模型。
通過本節中的案例研究,你將為皮馬印第安人糖尿病數據集創建一些機器學習模型。然后你將會使用一系列不同的可視化技術來比較這些模型的估計準確率。
本案例研究分為三個部分:
準備數據集:加載庫文件和數據集,準備訓練模型。訓練模型:在數據集上訓練標準機器學習模型,準備進行評估。比較模型:使用8種不同的技術比較訓練得到的模型。
準備數據集
本研究案例中使用的數據集是皮馬印第安人糖尿病數據集,可在UCI機器學習庫中獲取。也可在R中的mlbench包中獲取。
這是一個二元分類問題,預測患者在五年之內糖尿病是否會發作。入參是數值型,描述了女性患者的醫療信息。
現在來加載庫文件和數據集。
# load librarieslibrary(mlbench) library(caret) # load the datasetdata(PimaIndiansDiabetes)
訓練模型
在本節中,我們將會訓練在下一節中將要比較的5個機器學習模型。
我們將使用重復交叉驗證,folds為10,repeats為3,這是比較模型的常用標準配置。評估指標是精度和kappa,因為它們很容易解釋。
根據算法的代表性和學習風格方式進行半隨機選擇。它們有:
分類和回歸樹線性判別分析使用徑向基函數的支持向量機K-近鄰隨機森林
訓練完模型之后,將它們添加到一個list中,然后調用resamples()函數。此函數可以檢查模型是可比較的,并且模型都使用同樣的訓練方案(訓練控制配置)。這個對象包含每個待評估算法每次折疊和重復的評估指標。
非常好我支持^.^
(0) 0%
不好我反對
(0) 0%