1. 学习
  2. /
  3. 课程
  4. /
  5. R による Supervised Learning:回帰

Connected

练习

n-fold 交差検証でモデリング手順を評価する

この演習では、前の演習で作成した 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() 関数はあらかじめ読み込まれています。

说明

100 XP
  • splitPlan の 3 分割交差検証プランを実行し、予測結果を mpg$pred.cv 列に入れます。
    • lm() と数式 cty ~ hwy を使います。
  • すべての mpg データで線形回帰モデル(数式 cty ~ hwy)を作成し、予測を mpg$pred に代入します。
  • rmse() を使って、フルモデルの予測(mpg$pred)の二乗平均平方根誤差を求めます。rmse() は予測値と実際の目的変数の 2 つの引数を取ることを思い出してください。
  • 交差検証による予測の二乗平均平方根誤差も求めましょう。2 つの値はおおよそ同じになっていますか?