Ich verstehe (meistens), wie die unabhängige Komponentenanalyse (ICA) mit einer Reihe von Signalen aus einer Population funktioniert, aber ich kann sie nicht zum Funktionieren bringen, wenn meine Beobachtungen (X-Matrix) Signale aus zwei verschiedenen Populationen (mit unterschiedlichen Mitteln) und mir enthalten Ich frage mich, ob es eine inhärente Einschränkung von ICA ist oder ob ich dies beheben kann. Meine Signale unterscheiden sich von dem üblichen Typ, der analysiert wird, darin, dass meine Quellvektoren sehr kurz sind (z. B. 3 Werte lang), aber ich habe viele (z. B. 1000) Beobachtungen. Insbesondere messe ich die Fluoreszenz in 3 Farben, wobei die breiten Fluoreszenzsignale in andere Detektoren "überlaufen" können. Ich habe 3 Detektoren und benutze 3 verschiedene Fluorophore auf Partikeln. Man könnte sich dies als eine Spektroskopie mit sehr schlechter Auflösung vorstellen. Jedes fluoreszierende Teilchen kann eine beliebige Menge eines der 3 verschiedenen Fluorophore aufweisen. Ich habe jedoch einen gemischten Satz von Partikeln, die dazu neigen, ziemlich unterschiedliche Konzentrationen an Fluorophoren zu haben. Zum Beispiel kann ein Satz im Allgemeinen viel Fluorophor Nr. 1 und wenig Fluorophor Nr. 2 enthalten, während der andere Satz wenig Nr. 1 und viel Nr. 2 enthält.
Grundsätzlich möchte ich den Spillover-Effekt auflösen, um die tatsächliche Menge jedes Fluorophors auf jedem Partikel abzuschätzen, anstatt einen Bruchteil des Signals von einem Fluorophor zum Signal eines anderen zu addieren. Es schien, als wäre dies für ICA möglich, aber nach einigen signifikanten Fehlern (die Matrixtransformation scheint die Trennung der Populationen zu priorisieren, anstatt sich zu drehen, um die Signalunabhängigkeit zu optimieren) frage ich mich, ob ICA nicht die richtige Lösung ist oder ob ich muss Verarbeiten Sie meine Daten auf andere Weise vor, um dies zu beheben.
Die Grafiken zeigen meine synthetischen Daten, die zur Demonstration des Problems verwendet wurden. Ausgehend von "wahren" Quellen (Tafel A), die aus einer Mischung von 2 Populationen bestehen, habe ich eine "wahre" Mischungsmatrix (A) erstellt und die Beobachtungsmatrix (X) berechnet (Tafel B). FastICA schätzt die S-Matrix (siehe Tafel C) und anstatt meine wahren Quellen zu finden, scheint es mir, dass es die Daten dreht, um die Kovarianz zwischen den beiden Populationen zu minimieren.
Suchen Sie nach Anregungen oder Einsichten.