RandomForest, rastgele bir özellikler alt kümesi üzerine eğitilmiş bağımsız sepetlerden oluşan bir koleksiyon olduğu ve paralelleşmeye yol açtığı için. combine()
RandomForest paketinde bağımsız olarak işlev eğitimli ormanlar birlikte dikiş olacaktır. İşte bir oyuncak örneği. @Mpq 'in cevabında belirtildiği gibi, formül gösterimini kullanmamalısınız, ancak değişkenlerin bir dataframe / matrisini ve bir sonuç vektörünü iletmelisiniz. Bunları doktorlardan utanmadan kaldırdım.
library("doMC")
library("randomForest")
data(iris)
registerDoMC(4) #number of cores on the machine
darkAndScaryForest <- foreach(y=seq(10), .combine=combine ) %dopar% {
set.seed(y) # not really needed
rf <- randomForest(Species ~ ., iris, ntree=50, norm.votes=FALSE)
}
RandomForest combine işlevini, benzer şekilde adlandırılmış .combine parametresine (döngü çıkışının işlevini denetleyen) geçirdim.
Düzenle:
Gönderiyi tekrar okuduktan sonra, 34+ faktör meselesi hakkında hiçbir şeyden bahsetmediğimin farkındayım. Düşünülmemiş bir cevap, onları ikili değişkenler olarak göstermek olabilir. Bu, her bir faktör varlığı / varlığı olmayan durum hakkında 0/1-seviyeli faktörle kodlanan bir sütundur. Önemsiz faktörler üzerinde bazı değişken seçimler yaparak ve bunları kaldırarak alanın çok fazla büyümesini önleyebilirsiniz.