Je comprends (principalement) comment l'analyse indépendante des composants (ICA) fonctionne sur un ensemble de signaux provenant d'une population, mais je n'arrive pas à le faire fonctionner si mes observations (matrice X) incluent des signaux de deux populations différentes (ayant des moyens différents) et je Je me demande si c'est une limitation inhérente à l'ICA ou si je peux résoudre ce problème. Mes signaux sont différents du type courant analysé en ce que mes vecteurs sources sont très courts (par exemple 3 valeurs de long), mais j'ai beaucoup (par exemple 1000) d'observations. Plus précisément, je mesure la fluorescence en 3 couleurs où les signaux de fluorescence larges peuvent «déborder» dans d'autres détecteurs. J'ai 3 détecteurs et j'utilise 3 fluorophores différents sur les particules. On pourrait penser à cela comme une spectroscopie de très mauvaise résolution. Toute particule fluorescente pourrait avoir une quantité arbitraire de l'un des 3 fluorophors différents. Cependant, j'ai un ensemble mixte de particules qui ont tendance à avoir des concentrations assez distinctes de fluorophores. Par exemple, un ensemble peut généralement avoir beaucoup de fluorophore # 1 et peu de fluorophore # 2, tandis que l'autre ensemble a peu de # 1 et beaucoup de # 2.
Fondamentalement, je veux déconvoluer l'effet de débordement pour estimer la quantité réelle de chaque fluorophore sur chaque particule, plutôt que d'avoir une fraction de signal d'un fluorophore à ajouter au signal d'une autre. Il semblait que cela serait possible pour ICA, mais après quelques échecs importants (la transformation matricielle semble prioriser la séparation des populations plutôt que la rotation pour optimiser l'indépendance du signal), je me demande si ICA n'est pas la bonne solution ou si je dois prétraiter mes données d'une autre manière pour y remédier.
Les graphiques montrent mes données synthétiques utilisées pour démontrer le problème. En partant de "vraies" sources (panel A) constituées d'un mélange de 2 populations, j'ai créé une "vraie" matrice de mixage (A) et calculé la matrice d'observation (X) (panel B). FastICA estime la matrice S (présentée dans le panneau C) et au lieu de trouver mes vraies sources, il me semble qu'elle fait tourner les données pour minimiser la covariance entre les 2 populations.
Vous cherchez des suggestions ou des idées.