Требуется ли ICA для запуска PCA в первую очередь?


9

Я просмотрел документ на основе заявления о том, что применение PCA перед применением ICA (с использованием пакета fastICA). У меня вопрос, требует ли ICA (fastICA) сначала запуск PCA?

В этой статье упоминается, что

... также утверждается, что предварительное применение PCA повышает производительность ICA за счет (1) отбрасывания небольших конечных собственных значений перед отбеливанием и (2) уменьшения вычислительной сложности путем минимизации парных зависимостей. PCA декоррелирует входные данные; остальные зависимости более высокого порядка разделены ICA.

Также другие документы применяют PCA перед ICA, например, этот .

Есть ли другие плюсы и минусы для запуска PCA до ICA? Пожалуйста, предоставьте теорию со ссылками.


В этой опубликованной работе обнаружены негативные последствия уменьшения размеров на основе PCA до ICA.
— Бонобо

Ответы:


9

Подход fastICA действительно требует этапа предварительного отбеливания: данные сначала преобразуются с использованием PCA, что приводит к диагональной ковариационной матрице, а затем каждое измерение нормализуется так, что ковариационная матрица равна единичной матрице (отбеливание).

Существуют бесконечные преобразования данных, которые приводят к тождественной ковариационной матрице, и если бы ваши источники были гауссовыми, вы бы остановились на этом (для многомерных распределений Гаусса достаточно среднего значения и ковариации), при наличии негауссовых источников вы можете минимизировать некоторые мера зависимости от отбеленных данных, поэтому вы ищите ротацию отбеленных данных, которая максимизирует независимость. FastICA достигает этого, используя теоретико-информационные меры и схему итераций с фиксированной запятой.

Я бы порекомендовал работу Hyvärinen, чтобы глубже понять проблему:

  • А. Хювяринен. Быстрые и надежные алгоритмы с фиксированной точкой для независимого анализа компонентов. Транзакции IEEE по нейронным сетям 10 (3): 626-634, 1999.
  • A. Hyvärinen, J. Karhunen, E. Oja, Независимый компонентный анализ, Wiley & Sons. 2001

Обратите внимание, что выполнение PCA и уменьшение размера - это не одно и то же: если у вас больше наблюдений (на сигнал), чем сигналов, вы можете выполнить PCA, сохранив 100% объясненной дисперсии, а затем продолжить отбеливание и итерацию с фиксированной точкой. получить оценку независимых компонентов. Нужно ли выполнять уменьшение размера или нет, зависит от контекста и зависит от ваших предположений моделирования и распределения данных.


2
Это хороший ответ, но, насколько я знаю, ваш последний пункт можно сделать гораздо сильнее: почти всегда хорошая идея использовать шаг PCA для уменьшения размерности (в дополнение к отбеливанию данных). Фактически, если размерность слишком высока, тогда ICA может легко переоснастить и произвести бессмысленные компоненты. Предварительная обработка с помощью PCA часто решает эту проблему (как указано в цитате в OP).
— амеба

4

Применение PCA к вашим данным имеет единственный эффект поворота исходных координатных осей. Это линейное преобразование, как, например, преобразование Фурье. Поэтому как таковой он действительно ничего не может сделать с вашими данными.

Однако данные, представленные в новом пространстве PCA, обладают некоторыми интересными свойствами. После вращения координат с помощью PCA вы можете отказаться от некоторых измерений на основе установленных критериев, таких как процент от общей дисперсии, объясненной новыми осями. В зависимости от вашего сигнала вы можете добиться значительного уменьшения размеров этим методом, и это определенно повысит производительность следующего ICA. Выполнение ICA без отказа от какого-либо из компонентов PCA не повлияет на результат следующего ICA.

Кроме того, можно легко отбелить данные в пространстве PCA благодаря ортогональности координатных осей. Отбеливание имеет эффект выравнивания различий во всех измерениях. Я бы сказал, что это необходимо для правильной работы ICA. В противном случае только несколько компонентов PCA с наибольшим отклонением будут доминировать в результатах ICA.

Я действительно не вижу никаких недостатков для предварительной обработки на основе PCA перед ICA.

Джанкарло цитирует уже лучший справочник по ICA ...


Весь ваш ответ основан на предпосылке, что применение PCA - это просто вращение координатной оси, но на самом деле под «применением PCA» люди обычно подразумевают уменьшение размерности (т.е. сохранение только подмножества ПК и отбрасывание остальных).
— амеба

PCA поможет вам узнать, какие измерения отбросить, если хотите. Я не вижу, как это точно настраивает мой ответ.
— Бонобо

Между тем, эта работа была опубликована, утверждают, что она продемонстрировала отрицательное влияние уменьшения размеров на основе PCA на качество последующего ICA.
— Бонобо

Спасибо за ссылку. Я читаю реферат и, если честно, я настроен скептически. Но я не эксперт по ICA и, вероятно, не собираюсь подробно изучать этот документ.
— амеба

2

Создание алгоритма fastICA требует только отбеливания за один шаг. Сначала вы выбираете направление шага (например, градиентный спуск), и это не требует отбеленных данных. Затем мы должны выбрать размер шага, который зависит от обратного гессиана. Если данные отбелены, то этот гессиан является диагональным и обратимым.

Так нужно ли это? Если вы просто зафиксировали размер шага постоянным (поэтому не требует отбеливания), у вас будет стандартный градиентный спуск. Градиентный спуск с фиксированным небольшим шагом будет обычно сходиться, но, возможно, намного медленнее, чем оригинальный метод. С другой стороны, если у вас большая матрица данных, отбеливание может быть довольно дорогим. Возможно, вам будет лучше даже при более медленном сближении, которое вы получаете без отбеливания.

Я был удивлен, что не увидел упоминания об этом ни в одной литературе. Одна статья обсуждает проблему: новые алгоритмы Fast-ICA для разделения слепых источников без предварительного отбеливания Jimin Ye и Ting Huang.

Они предлагают несколько более дешевый вариант отбеливания. Хотелось бы, чтобы они включили очевидное сравнение просто запуска ICA без отбеливания в качестве основы, но они этого не сделали. В качестве еще одного пункта данных я попытался запустить fastICA без отбеливания при проблемах с игрушкой, и он работал нормально.

Обновление: здесь есть еще одна приятная ссылка на отбеливание: надежный анализ независимых компонентов, Zaroso и Comon . Они предоставляют алгоритмы, которые не требуют отбеливания.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.