Como entender as métricas do objeto H2OModelMetrics através do h2o.performance
Após criar o modelo usandoh2o.randomForest
, usando:
perf <- h2o.performance(model, test)
print(perf)
Eu recebo as seguintes informações (valorH2OModelMetrics
objeto)
H2OBinomialMetrics: drf
MSE: 0.1353948
RMSE: 0.3679604
LogLoss: 0.4639761
Mean Per-Class Error: 0.3733908
AUC: 0.6681437
Gini: 0.3362873
Confusion Matrix (vertical: actual; across: predicted)
for F1-optimal threshold:
0 1 Error Rate
0 2109 1008 0.323388 =1008/3117
1 257 350 0.423394 =257/607
Totals 2366 1358 0.339689 =1265/3724
Maximum Metrics: Maximum metrics at their respective thresholds
metric threshold value idx
1 max f1 0.080124 0.356234 248
2 max f2 0.038274 0.515566 330
3 max f0point5 0.173215 0.330006 131
4 max accuracy 0.288168 0.839957 64
5 max precision 0.941437 1.000000 0
6 max recall 0.002550 1.000000 397
7 max specificity 0.941437 1.000000 0
8 max absolute_mcc 0.113838 0.201161 195
9 max min_per_class_accuracy 0.071985 0.621087 262
10 max mean_per_class_accuracy 0.078341 0.626921 251
Gains/Lift Table: Extract with `h2o.gainsLift(<model>, <data>)`
or `h2o.gainsLift(<model>, valid=<T/F>, xval=<T/F>)`
Costumo examinar a sensibilidade (recordação) e a especificidade para comparar a qualidade do meu modelo de previsão, mas com as informações fornecidas, não sou capaz de entender em termos de tais métricas. Com base nas informações acima, como posso avaliar a qualidade da minha previsão?
Se eu calcular essas métricas usando a matriz de confusão, recebo:sens=0.58
, spec=0.68
isso é diferente das informações fornecidas.
Se houver alguma maneira de obter esses valores, como usamosconfusionMatrix
decaret
pacote?
Para mim, é mais intuitivo essa métrica:
do quelogLoss
métrica.