Überblick über PPCA, eine Erweiterung der klassischen PCA, und ihre Anwendung auf unvollständige Daten über den EM-Algorithmus

Foto von Dhruv Weaver An Unsplash. Wenn sich die E- und M-Schritte des EM-Algorithmus wiederholen, konvergiert der Algorithmus zu den lokalen Most-Probability-Schätzern.

Die probabilistische Hauptkomponentenanalyse (PPCA) ist eine Technik zur Dimensionsreduzierung, die ein latentes Variablen-Framework nutzt, um die Richtungen der maximalen Varianz in den Daten wiederherzustellen. Wenn das Rauschen einer isotropen Gauß-Verteilung folgt, sind die probabilistischen Hauptkomponenten eng mit den klassischen Hauptkomponenten verwandt und bis auf einen Skalierungsfaktor und eine orthogonale Rotation identisch. PPCA kann daher für viele der gleichen Anwendungen wie klassische PCA verwendet werden, z. B. Datenvisualisierung und Merkmalsextraktion. Das latente Variablen-Framework hinter PPCA bietet auch Funktionen, die klassische PCA nicht bietet. Beispielsweise kann PPCA leicht erweitert werden, um Daten mit fehlenden Werten zu berücksichtigen, während klassische PCA bei unvollständigen Daten undefiniert ist.

PPCA kann mit einer Reihe unterschiedlicher Methoden implementiert werden. Tipping und Bishop haben in ihrem ursprünglichen Artikel von 1999 eine Implementierung von PPCA über den EM-Algorithmus bereitgestellt. Sie haben jedoch nicht explizit gezeigt, wie sich der EM-Algorithmus für PPCA auf unvollständige Daten ausdehnt. Ein früherer Artikel auf In direction of Knowledge Science wurde ein alternativer Ansatz zu PPCA diskutiert, der anstelle des EM-Algorithmus die Variationsinferenz verwendet, um fehlende Werte zu imputieren und die probabilistischen Hauptkomponenten abzuleiten. Dieser Ansatz geht von der vereinfachenden Annahme aus, dass die Standardabweichung des Rauschens im Voraus bekannt ist, eine Annahme, die es einfacher macht, die Variationsverteilung zu optimieren, die jedoch für die meisten Anwendungen nicht repräsentativ ist. In diesem Beitrag werde ich mich auf den EM-Algorithmus konzentrieren und auf früheren Diskussionen aufbauen, indem ich alle Schritte illustriere, die erforderlich sind, um den EM-Algorithmus von Tipping und Bishop für PPCA auf unvollständige Daten auszuweiten.

Überblick über PPCA und seine Beziehung zur klassischen PCA:

Die klassische PCA ist eine deterministische Methode, die die Daten nicht in Kind unterschiedlicher Sign- und Rauschkomponenten modelliert. Im Gegensatz dazu basiert die PPCA auf einem probabilistischen Modell der Kind

wobei z_i ein Vektor von q unbeobachteten latenten Variablen ist, W eine Ladematrix ist, die die q latenten Variablen den p beobachteten Variablen zuordnet, und epsilon_i ein Rauschterm ist, der das Verfahren eher probabilistisch als deterministisch macht. Normalerweise wird angenommen, dass z_i einer Standardnormalverteilung folgt. Der Rauschterm epsilon_i muss einer isotropen Gauß-Verteilung mit Mittelwert Null und einer Kovarianzmatrix der Kind Sigma ^2 I folgen, damit die Beziehung zwischen PPCA und klassischer PCA gilt.

Tipping und Bishop (1999) haben gezeigt, dass mit diesem latenten Variablenmodell die Richtungen der maximalen Varianz in den Daten durch eine Most-Probability-Schätzung wiederhergestellt werden können. Sie beweisen, dass die MLEs für W und Sigma gegeben sind durch

Dabei ist U_q die Matrix, deren Spalten die q Haupteigenvektoren der Stichproben-Kovarianzmatrix sind, Lambda_q ist eine Diagonalmatrix der Eigenwerte, die den q Haupteigenvektoren entsprechen, und R ist eine beliebige orthogonale Rotationsmatrix. Beachten Sie, dass die klassischen Hauptkomponenten durch die Matrix U_q gegeben sind. Aufgrund der anderen Terme im Ausdruck für W_MLE können die probabilistischen Hauptkomponenten andere Skalierungen und andere Ausrichtungen aufweisen als die klassischen Komponenten, aber beide Komponentensätze umfassen denselben Unterraum und können für die meisten Anwendungen, die eine Dimensionsreduzierung erfordern, austauschbar verwendet werden.

