A menudo utilizo un Curva ROC y el área bajo esa curva como medida de la precisión del clasificador en problemas de 2 clases, por ejemplo
#Load a dataset
library(mlbench)
data(Sonar)
#Build a model
library(caret)
model <- train(Class~., data=Sonar, method='gbm', tuneLength=1, trControl=trainControl(method='cv'))
model
#ROC curve and AUC
library(pROC)
pMal <- predict(model, newdata=Sonar, type='prob')[,2]
roc(Sonar$Class, pMal, plot=TRUE)
>Area under the curve: 0.9705
#Lorez curve and gini?
De forma similar, me gustaría poder trazar el curva de lorenz y calcular el coeficiente de gini para mi clasificador. Sé que Gini = 2*AUC-1
pero no estoy seguro de cómo calcularlo por sí solo. Además, todas las aplicaciones de la curva de Lorenz que he visto se refieren a datos univariantes (por ejemplo, la distribución de la renta). ¿Cómo calculo una curva de Lorenz cuando tengo 2 parámetros: la probabilidad prevista de la clase positiva y la propia clase positiva?