Um ein Konfidenzniveau auf eine Wahrscheinlichkeit beim überwachten Lernen zu kalibrieren (z. B. um das Vertrauen aus einer SVM oder einem Entscheidungsbaum unter Verwendung von überabgetasteten Daten abzubilden), besteht eine Methode in der Verwendung der Plattschen Skalierung (z. B. Erhalten kalibrierter Wahrscheinlichkeiten aus dem Boosten) ).
Grundsätzlich verwendet man die logistische Regression, um bis [ 0 ; 1 ] . Die abhängige Variable ist die wahre Bezeichnung und der Prädiktor ist das Vertrauen aus dem nicht kalibrierten Modell. Was ich nicht verstehe, ist die Verwendung einer anderen Zielvariablen als 1 oder 0. Die Methode fordert die Erstellung eines neuen "Labels":
Um eine Überanpassung des Sigmoid-Zugsets zu vermeiden, wird ein Modell außerhalb der Stichprobe verwendet. Wenn der Zugsatz positive und N - negative Beispiele enthält, verwendet Platt Calibration für jedes Trainingsbeispiel die Zielwerte y + und y - (anstelle von 1 bzw. 0), wobei y + = N + + 1
Was ich nicht verstehe, ist, wie dieses neue Ziel nützlich ist. Wird logistische Regression die abhängige Variable nicht einfach als binäres Label behandeln (unabhängig davon, welches Label vergeben wird)?
AKTUALISIEREN:
PROC GENMOD
data(ToothGrowth)
attach(ToothGrowth)
# 1/0 coding
dep <- ifelse(supp == "VC", 1, 0)
OneZeroModel <- glm(dep~len, family=binomial)
OneZeroModel
predict(OneZeroModel)
# Platt coding
dep2 <- ifelse(supp == "VC", 31/32, 1/32)
plattCodeModel <- glm(dep2~len, family=binomial)
plattCodeModel
predict(plattCodeModel)
compare <- cbind(predict(OneZeroModel), predict(plattCodeModel))
plot(predict(OneZeroModel), predict(plattCodeModel))