2016-11-27 10 views
0

予測する変数に28の因子の結果があるデータフレームがあります。Rの分類器モデルでアンサンブルを実行する方法

サポートベクトルマシン(SVM)、ランダムフォレスト(RF)、k-最近隣(kNN)のトレーニングデータセットで3つの分類アルゴリズムを実行しました。

私は、上記の3つのアルゴリズムに対応する3つの予測ベクトルを持っています。これらの全ては、約80〜90%の良好な精度を有する。

私はそれらをアンサンブルし、3つのアルゴリズムの投票システムに基づいて最終的な結果変数を予測したいと思います。 注:SVMは、RFとkNNの順に高い精度を示します。たとえば :

SVM prediction | RF prediction | KNN prediction|Final outcome 
---------------|---------------|---------------|------------- 

A    |A    |C    |A 
---------------|---------------|---------------|------------- 


D    |J    |D    |D 
---------------|---------------|---------------|------------- 

C    |C    |C    |C 

---------------|---------------|---------------|------------- 
I    |F    |K    |I (pick SVM's outcome in case of a tie) 

あなたは私が欲しいものを見ることができるようには非常に簡単です。 Rプログラミングでこれをどのように実行できますか?そして、この状況でアンサンブルモデリングを実行する他の方法はありますか?

答えて

0

人気投票のための統計的用語がある:モードが

SVMprediction <- c('A','D','C','I') 
RFprediction <- c('A','J', 'C','F') 
KNNprediction <- c('C','D', 'C','K') 
data <- data.frame(SVMprediction, RFprediction , KNNprediction) 

### Create the function. 
getmode <- function(v) { 
uniqv <- unique(v) 
uniqv[which.max(tabulate(match(v, uniqv)))] 
} 

apply(data,1,getmode) 

[1] "A" "D" "C" "I" は

だから、私はn個のためにそれを使用することができるが予測子の集約

役立ちますか?

+0

ありがとう@ハリー。それはうまくいったし、今から標準的な関数としてそれを使って別の予測子をアンサンブルするつもりだと思う。 –

+0

さらにもう1つ、クラシファイアモデルをアンサンブルするための優れたテクニックがありますか? –

関連する問題