Есть ли подробная точность RWeka по классам?

В Weka 3.8.3 (платформа машинного обучения) результаты анализ с использованием классификатора JRip имеет следующий вид.

=== Summary ===

Correctly Classified Instances         158               25.2396 %
Incorrectly Classified Instances       468               74.7604 %
Kappa statistic                          0.0004
Mean absolute error                      0.3743
Root mean squared error                  0.4365
Relative absolute error                 99.7998 %
Root relative squared error            100.7977 %
Total Number of Instances              626    

=== Detailed Accuracy By Class ===

               TP Rate   FP Rate   Precision   Recall  F-Measure   ROC Area  Class
                 0.166     0.162      0.255     0.166     0.201      0.504    A
                 0         0          0         0         0          0.464    B
                 0.006     0.009      0.2       0.006     0.012      0.526    C
                 0.829     0.829      0.252     0.829     0.387      0.499    D
Weighted Avg.    0.252     0.252      0.177     0.252     0.151      0.498

=== Confusion Matrix ===

   a   b   c   d   <-- classified as
  26   0   1 130 |   a = A
  31   0   1 123 |   b = B
  20   0   1 135 |   c = C
  25   0   2 131 |   d = D

С RWeka 0.4–40 (Weka для R) тот же вид анализа дает результаты в следующем виде.

=== Summary ===

Correctly Classified Instances         203               32.4281 %
Incorrectly Classified Instances       423               67.5719 %
Kappa statistic                          0.0966
Mean absolute error                      0.3605
Root mean squared error                  0.4246
Relative absolute error                 96.1482 %
Root relative squared error             98.0552 %
Total Number of Instances              626     

=== Confusion Matrix ===

   a   b   c   d   <-- classified as
  41   0   3 113 |   a = A
  12   0   5 138 |   b = B
   7   0  23 126 |   c = C
   9   0  10 139 |   d = D

Где данные раздела «Подробная точность по классам» (второй раздел из исходных результатов Weka)? я пытался

library(RWeka)
library(caret)
TrainData <- p[,2:211]
TrainClasses <- p[,215]
jripFit <- train(TrainData,TrainClasses,method='JRip')
jripFit
summary(jripFit)
str(jripFit)

но его нигде нет. Очевидно, что p — это мой data.frame, а 215-й столбец — это классификатор.


person Rodrigo    schedule 22.08.2019    source источник


Ответы (1)


Нет необходимости использовать пакет caret.

library(RWeka)
jripFit <- JRip(myClass ~ ., data = p[,c(2:211,215)])
summary(jripFit,class=T)

где myClass — это имя 215-го столбца p, которое должно быть множителем (в то время как столбцы со 2 по 211 являются числовыми).

Еще один интересный момент: функция JRip была в 663 (!) раза быстрее, чем функция train, по крайней мере, на моей машине.

person Rodrigo    schedule 30.08.2019