In der Praxis kann die Identitätsmatrix die beliebige orthogonale Matrix R ersetzen, um W_MLE zu berechnen. Die Verwendung der Identitätsmatrix reduziert nicht nur die Rechenkomplexität, sondern stellt auch sicher, dass eine perfekte Korrelation oder Antikorrelation zwischen den probabilistischen Hauptkomponenten und ihren klassischen Gegenstücken besteht. Diese Ausdrücke in geschlossener Kind sind für vollständige Daten sehr praktisch, können jedoch nicht direkt auf unvollständige Daten angewendet werden. Eine different Possibility zum Berechnen von W_MLE, die leicht erweitert werden kann, um unvollständige Daten zu berücksichtigen, besteht darin, den EM-Algorithmus zu verwenden, um iterativ zu den Most-Probability-Schätzern zu gelangen. In diesem Fall ist R bei der Konvergenz beliebig. Ich werde den EM-Algorithmus unten kurz besprechen, bevor ich zeige, wie er verwendet werden kann, um PPCA auf unvollständige Daten anzuwenden.

EM-Algorithmus für PPCA mit fehlenden Daten:

Der EM-Algorithmus ist eine iterative Optimierungsmethode, die abwechselnd die latenten Variablen schätzt und die Parameter aktualisiert. Zu Beginn des EM-Algorithmus müssen für alle Parameter Anfangswerte angegeben werden. Im E-Schritt wird der erwartete Wert der Log-Probability in Bezug auf die aktuellen Parameterschätzungen berechnet. Die Parameterschätzungen werden dann neu berechnet, um die erwartete Log-Probability-Funktion im M-Schritt zu maximieren. Dieser Vorgang wird wiederholt, bis die Änderung der Parameterschätzungen gering ist und der Algorithmus somit konvergiert ist.

Bevor ich zeige, wie sich der EM-Algorithmus für PPCA auf unvollständige Daten ausdehnt, werde ich zunächst einige Notationen einführen. Angenommen, wir beobachten D verschiedene Kombinationen von beobachteten und unbeobachteten Prädiktoren in den Daten. Die Menge der D Kombinationen enthält das Muster, in dem alle Prädiktoren beobachtet werden, vorausgesetzt, die Daten enthalten mindestens einige vollständige Beobachtungen. Für jede einzelne Kombination d=1,…,D bezeichnen x_1,…,x_n_d die Menge der Beobachtungen, die das d-te Muster fehlender Prädiktoren teilen. Jeder Datenpunkt in dieser Menge kann wie folgt zerlegt werden:

wobei die Indizes obs_d und mis_d angeben, welche Prädiktoren in der d-ten Kombination beobachtet und unbeobachtet sind.

Eine Erweiterung des EM-Algorithmus für PPCA zur Behandlung fehlender Werte. Bild vom Autor.

Der Algorithmus im obigen Bild zeigt alle Schritte, die erforderlich sind, um PPCA auf unvollständige Daten anzuwenden, wobei ich meine Notation für beobachtete und unbeobachtete Werte verwende. Um die Parameter für den EM-Algorithmus zu initialisieren, imputiere ich alle fehlenden Werte mit den Prädiktormittelwerten und verwende dann die geschlossenen Schätzer von Tipping und Bishop (1999). Die mittelwertimputierten Schätzungen können verzerrt sein, bieten jedoch einen optimaleren Ausgangspunkt als eine zufällige Initialisierung und verringern die Wahrscheinlichkeit, dass der Algorithmus zu einem lokalen Minimal konvergiert. Beachten Sie, dass die imputierten Daten nach der Initialisierung nicht mehr verwendet werden.

Im E-Schritt berechne ich zunächst die Erwartung jedes z_i in Bezug auf die beobachteten Werte und die aktuellen Parameterschätzungen. Dann behandle ich die fehlenden Werte als zusätzliche latente Variablen und berechne ihre Erwartung in Bezug auf die aktuellen Parameter und z_i. Im M-Schritt aktualisiere ich die Schätzungen für W, mu und sigma basierend auf der erwarteten Log-Probability, die im E-Schritt berechnet wurde. Dies unterscheidet sich vom EM-Algorithmus von Tipping und Bishop für vollständige Daten, bei dem mu basierend auf dem Stichprobenmittelwert geschätzt wird und nur W und sigma im EM-Algorithmus iterativ aktualisiert werden. Es ist nicht notwendig, mu iterativ zu schätzen, wenn X vollständig ist oder wenn die unbeobachteten Werte zufällig vollständig fehlen, da der Stichprobenmittelwert die MLE ist. Bei anderen Mustern fehlender Werte ist der Mittelwert der beobachteten Werte jedoch im Allgemeinen nicht die MLE, und der EM-Algorithmus liefert genauere Schätzungen von mu, indem er die wahrscheinlichen Werte der fehlenden Datenpunkte berücksichtigt. Daher habe ich das Replace für mu zusammen mit den anderen Parameteraktualisierungen in den M-Schritt aufgenommen.

Python-Implementierung:

