• Keine Ergebnisse gefunden

Distance Metric Learning-Verfahren

Im Dokument Benutzergeleitetes Clustering von (Seite 67-70)

6.7 Optimierungsverfahren

6.7.5 Distance Metric Learning-Verfahren

In diesem Abschnitt wollen wir ein weiteres Verfahren zur Optimierung der Gewichte vorstellen. Da durch die Manipulation der Gewichte sich die Distanzen ändern, können wir unsere Ansätze als das Lernen einer constraintkonformen Distanzmetrik verstehen. In [78] wird ein Ansatz präsentiert, der eine Distanzmetrik inRn lernt8. Das Problem wird in ein konvexes Optimierungsproblem (konvexe Programmierung[66]) umgewandelt, so dass wir uns um lokale Optima keine Gedanken machen müs-sen.

Zunächst wird die Distanz neu definiert, um aus diesen Ergebnissen besser die Vorgehensweise ver-anschaulichen zu können. Alle in dieser Arbeit vorgestellten Verfahren lernen eine komplette Metrik d : Rn×Rn :7→ Rim Gegensatz zu anderen Verfahren, wie z.B.Multidimensional Scaling (MDS)

[13], die sich nur auf eine Umgebung der Punkte in dem Trainingsraum konzentrieren.

Die Euklidische Distanz (Kap. 6.3) kann man auch als ein Spezialfall der Mahalonobis-Distanz, an-sehen:

d(x, y) =dA(x, y) =kx−ykA= q

(x−y)TA(x−y) (6.41)

Dabei ist A eine positiv definite Matrix, die unsere Merkmalswerte modifiziert. Wenn man A = I setzt, dann ist es die Euklidische Distanz ohne Gewichte. Wenn wir zusätzlich von der Matrix nur die DiagonaleAii betrachten, sind es genau unsere Gewichte, mit denen wir alle Werte eines Merkmals über alle Musikstücke auf einmal modifizieren.

Es stellt sich die Frage, ob eine komplette (Dreiecks-)Matrix bessere Ergebnisse liefern könnte als nur die Diagonalelemente. Immerhin werden dort Gewichte für alle Merkmale für jedes einzelne Paar von Musikstücken gelernt. Es ist zunächst der ungleich größerer Aufwand, sowohl beim Aufbau und der Verwaltung der Matrix als auch beim Lernen der Gewichte, der uns negativ ins Auge fällt. Ande-rerseits ignoriert die ausschließliche Verwendung von Diagonalelementen einer Matrix die möglichen Korrelationen zwischen den Merkmalen [78]. In [78] wurde aber festgestellt, dass die Ergebnisse einer kompletten Matrix sich trotzdem nicht signifikant von den Ergebnissen mit nur Diagonalelementen un-terscheiden. Hier haben wir einen Beleg dafür, dass unser Ansatz mit der globalen Gewichtung seine Berechtigung hat.

SeiSdie Menge aller Must-Links,Ddie Menge aller Cannot-Links. Um eine erwünschte Metrik zu erhalten ist es am einfachsten, für die Punkte(x1, x2)∈ Seines Must-Links eine kleine quadratische Distanz zu fordern. Das Minimum wird allerdings auch mitA = 0erreicht, was nicht unser Ziel ist, denn dann wären alle Musikstücke einander gleich. Wir müssen also zusätzliche Nebenbedingungen

8Die folgenden Ausführungen basieren hauptsächlich auf [78].

6 Optimierung

einführen, um zu verhindern, dass beim LernenAauf einen einzigen Punkt kollabiert. Diese besagen, dass die Elemente Cannot-Links (x1, x2)∈Deinen Mindestabstand zu einander haben müssen. Ins-gesamt haben wir das folgende Optimierungsproblem zu lösen,qist dabei das Gewicht des jeweiligen Constraint-Paares.

Die Wahl der Konstante 1 ist beliebig, wenn man diese durch eine beliebige Konstantecersetzt, wird Anur durchc2Aausgetauscht. Es ist leicht zu verifizieren, dass beide Bedingungen dieses Problems konvex sind [78].

Unser Ziel ist es die optimale DiagonaleA = diag(A11, A22, . . . , Ann)zu lernen. Dazu definieren wir die folgenden Funktiong(A) :

