Ich lerne gerade über Kleinste-Quadrate- Schätzungen (und andere) für die Regression und nach dem, was ich auch in einigen Literaturen zu adaptiven Algorithmen lese, erscheint oftmals der Satz "... und da die Fehlerfläche konvex ist ..." und Jede Tiefe, warum es von Anfang an konvex ist, ist nicht zu finden.
... Was genau macht es konvex ?
Ich finde diese wiederholte Auslassung ein wenig ärgerlich, weil ich meine eigenen adaptiven Algorithmen mit meinen eigenen Kostenfunktionen entwerfen möchte, aber wenn ich nicht sagen kann, ob meine Kostenfunktion eine konvexe Fehlerfläche ergibt oder nicht, kann ich das nicht zu weit kommen, wenn man so etwas wie Gefälle anwendet, weil es kein globales Minimum gibt. Vielleicht möchte ich kreativ werden - vielleicht möchte ich zum Beispiel keine Fehlerquadrate als mein Fehlerkriterium verwenden.
Beim tieferen Graben (und meine Fragen beginnen hier) stellte ich fest, dass Sie, um feststellen zu können, ob Sie eine konvexe Fehlerfläche haben, sicherstellen müssen, dass Ihre hessische Matrix positiv semidefinit ist. Für symmetrische Matrizen ist dieser Test einfach - stellen Sie einfach sicher, dass alle Eigenwerte der Hessischen Matrix nicht negativ sind. (Wenn Ihre Matrix nicht symmetrisch ist, können Sie sie symmetrisch machen, indem Sie sie zu ihrer eigenen Transponierung hinzufügen und den gleichen Eigenwerttest durchführen, kraft des Gramian , aber das ist hier nicht wichtig.)
Was ist eine hessische Matrix? Die hessische Matrix kodiert alle möglichen Kombinationen der Teilwerte Ihrer Kostenfunktion. Wie viele Partials gibt es? So viele wie die Anzahl der Features in Ihrem Feature-Vektor. Wie werden die Teiltöne berechnet? Nehmen Sie die partiellen Ableitungen 'von Hand' aus der ursprünglichen Kostenfunktion.
Genau das habe ich getan: Ich gehe davon aus, dass wir eine x Datenmatrix haben, die durch die Matrix , wobei die Anzahl der Beispiele und die Anzahl der Merkmale pro Beispiel bezeichnet. (Dies ist auch die Anzahl der Teiltöne). Ich nehme an, wir können sagen, dass wir Zeitabtastungen und räumliche Abtastungen von Sensoren haben, aber die physikalische Anwendung ist hier nicht allzu wichtig.n x m n m n
Weiterhin haben wir auch einen Vektor der Größe x . (Dies ist Ihr 'Label'-Vektor oder Ihre' Antwort ', die jeder Zeile von ) Der Einfachheit halber habe ich für dieses Beispiel angenommen . Also 2 "Beispiele" und 2 "Features".m 1 X m = n = 2
Nehmen wir nun an, Sie möchten hier die 'Linie' oder das Polynom der besten Anpassung ermitteln. Das heißt, Sie projizieren Ihre Eingabedaten-Features gegen Ihren Polynomkoeffizientenvektor , sodass Ihre Kostenfunktion wie folgt lautet:
Nehmen wir nun die erste partielle Ableitung von (Merkmal 0). Also:
Berechnen wir nun alle zweiten Teiltöne.
Wir wissen, dass der Hessische nichts anderes ist als:
Nun, je nachdem , wie ich die Datenmatrix aufgebaut haben , (meine ‚Features‘ gehen durch Spalten und meine Beispiele gehen von Zeilen), die Hessische scheint zu sein:
... das ist nichts anderes als die Sample-Kovarianz-Matrix !
Ich bin mir also nicht ganz sicher, wie ich das interpretieren soll - oder ich sollte sagen, ich bin mir nicht ganz sicher, wie verallgemeinernd ich hier sein soll. Aber ich denke, ich kann das sagen:
Immer wahr:
- Die Hessische Matrix kontrolliert immer, ob Ihre Fehler- / Kostenfläche konvex ist oder nicht.
- Wenn Sie eine Hessische Matrix haben, die halbwegs defekt ist, sind Sie konvex (und können gerne Algorithmen wie den Gradientenabstieg verwenden, um zur optimalen Lösung zu konvergieren).
True nur für LSE:
- Die hessische Matrix für das LSE-Kostenkriterium ist nichts anderes als die ursprüngliche Kovarianzmatrix. (!).
- Für mich bedeutet dies, dass bei Verwendung des LSE-Kriteriums die Daten selbst bestimmen, ob ich eine konvexe Oberfläche habe oder nicht. ... Was würde dann bedeuten, dass die Eigenvektoren meiner Kovarianzmatrix irgendwie die Fähigkeit haben, die Kostenfläche zu "formen"? Stimmt das immer? Oder hat es nur für die LSE-Kriterien geklappt? Es stimmt einfach nicht mit mir, dass die Konvexität einer Fehleroberfläche von den Daten abhängen sollte.
Wenn Sie es also wieder in den Kontext der ursprünglichen Frage stellen, wie kann man feststellen, ob eine Fehlerhäufigkeit (basierend auf einer von Ihnen ausgewählten Kostenfunktion) konvex ist oder nicht? Basiert diese Bestimmung auf den Daten oder dem Hessischen?
Vielen Dank
TLDR: Wie genau und praktisch stelle ich fest, ob meine Kostenfunktion und / oder mein Datensatz eine konvexe oder eine nichtkonvexe Fehlerfläche ergeben?