Ich möchte einen Algorithmus in einem Artikel implementieren, der Kernel-SVD zum Zerlegen einer Datenmatrix verwendet. Ich habe also Materialien über Kernelmethoden und Kernel-PCA usw. gelesen. Aber es ist für mich immer noch sehr dunkel, besonders wenn es um mathematische Details geht, und ich habe ein paar Fragen.
Warum Kernelmethoden? Oder was sind die Vorteile von Kernelmethoden? Was ist der intuitive Zweck?
Geht man davon aus, dass ein viel größerer dimensionaler Raum in realen Problemen realistischer ist und die nichtlinearen Beziehungen in den Daten im Vergleich zu Nicht-Kernel-Methoden aufdecken kann? Den Materialien zufolge projizieren Kernel-Methoden die Daten auf einen hochdimensionalen Merkmalsraum, müssen den neuen Merkmalsraum jedoch nicht explizit berechnen. Stattdessen ist es ausreichend, nur die inneren Produkte zwischen den Bildern aller Datenpunktpaare im Merkmalsraum zu berechnen. Warum also auf einen höherdimensionalen Raum projizieren?
Im Gegenteil, SVD reduziert den Merkmalsraum. Warum machen sie das in verschiedene Richtungen? Kernel-Methoden suchen nach einer höheren Dimension, während SVD nach einer niedrigeren Dimension sucht. Für mich klingt es komisch, sie zu kombinieren. Laut dem Artikel , den ich lese ( Symeonidis et al. 2010 ), kann die Einführung von Kernel-SVD anstelle von SVD das Problem der Datensparsamkeit lösen und die Ergebnisse verbessern.
Aus dem Vergleich in der Abbildung können wir sehen, dass KPCA einen Eigenvektor mit einer höheren Varianz (Eigenwert) als PCA erhält, nehme ich an? Da KPCA für die größte Differenz der Projektionen der Punkte auf den Eigenvektor (neue Koordinaten) ein Kreis und PCA eine gerade Linie ist, erhält KPCA eine höhere Varianz als PCA. Bedeutet dies, dass KPCA höhere Hauptkomponenten als PCA erhält?