@R_Linux
多項ロジスティクス回帰モデルについての説明。
年齢、ロリコン度から、好きな声優を当てるというモデル作り。
との情報量があるときに、がわかるようにを決めるという作業を行う。
これにはこのブログでもお馴染みのRでやることができる。
データQCをしたあとのところから適当なデータを作ってやってみる。
custmer <- 944 library(MCMCpack) p1 <- c(rdirichlet(1, rep(1, 4))) age <- sample(c(13, 23, 28, 33), size=custmer, prob=c(rdirichlet(1, rep(1, 4))), replace=TRUE) loli <- sample(1:5, size=custmer, prob=c(rdirichlet(1, rep(1, 5))), replace=TRUE) CV <- sample(c("Kugimiya", "Kanemoto", "Yoshitani"), size=custmer, prob=c(rdirichlet(1, rep(1, 3))), replace=TRUE) voice <- data.frame(CV, age, loli) summary(voice)
CV age loli Kanemoto : 24 Min. :13.00 Min. :1.00 Kugimiya :817 1st Qu.:23.00 1st Qu.:2.00 Yoshitani:103 Median :33.00 Median :2.00 Mean :27.54 Mean :2.46 3rd Qu.:33.00 3rd Qu.:3.00 Max. :33.00 Max. :5.00
library(nnet) model1 <- multinom(CV ~ age + loli, voice)
Call: multinom(formula = CV ~ age + loli, data = voice) Coefficients: (Intercept) age loli Kugimiya 3.608153 -0.011131366 0.09559276 Yoshitani 1.215311 -0.008000982 0.18927574 Residual Deviance: 867.0625 AIC: 879.0625
aniota <- data.frame(age = 33, loli = 5) predict(model1, aniota, type="probs")
Kanemoto Kugimiya Yoshitani 0.02045641 0.84309415 0.13644944
この後、様々なモデルが出てくるので、そのときはそのときでググるなりヘルプ見るなりやってみるということで、初心者向け解説が終わる。