xgboost の自転車レンタルモデルを可視化する
ここまでで自転車レンタルデータを3通りの方法でモデリングしてきました。この例では、勾配ブースティングモデルが最も小さい RMSE となりました。コースの締めくくりとして、勾配ブースティングモデルの予測を、他の2つのモデルと時間の関数として比較してみましょう。
この演習を終えると、コース修了です。おめでとうございます! これで回帰タスクにさまざまな手法を適用するための道具がそろいました。
予測付きのデータフレーム bikesAugust はあらかじめ読み込まれています。プロット quasipoisson_plot と randomforest_plot も利用できます。
この演習はコースの一部です
R による Supervised Learning:回帰
演習の手順
quasipoisson_plotを表示して、quasipoisson モデルの挙動を確認します。randomforest_plotを表示して、random forest モデルの挙動を確認します。- 空所を埋めて、8月前半14日間について、勾配ブースティングの予測値と実測カウントを時間別にプロットします。
cntとgbmの列名を、キーをvaluetype、値の列名をvalueとしてpivot_longer()します。instant(日)に対するvalueをプロットします。
勾配ブースティングモデルは、これまでのモデルと比べてどのように見えますか?
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Print quasipoisson_plot
___
# Print randomforest_plot
___
# Plot predictions and actual bike rentals as a function of time (days)
bikesAugust %>%
mutate(instant = (instant - min(instant))/24) %>% # set start to 0, convert unit to days
filter(instant < 14) %>% # first two weeks
pivot_longer(c(___, ___), names_to = ___, values_to = ___) %>%
ggplot(aes(x = ___, y = ___, color = valuetype, linetype = valuetype)) +
geom_point() +
geom_line() +
scale_x_continuous("Day", breaks = 0:14, labels = 0:14) +
scale_color_brewer(palette = "Dark2") +
ggtitle("Predicted August bike rentals, Gradient Boosting model")