Aufbau einer problemspezifischen Verlustfunktion

8

Problembeschreibung

Ich beginne mit dem Aufbau eines Netzwerks für ein Problem, von dem ich glaube, dass es eine weitaus aufschlussreichere Verlustfunktion haben könnte als eine einfache MSE-Regression.

Mein Problem betrifft die Klassifizierung in mehrere Kategorien ( siehe meine Frage zu SO, was ich damit meine), bei der es einen definierten Abstand oder eine definierte Beziehung zwischen Kategorien gibt, die berücksichtigt werden sollte.

Ein weiterer Punkt ist, dass der Fehler nicht durch die Anzahl der vorhandenen Zündkategorien verursacht werden sollte. Dh der Fehler für 5 Zündkategorien, die jeweils um 0,1 abweichen, sollte der gleiche sein wie 1 Zündkategorie, die um 0,1 abweicht. (Mit Schießen meine ich, dass sie nicht Null sind oder über einem bestimmten Schwellenwert liegen)


Wichtige Punkte

  • Klassifizierung in mehrere Kategorien (Mehrfachfeuerung gleichzeitig)
  • Beziehungen zwischen Kategorien
  • Die Anzahl der Schusskategorien sollte keinen Verlust bewirken:
    • Geben Sie hier die Bildbeschreibung ein

Mein Versuch

Der mittlere quadratische Fehler scheint ein guter Anfang zu sein:

Geben Sie hier die Bildbeschreibung ein

Hierbei wird lediglich Kategorie für Kategorie berücksichtigt, was für mein Problem immer noch wertvoll ist, aber einen großen Teil des Bildes übersieht.

Geben Sie hier die Bildbeschreibung ein

Hier ist mein Versuch, die Idee der Entfernung zwischen Kategorien zu korrigieren. Als nächstes möchte ich die Anzahl der Kategorien berücksichtigen, die ausgelöst werden ( nenne es: v )

Geben Sie hier die Bildbeschreibung ein


Meine Frage

Ich habe einen sehr schwachen statistischen Hintergrund. Infolgedessen habe ich nicht viele Werkzeuge in meinem Gürtel, um ein solches Problem anzusprechen. Das Hauptthema meiner Frage scheint zu sein: "Wie kann man bei der Bildung einer Kostenfunktion mehrere Kostenmaße kombinieren? Oder welche Techniken kann man anwenden, um dies zu tun?" . Ich würde es auch begrüßen, wenn Fehler in meinem Denkprozess aufgedeckt und verbessert würden.

Ich schätze es, gelehrt zu werden, warum meine Fehler Fehler sind, anstatt dass jemand sie nur ohne Erklärung korrigiert.

Wenn ein Teil dieser Frage nicht klar genug ist oder verbessert werden könnte, lassen Sie es mich bitte wissen.

Aidan Gomez
quelle
Aidan, es ist gut zu sehen, dass so viel darüber nachgedacht wird, eine problemspezifische Verlustfunktion aufzubauen. Ich würde dies eher als mathematisches Problem als als statistisches Problem betrachten. Sie suchen nach einer Verlustfunktion, die 2x5-Matrizen zu den reellen Zahlen nimmt, und Sie haben einige starke Vorstellungen über bestimmte Invarianten, die diese Funktion erfüllen sollte, wodurch die funktionale Form eingeschränkt wird. Wenn Sie die Bedeutung Ihrer Matrizen erläutern würden, könnte ich Ihnen wahrscheinlich eine spezifischere Anleitung zum Aufbau Ihrer Verlustfunktion geben.
David C. Norris

Antworten:

2

Sie können den Scharnierverlust verwenden, der eine Obergrenze für den Klassifizierungsverlust darstellt. Das heißt, das Modell wird bestraft, wenn sich das Etikett der Kategorie mit der höchsten Punktzahl vom Etikett der Grundwahrheitsklasse unterscheidet.

Weitere Informationen zum Zusammenhang zwischen Klassifizierungsverlust und Scharnierverlust finden Sie in Abschnitt 2 dieses großartigen Artikels von CNJ Yu und T. Joachims.

Δ(yi,y^(xi))y^(xi)xiyiΔ(yi,y^(xi))=1{yiy^(xi)}Δyy^ΔK×KKΔ(a,b)ab

Zum Beispiel: input data:{(x1,y1),(x2,y2),(x3,y3)},xiRd,yiY={c1,c2,c3,c4}network predictions:y^(x1)=c2,y^(x2)=c1,y^(x3)=c3task loss matrix:[Δ(y1,y1)Δ(y1,y2)Δ(y1,y3)Δ(y1,y4)Δ(y2,y1)Δ(y2,y2)Δ(y2,y3)Δ(y2,y4)Δ(y3,y1)Δ(y3,y2)Δ(y3,y3)Δ(y3,y4)Δ(y4,y1)Δ(y4,y2)Δ(y4,y3)Δ(y4,y4)]=[0123101221013210]classification loss assuming y1=c4,y2=c1,y3=c4:Δ(y1,y^(x1))=Δ(c4,c2)=2Δ(y2,y^(x2))=Δ(c1,c1)=0Δ(y3,y^(x3))=Δ(c4,c3)=1

Sobi
quelle
1
Vielen Dank für die Antwort. Ich habe Ihrer Frage ein Beispiel hinzugefügt (befindet sich möglicherweise noch in der Peer-Review, wenn Sie diesen Kommentar sehen). Können Sie bestätigen, dass meine Interpretation korrekt ist?
Aidan Gomez
Ich sehe, dies ist bei einem Problem im Klassifizierungsstil wertvoll, aber bei mir handelt es sich um eine Regression (mit mehrdimensionalen Beschriftungen), bei der mehrere Kategorien gleichzeitig aktiviert sein können. Dies scheint einem Argmax ähnlich zu sein; Für jede Eingabe wird nur die größte Ausgabekategorie berücksichtigt. In meinem Problem könnte man eine Bezeichnung wie {1,0,1,1} haben, wobei die Kategorien 0, 2, 3 alle in den Daten vorhanden sind, die Kategorie 1 jedoch nicht. Wenn mein Netzwerk {0,8, 0, 0,6, 0,3} erraten hat, sollte mein Verlust nicht mit einer Schätzung wie {0,8, 0, 0,7, 0,7} identisch sein.
Aidan Gomez
YKY={0,1}KΔ2K×2K
Das klingt nach dem richtigen Pfad. Können Sie ein einfaches Beispiel liefern, wie wir es für den eindimensionalen Etikettenfall getan haben? Vielleicht für K = 2 oder 3
Aidan Gomez
xy=(0,1,1)y^(x)=(0.1,0.9,0.8)Δ:{0,1}3×[0,1]3RΔ(y,y^)=maxk=1K|y[k]y^[k]|