2012-03-12 15 views

cevap

47

Modele sığacak şekilde kullanılan örnekte hesaplama hatası oranı anlamına geldiğinizi varsayarak, printcp()'u kullanabilirsiniz. Örneğin, on-line bir örnek kullanarak,

> library(rpart) 
> fit <- rpart(Kyphosis ~ Age + Number + Start, data=kyphosis) 
> printcp(fit) 

Classification tree: 
rpart(formula = Kyphosis ~ Age + Number + Start, data = kyphosis) 

Variables actually used in tree construction: 
[1] Age Start 

Root node error: 17/81 = 0.20988 

n= 81 

     CP nsplit rel error xerror xstd 
1 0.176471  0 1.00000 1.00000 0.21559 
2 0.019608  1 0.82353 0.82353 0.20018 
3 0.010000  4 0.76471 0.82353 0.20018 

Root node error

(ilk sütun) rel error ve xerror sütunda gösterilen değerleri göz önüne alınarak, ve karmaşıklık parametresine bağlı olarak zaman akıllı performansın iki önlem hesaplamak için kullanılır :

  • 0,76471 x 0,20988 (yani, eğitim örnek hesaplanan hata oranı) 0,1604973 (% 16.0) resubstitution hata oranı = - bu yaklaşık

    012.351.641 olduğu
    class.pred <- table(predict(fit, type="class"), kyphosis$Kyphosis) 
    1-sum(diag(class.pred))/sum(class.pred) 
    
  • 0,82353 x 0,20988 = 0,1728425 (% 17.2) 10-kat CV ile çapraz valide hata oranı (olup, rpart.control() içinde xval bakınız; ama ayrıca bu tür bir ölçüye dayanan xpred.rpart() ve plotcp()'a da bakınız). Bu ölçü, öngörü doğruluğunun daha objektif bir göstergesidir. o tree gelen sınıflandırma doğrulukla anlaşmada az ya da çok olması

Not: Misclassification error rate eğitim örneğinden hesaplanır

> library(tree) 
> summary(tree(Kyphosis ~ Age + Number + Start, data=kyphosis)) 

Classification tree: 
tree(formula = Kyphosis ~ Age + Number + Start, data = kyphosis) 
Number of terminal nodes: 10 
Residual mean deviance: 0.5809 = 41.24/71 
Misclassification error rate: 0.1235 = 10/81 

.

İlgili konular