PCA-Modellauswahl mit AIC (oder BIC)

12

Ich möchte das Akaike Information Criterion (AIC) verwenden, um die entsprechende Anzahl von Faktoren auszuwählen, die in einem PCA extrahiert werden sollen. Das einzige Problem ist, dass ich nicht sicher bin, wie ich die Anzahl der Parameter bestimmen soll.

Man betrachte eine T×N Matrix X , wobei N die Anzahl der Variablen und T die Anzahl der Beobachtungen darstellt, so dass . Da die Kovarianzmatrix symmetrisch ist, könnte eine maximale Wahrscheinlichkeitsschätzung von die Anzahl der Parameter in der AIC auf .N ( N + 1 )XN(0,Σ)ΣN(N+1)2

Alternativ können Sie in einer PCA die ersten Eigenvektoren und Eigenwerte von extrahieren , sie und und dann berechnen. wobei die durchschnittliche Restvarianz ist. Nach meiner Zählung, wenn Sie f Faktoren haben, würden Sie f Parameter in \ Lambda_ {f} , Nf Parameter in \ beta_ {f} und 1 Parameter in \ sigma_ {r} ^ {2} .Σ β f Λ f Σ = β f Λ f β ' f + I σ 2 r σ 2 R f f Λ f N f β f 1 σ 2 RfΣβfΛf

Σ=βfΛfβf+Iσr2
σr2ffΛfNfβf1σr2

Ist dieser Ansatz richtig? Es scheint, als würde dies zu mehr Parametern als dem Maximum-Likelihood-Ansatz führen, wenn die Anzahl der Faktoren auf ansteigt .N

John
quelle
1
Nf überzählt die Parameter: Es besteht Redundanz aufgrund der Tatsache, dass die Eigenvektoren zueinander orthogonal sind.
whuber
10
Der erste Eigenvektor hat freie Parameter. Die Orthogonalitätsbedingung beschränkt den zweiten Eigenvektor auf den zum ersten orthogonalen Hyperraum und benötigt nur Parameter. Jeder nachfolgende Eigenvektor benötigt einen Parameter weniger als der vorherige. An der Grenze von Eigenvektoren Sie verwerfen (weil es jetzt Null), mit = Parameter in toto, in Übereinstimmung mit dem ersten Parameter Anzahl. N - 1 N & sgr; 2 r N + ( N - 1 ) + + 1 N ( N + 1 ) / 2NN1Nσr2N+(N1)++1N(N+1)/2
whuber
1
@ A.Donda Die Situation ist vage: Nehmen wir an, Sie haben auch die Multiplizität jedes Eigenwerts angegeben und diese Multiplizitäten sind summiert zu Wenn PCA eine orthogonale Transformation findet, müssten wir Parameter, um es zu bestimmen. Die Stabilisatoren jedes Eigenraums sind jedoch orthogonale Gruppen in den DimensionenJedes eliminiert dadurch Parameter, wobei Parameter für Rotationen verbleiben . Die Eigenwerte liefern die restlichen Parameter. N . N ( N - 1 ) / 2 n i . n i ( n i - 1 ) / 2 N ( N - 1 ) / 2n1,n2,,ns,N.N(N1)/2ni.ni(ni1)/2
N(N1)/2i=1sni(ni1)/2
s
whuber
1
(Ich sollte hinzufügen, dass die Anwendung dieser Zählung auf die Frage zweifelhaft ist: Die PCA verwendet alle Parameter, auch wenn es passieren könnte, dass sie einige Eigenwerte mit höherer Multiplizität findet. Und in fast jedem realen Datensatz es wird sowieso niemals eine Multiplizität größer als 1 erhalten .)N(N1)/21
whuber
1
@whuber, danke! Meine Frage ist durch eine Situation motiviert, in der ich eine Kovarianzmatrix unter Einschränkung der Eigenwerte schätze.
A. Donda

Antworten:

5

