
の続きです。前回の線形モデルではあまり良い予測はできなかったので、今回はGAM(Generalized Additive Model)を試してみます。
まず、mgcvパッケージの読み込みをします。

学習します。

tryやpgは有意な変数ですね。
予測値と実際の値の散布図を描いてみます。


線形モデルと同じような散布図ですね。
交互作用を加えてみます。

交互作用の項、te()のところを見ると、あまり改善していないようです。
散布図を描いてみます。


気持ちよくなった程度でしょうか。。。
GAM(Generalized Additive Model)でも個人の成績からチームの順位を予測するのは難しそうです。
今回は以上です。
次回は、
です。
はじめから読むには、
です。
今回のコードは以下になります。
#
# GAM(Generalized Additive Model)
# パッケージの読み込み
library(mgcv)
#
# 学習
gam_mod <- gam(target ~ s(rank) + s(point) + s(game) + s(try) + s(goal) + s(pg),
data = df)
summary(gam_mod)
#
# 予測値と実際の値の散布図
tibble(
target = df$target,
estimate = predict(gam_mod)
) |>
ggplot(aes(x = target, y = estimate)) +
geom_point() +
geom_abline(color = "red") +
labs(title = "GAM") +
theme_minimal()
#
# 交互作用を加えたモデル
gam_mod2 <- update(gam_mod, . ~ . + te(try, pg) + te(point, try) +
te(point, pg), data = df)
summary(gam_mod2)
#
# 予測値と実際の値の散布図
tibble(
target = df$target,
estimate = predict(gam_mod2)
) |>
ggplot(aes(x = target, y = estimate)) +
geom_point() +
geom_abline(color = "red") +
labs(title = "GAM(交互作用を加えたモデル)") +
theme_minimal()
#
(冒頭の画像は Bing Image Creator で生成しました。プロンプトは Landscape of natural foreign vast grass field, there are a lot of red flowers and yellow flowers, close up of one large Rhododendron degronianum flower( Azuma-Shakunage in Japanese), photo です)









































