1. 学ぶ
  2. /
  3. コース
  4. /
  5. Rで学ぶ caret を使った Machine Learning

Connected

演習

5 × 5-分割の反復クロスバリデーション

クロスバリデーションは1回だけでなく、反復して実行できます。反復クロスバリデーションを行うと、テストデータでの誤差推定がより安定します。クロスバリデーション全体の手続きを繰り返すことも可能です。時間はかかりますが、評価に使える外部データ(アウトオブサンプル)の組み合わせが大幅に増え、モデル性能の評価精度が高まります。

caret の train() 関数のすばらしい点は、関数呼び出しのいくつかの引数を少し変えるだけで、まったく異なるモデルやクロスバリデーション手法を簡単に試せることです。たとえば、モデルのアウトオブサンプル精度推定に自信を持つため、クロスバリデーション手続きを 5 回繰り返すことができます。例:

trControl = trainControl(
  method = "repeatedcv", 
  number = 5,
  repeats = 5, 
  verboseIter = TRUE
)

指示

100 XP
  • Boston 住宅データセットに対して、線形回帰モデルを再度当てはめてください。
  • 5 分割・5 回の反復クロスバリデーションを使用してください。
  • モデルをコンソールに出力してください。