Die Arbeiten von Minka ( Automatische Wahl der Dimensionalität für PCA , 2000) und von Tipping & Bishop ( Probabilistische Hauptkomponentenanalyse ) in Bezug auf eine probabilistische Sicht auf PCA könnten Ihnen den Rahmen bieten, an dem Sie interessiert sind. Wahrscheinlichkeit wobei k die latente Dimensionalität Ihres Datensatzes D unter Verwendung einer Laplace-Näherung ist; wie explizit angegeben: "Eine Vereinfachung der Laplace-Methode ist die BIC-Approximation."logp(D|k)kD

Dies ist eindeutig eine Bayes'sche Sichtweise Ihres Problems, die nicht auf den von AIC verwendeten informationstheoretischen Kriterien (KL-Divergenz) basiert.

Bezüglich der ursprünglichen Frage "Bestimmung der Parameternummer" denke ich auch, dass @ whubers Kommentar die richtige Intuition enthält.

usεr11852 sagt Reinstate Monic
quelle
Ich habe mit AIC gegen AICc auf zufälligen Matrizen unterschiedlicher Größe herumgespielt. AICc schien besser zu funktionieren. Diese Referenzen sehen gut aus, aber ich hatte noch keine Chance zu verdauen.
John
6

Die Auswahl einer "geeigneten" Anzahl von Komponenten in PCA kann elegant mit Horn's Parallel Analysis (PA) durchgeführt werden. Aufsätze zeigen, dass dieses Kriterium Faustregeln wie das Ellbogen-Kriterium oder die Kaiser-Regel durchweg übertrifft. Das R-Paket "paran" enthält eine PA-Implementierung, die nur ein paar Mausklicks erfordert.

Wie viele Komponenten Sie behalten, hängt natürlich von den Zielen der Datenreduktion ab. Wenn Sie nur eine Varianz beibehalten möchten, die "sinnvoll" ist, wird PA eine optimale Reduzierung bieten. Wenn Sie den Informationsverlust der Originaldaten minimieren möchten, sollten Sie jedoch genügend Komponenten aufbewahren, um 95% der erklärten Varianz abzudecken. Dadurch bleiben offensichtlich viel mehr Komponenten als bei PA erhalten, obwohl bei hochdimensionalen Datensätzen die Reduzierung der Dimensionalität immer noch erheblich sein wird.

Ein letzter Hinweis zu PCA als "Modellauswahl" -Problem. Ich bin mit Peters Antwort nicht ganz einverstanden. Es gab eine Reihe von Veröffentlichungen, in denen PCA als regressionsbedingtes Problem umformuliert wurde, z. B. Sparse PCA, Sparse Probabilistic PCA oder ScotLASS. In diesen "modellbasierten" PCA-Lösungen sind Ladungen Parameter, die mit geeigneten Strafen auf 0 gesetzt werden können. Vermutlich wäre es in diesem Zusammenhang auch möglich, AIC- oder BIC-Typ-Statistiken für das betrachtete Modell zu berechnen.

Dieser Ansatz könnte theoretisch ein Modell umfassen, bei dem beispielsweise zwei PCs uneingeschränkt sind (alle Ladevorgänge ungleich Null), gegenüber einem Modell, bei dem PC1 uneingeschränkt ist und bei dem PC2 alle Ladevorgänge auf 0 gesetzt sind. Dies wäre gleichbedeutend mit der Schlussfolgerung, ob PC2 redundant ist im Großen und Ganzen.

Referenzen (PA) :

  • Dinno, A. (2012). paran: Hupentest der Hauptkomponenten / -faktoren. R-Paket Version 1.5.1. http://CRAN.R-project.org/package=paran
  • Horn JL 1965. Eine Begründung und ein Test für die Anzahl der Faktoren bei der Faktorenanalyse. Psychometrika . 30: 179–185
  • Hubbard, R. & Allen SJ (1987). Ein empirischer Vergleich alternativer Methoden zur Hauptkomponentenextraktion. Journal of Business Research, 15 , 173-190.
  • Zwick, WR & Velicer, WF 1986. Vergleich von fünf Regeln zur Bestimmung der Anzahl der zu speichernden Komponenten. Psychologisches Bulletin. 99 : 432–442
