Die Independent Component Analysis (ICA) wird verwendet, um ein lineares Gemisch aus statistisch unabhängigen und vor allem nicht-gaußschen † Komponenten in ihre Bestandteile zu zerlegen. Das Standardmodell für ein rauschfreies ICA ist
x = A s
wobei der Beobachtungs- oder Datenvektor ist, s ein Quellensignal / ursprüngliche Komponenten (nicht-Gauß) ist und A ein Transformationsvektor ist, der die lineare Mischung der konstituierenden Signale definiert. Typischerweise sind A und s unbekannt.xsEINEINs
Vorverarbeitung
Bei der ICA gibt es zwei Hauptstrategien für die Vorverarbeitung: Zentrieren und Bleichen / Sphären. Die Hauptgründe für die Vorverarbeitung sind:
- Vereinfachung von Algorithmen
- Reduzierung der Dimensionalität des Problems
- Reduzierung der Anzahl der zu schätzenden Parameter.
- Hervorhebung von Merkmalen des Datensatzes, die nicht ohne weiteres durch Mittelwert und Kovarianz erklärt werden.
Aus der Einführung von G. Li und J. Zhang, "Sphering und seine Eigenschaften", The Indian Journal of Statistics, Vol. 3, No. 60, Serie A, Teil I, S. 119-133, 1998:
Ausreißer, Cluster oder andere Arten von Gruppen und Konzentrationen in der Nähe von Kurven oder nicht fl achen Oberflächen sind wahrscheinlich die wichtigen Merkmale, die Datenanalysten interessieren. Sie sind im Allgemeinen nicht durch bloße Kenntnis des Stichprobenmittelwerts und der Kovarianzmatrix erhältlich. Unter diesen Umständen ist es wünschenswert, die in der Mittelwert- und der Kovarianzmatrix enthaltenen Informationen voneinander zu trennen und uns zu zwingen, andere Aspekte unserer Datensätze als diese wohlverstandenen zu untersuchen. Das Zentrieren und Sphärieren ist ein einfacher und intuitiver Ansatz, bei dem die Informationen zur mittleren Kovarianz eliminiert werden und Strukturen hervorgehoben werden, die über die lineare Korrelation und die elliptischen Formen hinausgehen. Er wird daher häufig durchgeführt, bevor Anzeigen oder Analysen von Datensätzen untersucht werden
1. Zentrierung:
E { x }xc= x - x¯¯¯x¯¯¯
2. Bleaching:
E { xcxTc} = Ich
Σˆ=C.xcxTc
Cx
xw=Σˆ−1/2xc
I
s = RandomReal[{-1, 1}, {2000, 2}];
A = {{2, 3}, {4, 2}};
x = s.A;
whiteningMatrix = Inverse@CholeskyDecomposition[Transpose@x.x/Length@x];
y = x.whiteningMatrix;
FullGraphics@GraphicsRow[
ListPlot[#, AspectRatio -> 1, Frame -> True] & /@ {s, x, y}]
sA
xw=AwswAw
E{xwxTw}=E{Awsw(Awsw)T}=AwE{swsTw}ATw=AwATw=I
siA
Wenn es nach der Transformation Eigenwerte nahe Null gibt, können diese sicher verworfen werden, da sie nur Rauschen sind und die Schätzung nur aufgrund von "Überlernen" behindern.
3. Andere Vorverarbeitung
Bei bestimmten Anwendungen können andere Vorverarbeitungsschritte erforderlich sein, die in einer Antwort nicht abgedeckt werden können. Ich habe zum Beispiel einige Artikel gesehen, die das Protokoll der Zeitreihe verwenden, und einige andere, die die Zeitreihe filtern. Es ist zwar für die jeweilige Anwendung / die jeweiligen Bedingungen geeignet, die Ergebnisse sind jedoch nicht auf alle Bereiche übertragbar.
† Ich glaube, es ist möglich, ICA zu verwenden, wenn höchstens eine der Komponenten Gauß ist, obwohl ich derzeit keine Referenz dafür finden kann.
Warum heißt es "Sphäring"?
nn{-1,1}
NormalDistribution[]
Die erste ist die Fugendichte für zwei unkorrelierte Gaußsche, die zweite in Transformation und die dritte nach dem Aufhellen. In der Praxis sind nur die Schritte 2 und 3 sichtbar.