Я понимаю (главным образом), как независимый компонентный анализ (ICA) работает с набором сигналов от одной популяции, но мне не удается заставить его работать, если мои наблюдения (матрица X) включают сигналы от двух разных популяций (имеющих разные средние значения), и я Мне интересно, является ли это внутренним ограничением ICA или я могу решить эту проблему. Мои сигналы отличаются от анализируемого общего типа тем, что мои исходные векторы очень короткие (например, 3 значения), но у меня много (например, 1000) наблюдений. В частности, я измеряю флуоресценцию в 3 цветах, где широкие сигналы флуоресценции могут «распространяться» на другие детекторы. У меня есть 3 детектора и использую 3 разных флуорофора на частицах. Можно думать об этом как о спектроскопии с очень плохим разрешением. Любая флуоресцентная частица может иметь произвольное количество любого из 3 различных флуорофоров. Тем не менее, у меня есть смешанный набор частиц, которые имеют довольно разные концентрации флуорофоров. Например, один набор может обычно иметь много флуорофоров № 1 и мало флуорофоров № 2, в то время как другой набор имеет мало # 1 и много # 2.
По сути, я хочу деконволюцию побочного эффекта, чтобы оценить фактическое количество каждого флуорофора на каждой частице, а не добавлять долю сигнала от одного флуорофора к сигналу другой. Казалось, что это было бы возможно для ICA, но после некоторых значительных сбоев (преобразование матрицы, по-видимому, делает приоритет разделением популяций, а не вращением для оптимизации независимости сигнала), мне интересно, не является ли ICA правильным решением или мне нужно предварительно обработать мои данные другим способом, чтобы решить эту проблему.
Графики показывают мои синтетические данные, использованные для демонстрации проблемы. Начав с «истинных» источников (панель A), состоящих из смеси двух популяций, я создал «истинную» матрицу смешения (A) и рассчитал матрицу наблюдения (X) (панель B). FastICA оценивает S-матрицу (показана на панели C), и вместо того, чтобы найти мои истинные источники, мне кажется, что она вращает данные, чтобы минимизировать ковариацию между двумя популяциями.
Ищете какие-либо предложения или понимание.