Wie wähle ich die beste Metrik aus, um meine Kalibrierung zu messen?


10

Ich programmiere und mache testgetriebene Entwicklung. Nachdem ich meinen Code geändert habe, führe ich meine Tests aus. Manchmal sind sie erfolgreich und manchmal scheitern sie. Bevor ich einen Test durchführe, schreibe ich eine Zahl von 0,01 bis 0,99 auf, um sicherzugehen, dass der Test erfolgreich sein wird.

Ich möchte wissen, ob ich besser vorhersagen kann, ob mein Test erfolgreich ist oder nicht. Es wäre auch schön, wenn ich nachverfolgen könnte, ob ich besser vorhersagen kann, ob der Test montags oder freitags erfolgreich sein wird. Wenn meine Fähigkeit, den Testerfolg vorherzusagen, mit anderen von mir verfolgten Metriken korreliert, möchte ich wissen.

Damit habe ich die Aufgabe, die richtige Metrik auszuwählen. In Superforcasting schlägt Philip Tetlock vor, den Brier-Score zu verwenden, um zu messen, wie gut Experten kalibriert sind. Eine andere in der Literatur vorgeschlagene Metrik ist die logarithmische Bewertungsregel . Es gibt auch andere mögliche Kandidaten.

Wie entscheide ich, welche Metrik verwendet werden soll? Gibt es ein Argument dafür, eine Bewertungsregel gegenüber den anderen zu bevorzugen?


1
Eine potenzielle Quelle für Schwierigkeiten bei der Messung von Änderungen in Ihrer Prognosefähigkeit besteht darin, dass sich die zugrunde liegende Schwierigkeit des Prognoseproblems ändern kann. Änderungen in Ihren Fähigkeiten sind möglicherweise nicht von Änderungen in der Problemschwierigkeit zu unterscheiden.
Matthew Gunn

Antworten:


1

Ich gehe davon aus, dass Sie Unit-Tests für Ihren Code durchführen.

Eine Idee, die mir einfällt und die möglicherweise nicht genau das tut, was Sie wollen, ist die Verwendung eines linearen Modells.

Dies hat den Vorteil, dass Sie eine Reihe anderer Variablen erstellen können, die Sie in die Analyse einbeziehen können.

Yx

Jetzt können Sie einfach das lineare Modell anpassen

yi=a+bxi+ϵ

bb

Das Schöne an diesem Ansatz ist, dass Sie jetzt eine Reihe anderer Variablen hinzufügen können, um festzustellen, ob dadurch ein besseres Modell erstellt wird. Diese Variablen können dabei helfen, bessere Vorhersagen zu treffen. Die Variablen könnten ein Indikator für den Wochentag sein, z. B. für Montag immer 1 und für alle anderen Tage Null. Wenn Sie diese Variable in das Modell aufnehmen, erhalten Sie:

yi=a+aMonday+bxi+ϵ

aMonday

Sie können auch eine neue Variable erstellen, in der Sie eine Punktzahl angeben, um die Schwierigkeit der von Ihnen ausgeführten Aufgabe zu bewerten. Wenn Sie über eine Versionskontrolle verfügen, können Sie beispielsweise die Anzahl der Codezeilen als Schwierigkeit verwenden. Je mehr Code Sie schreiben, desto wahrscheinlicher ist es, dass etwas kaputt geht.

Andere Variablen könnten sein: Anzahl der Kaffeetassen an diesem Tag, Indikator für bevorstehende Fristen, was bedeutet, dass es mehr Stress gibt, Dinge zu erledigen usw.

Sie können auch eine Zeitvariable verwenden, um festzustellen, ob Ihre Vorhersagen besser werden. Außerdem, wie lange Sie für die Aufgabe aufgewendet haben oder wie viele Sitzungen Sie dafür aufgewendet haben, ob Sie eine schnelle Lösung durchgeführt haben und es möglicherweise schlampig ist usw.

Am Ende haben Sie ein Vorhersagemodell, mit dem Sie versuchen können, die Erfolgswahrscheinlichkeit vorherzusagen. Wenn Sie dies schaffen, müssen Sie möglicherweise nicht einmal Ihre eigenen Vorhersagen treffen. Sie können einfach alle Variablen verwenden und eine ziemlich gute Vorstellung davon haben, ob die Dinge funktionieren werden.

Die Sache ist, dass Sie nur eine einzige Nummer wollten. In diesem Fall können Sie das einfache Modell verwenden, das ich am Anfang vorgestellt habe, und nur die Steigung verwenden und die Berechnungen für jede Periode wiederholen. Dann können Sie prüfen, ob sich in dieser Punktzahl im Laufe der Zeit ein Trend befindet.

Hoffe das hilft.