g(A) =g(A11, . . . , Ann) = X In [78] wird festgestellt, dass die Minimierung vong(A)bzgl.Aº0äquivalent ist mit der Multipli-kation vonAmit einer positiven Konstante, um das Originalproblem (Gleichung 6.42) zu lösen.

Umg(A)effizient zu optimieren verwenden wir dasNewton-RaphsonIterationsverfahren. Dieses ist folgendermaßen definiert:

DEFINITION15:¡Das Newton-Raphson-Verfahren9¢

Seig(x) eine stetige und zweimal differenzierbare Funktion,g0(x)die erste und g00(x)die zweite Ableitung vong(x). Seig00(x)6= 0. x0sei ein beliebiger Startpunkt. Die Iteration

xi+1=xi− g0(xi)

g00(xi) (6.44)

nähert sich einem lokalen Nullpunkt vong0(x),der gleichzeitig ein Extrempunkt (entweder Maximum oder Minimum) vong(x)ist. Diese Vorgehensweise wirdNewton-Raphson-Verfahrengenannt und hat folgende Eigenschaften:

• Das Verfahren konvergiert im Allgemeinen nur bei einem gut gewählten Startpunkt.

• Es hat eine durchschnittliche quadratische Konvergenzgeschwindigkeit. Bei mehreren Nullstel-len konvergiert sie aber entsprechend langsamer.

• Ist konvergent für beliebige Startpunktex0gegen eine eindeutige Lösungsin einem geschlos-senen IntervallI= [a, b],wenn folgende Bedingungen gelten:

1. g0(a)·g0(b)<0 2. g00(x)6= 0, ∀x

3. Entwederg000(x)≤0oderg000(x)≥0, ∀x

4. Seicderjenige Randpunkt des IntervallsI,für den|g00(x)|den kleineren Wert hat, so ist

¯

6.7 Optimierungsverfahren Umg(A)minimieren zu können, müssen wir also zunächst die erste und die zweite Ableitung be-stimmen. Die Ableitung wird für jeweils ein DiagonalelementAiidurchgeführt und diese werden, wie im Folgenden genauer erläutert wird, einzeln optimiert.

Aus der Gleichung 6.41 folgt für ein einzelnesAii: kx−ykAii =p

(xi−yi)2·Aii= (xi−yi)·p

Aii. (6.46)

Und daraus folgt fürg(A) :

g(A) = X Die erste Ableitung vong(Ap)für dasp-te Diagonalelement ist:

g0(Ap) = X Die zweite Ableitung ist dann entsprechend:

g00(Ap) = Bleibt noch zu klären, wie wir aus der Optimierung für die Einzelgewichte (einzelne Diagonalele-mente) die Optimierung für den gesamten Vektor bekommen. Dies erreichen wird dadurch, dass wir die Gewichte zunächst einzeln optimieren, ohne den Gewichtsvektor zu verändern. Erst danach werden alle Gewichte auf einmal aktualisiert und die nächste Newton-Iteration gestartet. Diese Vorgehensweise wird in dem Algorithmus 3 im Detail ausgeführt. Dabei ist²eine Abbruchbedingung, die festlegt, wie nahe|g0(A)|an 0 heranreichen soll. Da es oft sehr schnell möglich ist, einen in der Nähe der Null lie-genden Wert zu erreichen, aber das tatsächliche Erreichen des Nullpunktes noch viele Schritte erfordert, erscheint die Einführung dieser Schranke sinnvoll. Obwohl wir aufgrund unserer Argumentation gute Ergebnisse erwarten können, hinkt dieses Verfahren vor allem an einer zu langsamen Konvergenz, wenn die Anzahl der Merkmale, wie es in unserem System der Fall ist, groß ist [66]

A0ist die Ausgangsgewichtung, in unserem Fall sind alle Gewichte am Anfang auf 1 gesetzt.

Algorithmus 3: Die Newton Methode Require: A0,Precision²

A:=A0,

9Nähere Informationen zu dem Verfahren sind unter anderem in [58] oder unter http://www.uni-ulm.de/~s_rschw3/old/facharb/4.htmzu finden.

6 Optimierung

Im Dokument Benutzergeleitetes Clustering von (Seite 67-70)