Gibt es eine Möglichkeit, für jeden vorhergesagten Wert einen Konfidenzwert (wir können ihn auch als Konfidenzwert oder Wahrscheinlichkeit bezeichnen) zu erhalten, wenn Algorithmen wie Random Forests oder Extreme Gradient Boosting (XGBoost) verwendet werden? Angenommen, dieser Konfidenzwert reicht von 0 bis 1 und zeigt, wie sicher ich in Bezug auf eine bestimmte Vorhersage bin .
Nach dem, was ich im Internet über das Vertrauen gefunden habe, wird es normalerweise in Intervallen gemessen. Hier ist ein Beispiel für berechnete Konfidenzintervalle mit confpred
Funktion aus der lava
Bibliothek:
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))
}
Die Code-Ausgabe gibt nur Konfidenzintervalle an:
Es gibt auch eine Bibliothek conformal
, die jedoch auch für Konfidenzintervalle bei der Regression verwendet wird: "Konform ermöglicht die Berechnung von Vorhersagefehlern im Rahmen der konformen Vorhersage: (i) p.Werte für die Klassifizierung und (ii) Konfidenzintervalle für die Regression. ""
Gibt es also einen Weg:
Um Konfidenzwerte für jede Vorhersage bei Regressionsproblemen zu erhalten?
Wenn es keinen Weg gibt, wäre es sinnvoll, für jede Beobachtung Folgendes als Vertrauensbewertung zu verwenden:
der Abstand zwischen oberen und unteren Grenzen des Konfidenzintervalls (wie in der obigen Beispielausgabe). In diesem Fall ist die Unsicherheit umso größer, je breiter das Konfidenzintervall ist (dies berücksichtigt jedoch nicht, wo im Intervall der tatsächliche Wert liegt).
randomForestCI
Paket von Stephan Wager und das dazugehörige Papier mit Susan Athey an. Beachten Sie, dass nur CIs bereitgestellt werden. Sie können jedoch ein Vorhersageintervall daraus erstellen, indem Sie die Restvarianz berechnen.