最後に多値判別を行う。これにはおなじみのirisを使う。
irisは4つのパラメータに3種類の種別がついている。
iris.glmnet <- glmnet(as.matrix(iris[, -5]), iris[, 5], family="multinomial") par(mfrow=c(1, 3)) plot(iris.glmnet)
iris.cv.glmnet <- cv.glmnet(as.matrix(iris[, -5]), iris[, 5], family="multinomial") table(iris[, 5], predict(iris.glmnet, as.matrix(iris[, -5]), s=iris.cv.glmnet$lambda.min, type="class"))
setosa versicolor virginica setosa 50 0 0 versicolor 0 48 2 virginica 0 1 49