1. Học hỏi
  2. /
  3. Khoa Học
  4. /
  5. R로 하는 Supervised Learning: 회귀

Connected

Bài tập

n-폴드 교차 검증으로 모델링 절차 평가하기

이 연습 문제에서는 이전 문제에서 만든 3-폴드 교차 검증 계획 splitPlan을 사용해, mpg$hwy로 mpg$cty를 예측하는 모델의 예측값을 만들어 보겠습니다.

dframe이 학습 데이터라면, 다음과 같이 프레임에 교차 검증 예측 열을 추가할 수 있습니다:

# 길이에 맞는 열 초기화
dframe$pred.cv <- 0 

# k는 폴드의 개수입니다
# splitPlan은 교차 검증 계획입니다

for(i in 1:k) {
  # i번째 분할 가져오기
  split <- splitPlan[[i]]

  # 이 분할의 학습 데이터에서 
  # 모델을 학습합니다
  # (여기서는 lm)
  model <- lm(fmla, data = dframe[split$train,])

  # 이 분할의 적용 데이터에 대해 
  # 예측을 수행합니다
  dframe$pred.cv[split$app] <- predict(model, newdata = dframe[split$app,])
}

교차 검증은 전체 데이터로 만든 모델이 새로운 데이터에서 얼마나 잘 작동할지 예측합니다. 테스트/학습 데이터 분할과 마찬가지로, 좋은 모델링 절차라면 교차 검증 성능과 학습 성능이 서로 비슷해야 합니다.

데이터 프레임 mpg, 교차 검증 계획 splitPlan, 그리고 rmse() 함수는 미리 로드되어 있습니다.

Hướng dẫn

100 XP
  • splitPlan의 3-폴드 교차 검증을 실행하고 예측값을 mpg$pred.cv 열에 저장하세요.
    • lm()과 공식 cty ~ hwy를 사용하세요.
  • 모든 mpg 데이터를 사용해 선형 회귀 모델(공식 cty ~ hwy)을 만들고, 예측값을 mpg$pred에 할당하세요.
  • rmse()를 사용해 전체 모델의 예측값(mpg$pred)에 대한 제곱근 평균제곱오차를 구하세요. rmse()는 예측값과 실제 결과 두 개의 인수를 받는다는 점을 기억하세요.
  • 교차 검증 예측의 제곱근 평균제곱오차를 구하세요. 두 값이 비슷한가요?