Bonjour,

J'ai fait des arbres de décision avec le programme suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
library(RWeka)
read.table("chemin....fichier.txt", header=TRUE,sep="\t")->a
##Algo C4-5=J4-8
m1 <- J48(fibsup1 ~ ., data = a,control=Weka_control(U=TRUE))
## print and summary
m1
summary(m1) # calls evaluate_Weka_classifier()
table(a$fibsup1, predict(m1)) # by hand
## visualization
## use party package
if(require("party", quietly = TRUE)) plot(m1)
Le fichier de départ comporte 10 variables et l'arbre n'en n'utilise que 2. Du coup si je refais l'arbre qu'avec les 2 variables, il ne me redonne pas le même seuil pour les variables (et oui pas le même fichier de départ).

==>D'où ma question principale, comment forcer un arbre avec les seuils et les variables que l'on veut, ceci pour pouvoir faire une validation croisée dessus par la suite?

Comme je l'ai dit, par la suite j'aimerais faire une validation croisée (on me demande des intervalles de confiance), j'avais le code suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
## Use 10 fold cross-validation. 
e1<- evaluate_Weka_classifier(m1, cost = matrix(c(0,2,1,0), ncol = 2), numFolds = 10, complexity = TRUE, seed = 123, class = TRUE) 
e1
summary(e1) 
e1$details 
qui me donne ce genre de résultats :

=== 10 Fold Cross Validation ===

=== Summary ===

Correctly Classified Instances 329 83.715 %
Incorrectly Classified Instances 64 16.285 %
Kappa statistic 0.6162
Total Cost 98
Average Cost 0.2494
K&B Relative Info Score 20061.4079 %
K&B Information Score 179.5973 bits 0.457 bits/instance
Class complexity | order 0 351.2333 bits 0.8937 bits/instance
Class complexity | scheme 9885.5744 bits 25.1541 bits/instance
Complexity improvement (Sf) -9534.3411 bits -24.2604 bits/instance
Mean absolute error 0.2117
Root mean squared error 0.3746
Relative absolute error 49.4095 %
Root relative squared error 80.9628 %
Total Number of Instances 393

=== Detailed Accuracy By Class ===

TP Rate FP Rate Precision Recall F-Measure ROC Area Class
0.889 0.279 0.876 0.889 0.883 0.825 N
0.721 0.111 0.746 0.721 0.733 0.825 O
Weighted Avg. 0.837 0.227 0.836 0.837 0.836 0.825

=== Cost Matrix ===

0 1
2 0

=== Confusion Matrix ===

a b <-- classified as
241 30 | a = N
34 88 | b = O
> summary(e3)
Length Class Mode
string 1 -none- character
details 8 -none- numeric
detailsCost 1 -none- numeric
detailsComplexity 4 -none- numeric
detailsClass 12 -none- numeric
confusionMatrix 4 -none- numeric
> e3$details
pctCorrect pctIncorrect pctUnclassified kappa
83.7150127 16.2849873 0.0000000 0.6161641
meanAbsoError rootMeanSquaredError relativeAbsoluteError rootRelativeSquaredError
0.2117413 0.3746044 49.4095040 80.9627873
==>mais je n'arrive pas trop à voir où sont les intervalles...

Merci bien pour ceux qui prendront le temps de lire ce message et d'essayer de m'aider !!