Читать книгу Praxiseinstieg Machine Learning mit Scikit-Learn, Keras und TensorFlow - Aurélien Géron - Страница 172
Formel 5-5: Formulierung quadratischer Programme
ОглавлениеBeachten Sie, dass der Ausdruck A p b genau nc Nebenbedingungen definiert: pT a(i) b(i) mit i = 1, 2, … nc, wobei a(i) ein Vektor mit den Elementen der i. Zeile von A und b(i) das i. Element von b ist.
Sie können leicht nachweisen, dass Sie mit den folgenden QP-Parametern die Zielfunktion für einen linearen Hard-Margin-SVM-Klassifikator erhalten:
np = n + 1, wobei n die Anzahl Merkmale ist (das +1 steht für den Bias-Term).
nc = m, wobei m der Anzahl Trainingsdatenpunkte entspricht.
H ist eine np × np-Identitätsmatrix, außer dass die Zelle in der linken oberen Ecke eine Null enthält (um den Bias-Term zu ignorieren).
f = 0, ein np-dimensionaler Vektor voller Nullen.
b = –1, ein nc-dimensionaler Vektor voll mit –1.
a(i) = –t(i) (i), wobei (i) gleich x(i) mit dem zusätzlichen Bias-Merkmal 0 = 1 ist.
Demnach können Sie einen linearen Hard-Margin-SVM-Klassifikator trainieren, indem Sie einen QP-Solver von der Stange verwenden und ihm die oben angegebenen Parameter übergeben. Der als Ergebnis erhaltene Vektor p enthält den Bias-Term b = p0 und die Gewichte der Merkmale wi = pi mit i = 1, 2, …, n. In ähnlicher Weise können Sie einen QP-Solver einsetzen, um ein Soft-Margin-Problem zu lösen (Übungen dazu finden Sie am Ende dieses Kapitels).
Um jedoch den Kerneltrick zu verwenden, werden wir uns eine andere Art Optimierungsproblem mit Nebenbedingungen ansehen.