Ich habe eine Implementierung des EM-Algorithmus für PPCA bereitgestellt Hierindem Sie die Schritte des obigen Algorithmus befolgen, um fehlende Daten zu berücksichtigen. Meine Funktion erfordert, dass der Benutzer die Datenmatrix und die Anzahl der Komponenten in PPCA angibt (d. h. q, die Dimension der latenten Variablen). Gängige Techniken zum Auswählen der Anzahl der Komponenten in klassischer PCA können auch auf PPCA angewendet werden, wenn die Dimension der latenten Variablen nicht bekannt ist. Eine Möglichkeit zum Auswählen von q wäre beispielsweise, ein Scree-Plot zu erstellen und die sogenannte „Ellenbogenmethode“ anzuwenden. Alternativ könnte q durch Kreuzvalidierung ausgewählt werden.

Ich werde nun drei verschiedene Simulationen in Betracht ziehen, um meine Implementierung des EM-Algorithmus für PPCA zu testen: eine ohne fehlende Werte, eine mit fehlenden Werten, die völlig zufällig ausgewählt wurden, und eine mit fehlenden Werten, die nicht zufällig ausgewählt wurden. Um Daten zu simulieren, die völlig zufällig fehlen, gehe ich davon aus, dass jeder der nxp-Werte eine gleiche 10-prozentige Likelihood hat, unbeobachtet zu sein. Um Daten zu simulieren, die nicht zufällig fehlen, gehe ich unterdessen davon aus, dass Datenpunkte mit einem höheren Z-Rating eine größere Likelihood haben, unbeobachtet zu sein, wobei insgesamt ein erwarteter Anteil von 10 % fehlt.

Ich verwende für alle Simulationen dieselben synthetischen Daten und ändere lediglich das Muster der fehlenden Daten, um die Leistung bei unvollständigen Daten zu bewerten. Um die Daten zu generieren, lasse ich n = 500, p = 30 und q = 3. Ich wähle sowohl W als auch mu aus einer Uniform(-1, 1)-Verteilung. Dann ziehe ich die latenten Variablen z_i, i = 1, …, n aus einer Standardnormalverteilung und die Rauschterme epsilon_i, i = 1, …, n, aus einer isotropen Gauß-Verteilung mit sigma = 0,7. Ich gehe davon aus, dass q in allen Simulationen korrekt angegeben ist. Weitere Einzelheiten finden Sie im Simulationscode Hier.

Um die Genauigkeit des EM-Algorithmus zu bewerten, berichte ich über den relativen Fehler der Parameterschätzungen. Der relative Fehler für mu wird in Bezug auf die l2-Norm und der relative Fehler für W in Bezug auf die Frobenius-Norm berichtet. Da W nur ​​bis zu einer orthogonalen Rotation wiederhergestellt werden kann, habe ich die orthogonale Prosecutes-Funktion von NumPy verwendet, um die geschätzte Matrix W in Richtung des wahren W zu drehen, bevor ich den relativen Fehler berechnet habe.

Relativer Fehler der Parameter in drei verschiedenen Simulationen. Bild vom Autor.

Meine Ergebnisse bestätigen, dass der EM-Algorithmus die Parameter in allen drei dieser Setups genau schätzen kann. Es ist nicht überraschend, dass der EM-Algorithmus in der vollständigen Datensimulation intestine abschneidet, da die Initialisierung bereits optimum sein sollte. Bemerkenswerter ist jedoch, dass die Genauigkeit hoch bleibt, wenn fehlende Werte eingeführt werden. Die Parameterschätzungen zeigen sogar einen relativ hohen Grad an Robustheit gegenüber nicht zufälligen Mustern fehlender Werte, zumindest unter dem für diese Simulation angenommenen Setup. Bei realen Datensätzen hängt die Leistung des EM-Algorithmus von einer Reihe verschiedener Faktoren ab, darunter der Genauigkeit der Initialisierung, dem Muster fehlender Werte, dem Sign-Rausch-Verhältnis und der Stichprobengröße.

Abschluss:

Die probabilistische Hauptkomponentenanalyse (PPCA) kann weitgehend die gleiche Struktur wie die klassische PCA wiederherstellen und gleichzeitig ihre Funktionalität erweitern, indem sie beispielsweise die Berücksichtigung von Daten mit fehlenden Werten ermöglicht. In diesem Artikel habe ich PPCA vorgestellt, die Beziehung zwischen PPCA und klassischer PCA untersucht und gezeigt, wie der EM-Algorithmus für PPCA erweitert werden kann, um fehlende Werte zu berücksichtigen. Meine Simulationen zeigen, dass der EM-Algorithmus für PPCA genaue Parameterschätzungen liefert, wenn Werte fehlen, und sogar eine gewisse Robustheit zeigt, wenn Werte nicht zufällig fehlen.

Verweise:

M. Tipping, C. Bishop, Probabilistische Hauptkomponentenanalyse (1999). Journal der Royal Statistical Society, Reihe B: Statistische Methodik.

Von admin

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert