CARS(Classification And Regression Trees) における Cost-Complexity Pruning
10-fold cross-validation によって最適な pruning の数を見積もる.
以下はAnalyzing Linguistic Data より
英語において与格(〜に)を表現する句として,名詞NP(give the book Tom)と前置詞句PP(give the book to Tom) のどちらが選ばれるのかという課題.
# p.162 # CARS の実行 dative.rp <- rpart(RealizationOfRecipient ~ ., data = dative[, -c(1,3)]) # p.163 plot(dative.rp, compress = T, branch = 1, margin = 0.1) text(dative.rp, use.n = T, pretty = 0) # p. 164 # 10-cross validation を実行してプロットする plotcp(dative.rp)
dative.rp1 <- prune(dative.rp , cp = 0.041) plot(dative.rp1, compress = T, branch = 1, margin = 0.1) text(dative.rp1, use.n = T, pretty = 0)
dative.rp1
# p. 165
head(predict(dative.rp1)) choiceIsNP <- predict(dative.rp1)[,1] >= 0.5 preds <- data.frame(obs = dative$RealizationOfRecipient, choiceIsNP) head(preds) xtabs(~ obs + choiceIsNP, data = preds)