수색…


소개

RandomForest는 데이터의 초과 맞춤 가능성을 줄이는 분류 또는 회귀에 대한 앙상블 방법입니다. 이 방법에 대한 자세한 내용은 Wikipedia의 Random Forests 에서 찾을 수 있습니다. R의 주요 구현은 randomForest 패키지에 있지만 다른 구현이 있습니다. 기계 학습CRAN보기를 참조하십시오.

기본 예 - 분류 및 회귀

    ######  Used for both Classification and Regression examples
    library(randomForest)
    library(car)            ## For the Soils data
    data(Soils)
    
    ######################################################
    ##    RF Classification Example
    set.seed(656)            ## for reproducibility
    S_RF_Class = randomForest(Gp ~ ., data=Soils[,c(4,6:14)])
    Gp_RF = predict(S_RF_Class, Soils[,6:14])
    length(which(Gp_RF != Soils$Gp))            ## No Errors

    ## Naive Bayes for comparison
    library(e1071)
    S_NB  = naiveBayes(Soils[,6:14], Soils[,4]) 
    Gp_NB = predict(S_NB, Soils[,6:14], type="class")
    length(which(Gp_NB != Soils$Gp))            ## 6 Errors

이 예제는 교육 데이터를 테스트했지만 RF가 매우 좋은 모델을 만들 수 있음을 보여줍니다.

    ######################################################
    ##    RF Regression Example
    set.seed(656)            ## for reproducibility
    S_RF_Reg = randomForest(pH ~ ., data=Soils[,6:14])
    pH_RF = predict(S_RF_Reg, Soils[,6:14])

    ## Compare Predictions with Actual values for RF and Linear Model
    S_LM = lm(pH ~ ., data=Soils[,6:14])
    pH_LM = predict(S_LM, Soils[,6:14])
    par(mfrow=c(1,2))
    plot(Soils$pH, pH_RF, pch=20, ylab="Predicted", main="Random Forest")
    abline(0,1)
    plot(Soils$pH, pH_LM, pch=20, ylab="Predicted", main="Linear Model")
    abline(0,1)

RF 및 선형 모델에 대한 예측 값 대 실제 값



Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow