Bing Image Creator で生成: Star night and moon, photo
の続きです。
今回は、 nnet パッケージでニューラルネットで判別してみます。
まず、nnet パッケージを読み込みます。
モデルをフィットします。
予測します。
結果をみてみましょう。
正解率を計算します。
32.8% でした。あまり良い正解率ではないですね。
続いて、mgcv パッケージで Generalized Additive Model で判別してみます。
まず、mgcv パッケージを読み込みます。
モデルをフィットします。gam() 関数を使います
使った説明変数は、lm_mod2 で使われていた説明変数のうち、数値型の変数だけにしました。
予測します。
結果をみてみます。
正解率は 34% でした。
今回は以上です。
初めから読むには、
です。
今回のコードは以下になります。
#
# 予測方法8: ニューラルネットによる判別
#
# nnet パッケージを読み込む
library(nnet)
#
# モデルをフィット
nnet_mod <- nnet(symboling ~ .,
size = 3,
decay = 0.1,
linout = TRUE,
data = df_train)
#
# 予測
yosoku_nnet <- predict(nnet_mod, newdata = df_test) |> round(0)
#
# 結果
table(yosoku_nnet, df_test$symboling)
#
# 正解率
accu_nnet <- (1 + 1 + 18 + 1) / 64
accu_nnet
#
# 予測方法9: Generalized Additive Model
#
# mgcv パッケージを読み込む
library(mgcv)
#
# モデルをフィット
gam_mod <- gam(symboling ~ s(normalized_losses) + s(wheel_base) +
s(width) + s(height) + s(compression_ratio) +
s(city_mpg) + s(highway_mpg),
method = "REML",
data = df_train)
#
# 予測
yosoku_gam <- predict(gam_mod, newdata = df_test) |>
round(0)
#
# 結果
table(yosoku_gam, df_test$symboling)
#
# 正解率
accu_gam <- (6 + 7 + 11 + 4 + 1) / 64
accu_gam
#