Existe-t-il un moyen d'obtenir un score de confiance (on peut également l'appeler valeur de confiance ou probabilité) pour chaque valeur prédite lors de l'utilisation d'algorithmes comme Random Forests ou Extreme Gradient Boosting (XGBoost)? Supposons que ce score de confiance varie de 0 à 1 et montre à quel point je suis confiant pour une prédiction particulière .
D'après ce que j'ai trouvé sur Internet sur la confiance, elle est généralement mesurée par intervalles. Voici un exemple d'intervalles de confiance calculés avec une confpred
fonction de la lava
bibliothèque:
library(lava)
set.seed(123)
n <- 200
x <- seq(0,6,length.out=n)
delta <- 3
ss <- exp(-1+1.5*cos((x-delta)))
ee <- rnorm(n,sd=ss)
y <- (x-delta)+3*cos(x+4.5-delta)+ee
d <- data.frame(y=y,x=x)
newd <- data.frame(x=seq(0,6,length.out=50))
cc <- confpred(lm(y~poly(x,3),d),data=d,newdata=newd)
if (interactive()) { ##'
plot(y~x,pch=16,col=lava::Col("black"), ylim=c(-10,15),xlab="X",ylab="Y")
with(cc, lava::confband(newd$x, lwr, upr, fit, lwd=3, polygon=T,
col=Col("blue"), border=F))
}
La sortie du code ne donne que des intervalles de confiance:
Il existe également une bibliothèque conformal
, mais elle est également utilisée pour les intervalles de confiance dans la régression: "conforme permet le calcul des erreurs de prédiction dans le cadre de prédiction conforme: (i) valeurs p. Pour la classification et (ii) intervalles de confiance pour la régression. "
Existe-t-il un moyen:
Pour obtenir des valeurs de confiance pour chaque prédiction dans des problèmes de régression?
S'il n'y a pas de moyen, serait-il utile d'utiliser pour chaque observation un score de confiance:
la distance entre les limites supérieure et inférieure de l'intervalle de confiance (comme dans l'exemple de sortie ci-dessus). Donc, dans ce cas, plus l'intervalle de confiance est large, plus il y a d'incertitude (mais cela ne tient pas compte de la valeur réelle dans l'intervalle)
randomForestCI
package de Stephan Wager, et le papier associé avec Susan Athey. Notez qu'il fournit uniquement des CI 'mais vous pouvez en faire un intervalle de prédiction en calculant la variance résiduelle.Réponses:
Ce que vous appelez un score de confiance peut être obtenu à partir de l'incertitude des prévisions individuelles (par exemple en prenant l'inverse de celui-ci).
La quantification de cette incertitude a toujours été possible avec l'ensachage et est relativement simple dans les forêts aléatoires - mais ces estimations étaient biaisées. Wager et al. (2014) ont décrit deux procédures pour surmonter ces incertitudes plus efficacement et avec moins de biais. Ceci était basé sur des versions à correction de biais du jackknife après bootstrap et du jackknife infinitésimal. Vous pouvez trouver des implémentations dans les packages R
ranger
etgrf
.Plus récemment, cela a été amélioré en utilisant des forêts aléatoires construites avec des arbres d'inférence conditionnelle. Sur la base d'études de simulation (Brokamp et al.2018), l'estimateur jackknife infinitésimal semble estimer plus précisément l'erreur dans les prévisions lorsque des arbres d'inférence conditionnelle sont utilisés pour construire les forêts aléatoires. Ceci est implémenté dans le package
RFinfer
.Wager, S., Hastie, T., et Efron, B. (2014). Intervalles de confiance pour les forêts aléatoires: le jackknife et l'infinitesimal jackknife. The Journal of Machine Learning Research, 15 (1), 1625-1651.
Brokamp, C., Rao, MB, Ryan, P. et Jandarov, R. (2017). Une comparaison des méthodes de rééchantillonnage et de partitionnement récursif dans la forêt aléatoire pour estimer la variance asymptotique en utilisant le jackknife infinitésimal. Stat, 6 (1), 360-372.
la source