모형 적합 - Random Forest :: 예측 분석 - mindscale
Skip to content

모형 적합 - Random Forest

Random Forest

  • 여러 개의 tree 모형을 가지고 평균을 내어 결과를 추정하는 방법
  • 평균을 낸 값이기 때문에 분산이 줄어들게 됨
  • Tree기법은 변수값에 민감하기 때문에 변수의 값이 조금 변하거나 단지 하나의 자료만 추가되더라도 결정 규칙이 바뀌는 경우가 발생
  • 좋은 분석은 몇몇개의 자료에 의해 결과가 바뀌는 일이 일어나지 않음 -> 결과는 안정적이고 신뢰성이 높아야 함
  • 일부 자료만을 사용한 여러 개의 sub 나무를 만들고 이 나무들의 결과를 평균을 내어 의사 결정을 내림 -> 훨씬 안정적인 결과
  • 분석 속도가 빠름
  • Tuning parameter: mtry
  • mtry: sub 나무를 만들 때 사용할 predictor의 개수

실습

cross validation

controlObject <- trainControl(method = 'repeatedcv', # cross validation 반복 시행
                              repeats = 2, # 2번 시행
                              number = 5, # training 자료를  10조각 냄
                              classProbs = T)

grid 생성

rfGrid <- expand.grid(.mtry = c(4,6,8,10))

모형 학습

rfModel <- train(Class ~.,
                 data = Train_dat,
                 method = 'rf',
                 tuneGrid = rfGrid,
                 metric = 'Kappa',
                 ntrees = 1500,
                 importance = T, # 변수의 중요도
                 trControl = controlObject)
rfModel