1. 学ぶ
  2. /
  3. コース
  4. /
  5. R による Supervised Learning:回帰

Connected

演習

xgboost で自転車レンタル数を学習して予測する

この演習では、xgboost() を使って勾配ブースティングモデルを学習し、天気、種別、時間帯から1時間あたりの自転車レンタル台数を予測します。7月のデータで学習し、8月のデータで予測します。

データフレーム bikesJuly、bikesJuly.treat、bikesAugust、bikesAugust.treat はすでに読み込まれています。vtreat 済みデータには目的変数の列が含まれない点に注意してください。元のデータから(cnt 列)取得する必要があります。

便宜上、前の演習で使用した木の本数 ntrees が利用できます。

xgboost()(docs)の引数は xgb.cv() とよく似ています。

指示

100 XP
  • 空欄を埋めて、7月データに対して xgboost() を実行してください。
    • as.matrix() を使って、vtreat 済みデータフレームを行列に変換します。
    • 目的関数は "reg:squarederror" を指定します。
    • 反復回数は ntrees を使います。
    • eta は 0.75、max_depth は 5、verbose は FALSE(非表示)に設定します。
  • 次に、bikesAugust.treat に対して predict() を呼び出し、8月のレンタル台数を予測します。
    • テストデータ(vtreat 済み)も as.matrix() で行列に変換します。
    • 予測値を bikesAugust に列 pred として追加します。
  • 実測のレンタル数と予測値をプロットするコードの空欄を埋めてください(x 軸に予測値)。
    • 予測にはどんな問題がありそうに見えますか?