1
bYxabbba

@IWS Vielen Dank für die Eingabe. Ich stimme Ihnen in dem Maße zu, in dem Sie möchten, dass ein einzelner Wert Ihre Leistung abschätzt. Dann ist es eine gute Idee, den Abschnitt wegzulassen. Wenn Sie versuchen möchten, die Daten weiter zu interpretieren (und Sie haben genug davon), ist es möglicherweise eine gute Idee, den Achsenabschnitt hinzuzufügen und die Modelle zu vergleichen.
Gumeo

1

Obwohl dies keine Antwort und eher eine Referenz ist, ist es möglicherweise eine gute Idee, Steyerberg E - Epidemiology 2012 zu überprüfen .

In diesem Artikel erklären Steyerberg und Kollegen verschiedene Möglichkeiten, die Leistung von Vorhersagemodellen für Modelle mit binären Ergebnissen (Erfolg oder Misserfolg) zu überprüfen. Die Kalibrierung ist nur eine dieser Maßnahmen. Je nachdem, ob Sie eine genaue Wahrscheinlichkeit , eine genaue Klassifizierung oder eine genaue Neuklassifizierung wünschen, möchten Sie möglicherweise verschiedene Messgrößen für die Modellleistung verwenden. Obwohl dieses Manuskript Modelle betrifft, die in der biomedizinischen Forschung verwendet werden sollen, denke ich, dass sie auch auf andere Situationen (Ihre) anwendbar sein könnten.

Spezifischer für Ihre Situation sind Kalibrierungsmetriken sehr schwer zu interpretieren, da sie die Kalibrierung über den gesamten Bereich möglicher Vorhersagen zusammenfassen (dh mitteln). Infolgedessen haben Sie möglicherweise eine gute Bewertung für die Kalibrierungszusammenfassung, während Ihre Vorhersagen in einem wichtigen Bereich vorhergesagter Wahrscheinlichkeiten abweichen (z. B. haben Sie möglicherweise eine niedrige (= gute) Brier-Bewertung, während die Vorhersage für Erfolge über oder unter einem bestimmten Wert liegt vorhergesagte Wahrscheinlichkeit) oder umgekehrt (eine schlechte zusammenfassende Bewertung, während Vorhersagen im kritischen Bereich gut kalibriert sind). Ich würde Ihnen daher vorschlagen, darüber nachzudenken, ob in Ihrem Fall ein derart kritischer Bereich der vorhergesagten Erfolgswahrscheinlichkeit besteht. Verwenden Sie in diesem Fall die entsprechenden Maßnahmen (z. B. Umklassifizierungsindizes). Wenn nicht (was bedeutet, dass Sie an einer Gesamtkalibrierung interessiert sind), verwenden Sie brier,

Zusammenfassend lässt sich sagen, dass für jede der zusammenfassenden Kalibrierungsmaßnahmen Ihr erster Schritt erforderlich ist, um Ihre vorhergesagten Wahrscheinlichkeiten gegen die beobachtete Wahrscheinlichkeit zu zeichnen (siehe beispielsweise die Antwort von Outlier). Als nächstes kann das zusammenfassende Maß berechnet werden, aber die Wahl des zusammenfassenden Maßes sollte das Ziel widerspiegeln, den Erfolg eines Versagens überhaupt vorherzusagen.


0

Ich habe ein Vorhersagemodell für spärliche Daten erstellt, und es ist eine große Herausforderung, Ihr Modell in diesen Fällen kalibrieren zu lassen. Ich werde dir sagen, was ich getan habe, du kannst etwas Hilfe davon bekommen.

Ich machte 20 Behälter mit vorhergesagter Wahrscheinlichkeit und versuchte, die durchschnittliche vorhergesagte und tatsächliche Erfolgswahrscheinlichkeit zu zeichnen. Für die durchschnittliche vorhergesagte Wahrscheinlichkeit habe ich den Durchschnitt des Bin-Bereichs genommen. Für die durchschnittliche tatsächliche Wahrscheinlichkeit habe ich die tatsächliche Anzahl von Erfolgen und Fehlern in den Behältern berechnet, aus denen ich die tatsächliche (mittlere) Erfolgswahrscheinlichkeit in den Behältern erhalten habe. Um die Auswirkung von Ausreißern zu verringern, habe ich die oberen und unteren 5% -Daten entfernt, bevor ich die tatsächliche mittlere Wahrscheinlichkeit in jedem Bin ermittelt habe.

Sobald ich diese bekam, konnte ich die Daten leicht zeichnen.


Es wäre gut darauf hinzuweisen, dass dies der erste Schritt bei der Berechnung des Hosmer-Lemeshow-Anpassungstests ist.
Jwimberley
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.