
の続きです。
今回は、randomForest パッケージを使って、ランダムフォレストモデルで予測してみます。
パッケージを読み込みます。

モデルを学習します。

テスト用データの予測をします。

RMSEと相関係数を計算します。

他のモデルのRMSE, 相関係数と比較しましょう。

RMSE, 相関係数ともにランダムフォレストモデルで予測したものが一番悪い成績ですね。
実際の値と予測値のグラフを描いてみます。


黒は実際の値で、赤がOLSによる予測、緑がランダムフォレストによる予測です。
OLSのほうが実績値に近いことがわかります。
今回は以上です。
はじめから読むには、
です。
今回のコードは以下になります。
#
# 第3の予測手法: Random Forest
#
# パッケージの読み込み
library(randomForest)
#
# モデル学習
set.seed(7)
model3 <- randomForest(
total_future ~ current1 + current2 + current3 +
level1 + level2 + level3,
data = df_train,
ntree = 500
)
#
# 予測
pred3 <- predict(model3, df_test)
#
# RMSE、相関係数の計算
rmse3 <-
sqrt(mean*1
#
corr3 <-
cor(pred3, df_test$total_future)
#
# いままでの比較
c(lm = rmse1, tree = rmse2, rf = rmse3)
c(lm = corr1, tree = corr2, rf = corr3)
#
# 実際の値と予測値のグラフ
tibble(
date = df_test$date,
actual = df_test$total_future,
OLS = pred1,
RF = pred3
) |>
ggplot(aes(x = date)) +
geom_line(aes(y = actual)) +
geom_line(aes(y = OLS), color = "red") +
geom_line(aes(y = RF), color = "green") +
labs(title = "Black: Actual, Red: OLS, Green: Random Forest") +
theme_minimal()
#
(冒頭の画像は、Bing Image Creator で生成しました。プロンプトは、
It is sunset time, there are 2 white clouds, a small river runs through wild land, a close up of red spider lily, HIGANBANA.
storytelling
cinematic
vibrant colors
rich details
beautiful lighting
atmospheric
visually striking
masterpiece
professional artwork です。)
*1:pred3 - df_test$total_future)^2













