Ben M.
quelle
Willkommen auf der Site @BenM. Nach Ihrer Antwort wird es schön sein, Sie bei sich zu haben (obwohl ich nicht genug über PCA über die Grundlagen hinaus weiß, um Ihre Behauptungen zu bewerten). Eine Frage: Sie stellen fest, dass diese Positionen gut etabliert sind. Können Sie einige repräsentative Veröffentlichungen auflisten, in denen der interessierte Leser mehr Details finden könnte?
gung - Reinstate Monica
-1

AIC ist für die Modellauswahl ausgelegt. Dies ist kein wirkliches Modellauswahlproblem, und vielleicht ist es besser, wenn Sie einen anderen Ansatz wählen. Eine Alternative könnte darin bestehen, einen bestimmten Prozentsatz der erklärten Abweichung anzugeben (z. B. 75%) und zu stoppen, wenn der Prozentsatz 75% erreicht, falls dies jemals der Fall ist.

Michael R. Chernick
quelle
1
Ich wähle zwischen verschiedenen Modellen basierend auf der Anzahl der Faktoren (das Modell mit 1 Faktor im Vergleich zum Modell mit 2 usw.). Das Problem mit dem Prozentsatz der Varianz besteht hauptsächlich darin, dass die Kosten für die Schätzung zusätzlicher Eigenvektoren ignoriert werden, insbesondere wenn die Anzahl der Beobachtungen geringer ist als die Anzahl der Variablen. AIC passt gut zu einem probabilistischen PCA-Ansatz.
John
3
Michael, kannst du genau erklären, warum dies kein Modellauswahlproblem ist? Es sieht so aus, als hätte John es klar als eins formuliert.
Whuber
@whuber Was ist das statistische Modell? Es scheint mir, dass die Entscheidung über die Anzahl der Hauptkomponenten, die zur Darstellung des x% der Varianz in einer Variablen Y verwendet werden, kein Modell auswählt. Ich würde mir die Hauptkomponenten auch nicht als Modellparameter vorstellen.
Michael R. Chernick
2
XiN(0,Σ)Σσi2ρ|ρ|=1θλ1λ2λ2=0. Beide Perspektiven testen auf perfekte Korrelation (Kollinearität); Sie verwenden nur verschiedene Parametrisierungen. Wenn Sie das erste als Modell zulassen , müssen Sie das zweite zulassen.
whuber
-2

AIC ist hier nicht angebracht. Sie wählen nicht zwischen Modellen mit einer unterschiedlichen Anzahl von Parametern aus - eine Hauptkomponente ist kein Parameter.

Es gibt eine Reihe von Methoden, um die Anzahl der Faktoren oder Komponenten aus einer Faktorenanalyse oder Hauptkomponentenanalyse zu bestimmen - Gerölltest, Eigenwert> 1 usw. Der eigentliche Test ist jedoch von wesentlicher Bedeutung: Welche Anzahl von Faktoren ist sinnvoll ? Betrachten Sie die Faktoren, berücksichtigen Sie die Gewichte und finden Sie heraus, welche für Ihre Daten am besten geeignet sind.

Wie andere Dinge in der Statistik ist dies nicht einfach zu automatisieren.

Peter Flom - Wiedereinsetzung von Monica
quelle
4
ΣΣ
1
@whuber Ein Parameter einer Kovarianzmatrix ist möglicherweise aber kein Modellparameter. Ich stehe mit Peter auf dieser Seite.
Michael R. Chernick
3
Peter, genau welchen Unterschied machst du zwischen einem "Modellparameter" und einem "Parameter"? Ich weiß nichts davon und würde es begrüßen, etwas darüber zu erfahren. Wenn es Ihr Ziel ist, eine sparsame Beschreibung der multivariaten Kovarianzen zu finden, stellen sie dann keine "Modell" -Parameter dar?
Whuber
3
nmn
1
Danke für die Information. Zeitreihen sind ein Bereich der Statistik, über den ich wenig weiß.
Peter Flom - Reinstate Monica