Анализ независимых компонент

Анализ независимых компонент (АНК, , ICA), называемый также Метод независимых компонент (МНК) — это вычислительный метод в обработке сигналов для разделения  сигнала на аддитивные подкомпоненты. Этот метод применяется при предположении, что подкомпоненты являются негауссовыми сигналами и что они статистически независимы друг от друга. АНК является специальным случаем слепого разделения сигнала. Типичным примером приложения является задача вечеринки с коктейлем — когда люди на шумной вечеринке выделяют голос собеседника, несмотря на громкую музыку и шум людей в помещении: мозг способен фильтровать звуки и сосредотачиваться на одном источнике (голос визави) в реальном времени.

Введение 

Анализ независимых компонент пытается разложить множественный сигнал на независимые негауссовые сигналы. Например звук обычно является сигналом, который состоит из сложения в каждый момент одиночных t-сигналов, идущих из нескольких источников. Вопрос заключается в том, возможно ли разделить эти источники, выделяя их из общего сигнала. Если допущение статистической независимости верно, слепое разделение независимых компонент смешанного сигнала даст очень хорошие результаты. Метод также применяется для анализа сигналов, которые могут быть и не смешанными.

Простым приложением АНК является «задача о шумной вечеринке», когда собеседники слышат друг друга, выделяя голос собеседника из общего сигнала, состоящего из шума одновременно говорящих людей в помещении и шумной улицы за окном. Обычно задача упрощается предположением, что задержка по времени или эхо отсутствуют. Заметим, что отфильтрованный и задержанный сигнал является копией зависимой компоненты, и тогда допущение статистической независимости не нарушено.

Важно также учитывать, что если представлено  источников, нужно по меньшей мере  наблюдений (например микрофонов, если наблюдаемый сигнал — аудио), чтобы обнаружить исходные сигналы. В этом случае матрица квадратна ( , где  входная размерность данных, а  — размерность модели). Иначе получаем и исследуем недоопределённый () или переопределённый () случай.

Метод АНК — разделение смешанных сигналов, базируется на двух допущениях и трёх эффектах источников смешанного сигнала, что даёт очень хорошие результаты. Двумя допущениями являются:
 Источники сигналов независимы друг от друга.
 Значения каждого источника сигнала имеют негауссово распределение.
Тремя эффектами источника смешанного сигнала являются:
 Независимость: как в и допущении 1, источники сигналов независимы, однако их смесь не является независимой от источников, потому что смесь сигналов имеет одни и те же источники.
 Нормальность: согласно центральной предельной теореме, распределение суммы независимых случайных переменных с конечной дисперсией стремится к гауссовому распределению. Попросту говоря, сумма двух независимых случайных переменных обычно имеет распределение более близкое к гауссовому, чем любое из двух исходных случайных переменных. Здесь мы рассматриваем каждый сигнал как случайную переменную.
 Сложность: временна́я сложность любой смеси сигналов больше, чем сложность одного сигнала, более простого по его составляющим.

Эти принципы составляют базовые основы АНК. Если сигналы, которые нам удалось извлечь из смеси, независимы, подобно исходным сигналам, и имеют негауссовые гистограммы или имеют малую сложность, подобную сигналу источников, они должны быть сигналами источников.

Определение независимости компонент 
АНК находит независимые компоненты (которые называются факторами, скрытыми переменными или источниками) путём максимизации статистической независимости оцениваемых компонент. Можно выбрать один из многих путей для определения заменителя независимости, и этот выбор определит форму алгоритма АНК. Два наиболее широких определения независимости АНК:

 Минимизация взаимной информации
 Максимизация негауссовости

Семейство алгоритмов АНК с минимизацией взаимной информации (, MMI) использует такие меры, как расхождение Кульбака — Лейблера и максимальная энтропия. Семейство алгоритмов АНК с максимизацией негауссовости использует коэффициент эксцесса и негэнтропию.

Типичным алгоритмам АНК свойственно использование следующих методов:

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

Декорреляция и снижение размерности могут быть получены методом главных компонент или сингулярным разложением. Декорреляция обеспечивает методу такие условия, когда все размерности трактуются одинаково и установлены априори до прогона алгоритма. Хорошо известные алгоритмы для АНК: , , ,  и многие другие. В общем случае АНК не сможет определить действительное число источников сигналов, единственно правильный порядок или масштаб (включая знак) сигналов.

АНК важен для слепого разделения сигнала и имеет много практических приложений. Метод тесно связан с поиском (или даже является частным случаем поиска)  данных, то есть нового векторного представления каждого вектора данных таким образом, чтобы он был однозначно закодирован результирующим кодовым вектором (кодирование без потерь), при этом компоненты кода статистически независимы.

Математическое определение 
Линейный анализ независимых компонент может быть разделён на случай без шумов и случай с шумами, где АНК без шумов является частым случаем АНК с шумом. Нелинейный АНК следует считать отдельным случаем.

Общее определение 
Данные представлены наблюдаемым случайным вектором , а скрытые компоненты случайным вектором . Задачей построения алгоритма является преобразование наблюдаемых данных  с помощью статического преобразования  в наблюдаемый вектор максимально независимых компонент , измеренных некоторой функцией независимости .

Генерирующая модель

Линейная АНК без шума 
Компоненты  наблюдаемого случайного вектора  генерируются как сумма независимых компонент , :

взвешенных весами .

Та же генерирующая модель может быть записана в векторном виде как , где наблюдаемый случайный вектор  представлен базисными векторами . Базисные вектора  образуют столбцы матрицы смешивания  и генерирующая формула может быть записана как , где .

Если дана модель и реализации  случайного вектора , задачей является оценка как матрицы смешивания , так и источников . Это делается путём адаптивного вычисления векторов  и установления функции цены, которая либо максимизирует негауссовость вычисленного  или минимизирует взаимную информацию. В некоторых случаях априорное знание распределения вероятности источников может быть использовано в функции цены.

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

Линейный АНК с шумом 
С добавочным предположением о нулевом среднем и не коррелирующим гауссовым шумом , модель АНК принимает форму .

Нелинейный АНК 
Смесь источников не обязательно должна быть линейной. Используя нелинейную функцию смешивания  с параметрами  нелинейной моделью АНК будет .

Различимость 
Независимые компоненты различимы с точностью до перестановки и масштабирования источников. Эта различимость требует, чтобы:

 Максимум один из источников  был гауссовым,
 Число наблюдаемых смесей  должно быть не меньше числа компонент : . Это эквивалентно высказыванию, что матрица смеси  должна иметь полный ранг, чтобы существовала обратная ей смесь.

Бинарный анализ независимых компонент 
Специальным вариантом АНК является Бинарный АНК, в котором как источники сигнала, так и мониторы имеют двоичную форму, а наблюдения от мониторов являются дизъюнктивной смесью бинарных независимых источников. Задача, как было показано, имеет приложения во многих областях, включая медицинскую диагностику, многокластерное назначение,  и управление ресурсами интернета.

Пусть  является набором бинарных переменных из  мониторов и  является набором бинарных переменных из  источников. Связи источник-монитор представлены (неизвестной) смешанной матрицей , где  указывает, что сигнал от i-го источника может наблюдаться j-м монитором. Система работает следующим образом: в любое время, если источник  активен () и он связан с монитором  (), то монитор  будет наблюдать некоторую активность (). Формально мы имеем:

 

где  является булевым И (), а  является булевым ИЛИ (). Заметим, что шум не моделируется явно, а трактуется как независимые источники.

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

Другим методом является использование динамического программирования — матрица рекурсивно разбивает наблюдения  на подматрицы и алгоритм вывода прогоняется на этих подматрицах. Ключевое наблюдение, которое ведёт к этому алгоритму: подматрица  матрицы , где  соответствует несмещённой матрице наблюдений скрытых компонент, которые не имеют связи с -м монитором. Результаты экспериментов показывают, что этот подход точен при умеренном уровне шумов.

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

Методы слепого разделения сигнала

Поиск наилучшей проекции 
Смеси сигналов имеют тенденцию к получению гауссовой плотности вероятности, а сигналы источников имеют тенденцию к негауссовой плотности вероятности. Каждый источник сигнала может быть выделен из набора смесей сигналов путём вычисления скалярного произведения вектора весов и той смеси сигналов, на которой это скалярное произведение даёт ортогональную проекцию смеси сигналов. Следующая задача заключается в нахождении вектора весов. Один из методов — поиск наилучшей проекции.

Поиск наилучшей проекции ищет одну проекцию за шаг, при условии, что выделенный сигнал будет настолько негауссовым, насколько это возможно. Это контрастирует с АНК, который обычно выделяет M сигналов одновременно из M смесей сигналов, что требует оценки  несмешивающей матрицы. Одним из практических преимуществ поиска наилучшей проекции над АНК является то, что может выделяться менее M сигналов, если требуется, где каждый источник сигнала выделяется из смеси M сигналов используя M-элементный вектор весов.

Мы можем использовать коэффициент эксцесса для извлечения сигнала с несколькими источниками путём нахождения правильных векторов весов с использованием поиска наилучшей проекции.

Коэффициент эксцесса плотности вероятности сигнала, для конечной выборки вычисляется как

 

где  является выборочным средним  выделенных сигналов. Константа 3 обеспечивает, чтобы гауссовы сигналы имели нулевой коэффициент эксцесса, супергауссовы сигналы имели положительный коэффициент эксцесса, а субгауссовы сигналы имели отрицательный коэффициент эксцесса. Знаменатель равен дисперсии  и он обеспечивает, чтобы измеренный коэффициент эксцесса получал дисперсию сигнала. Целью поиска наилучшей проекции является максимизация коэффициента эксцесса и сделать выделенный сигнал настолько ненормальным, насколько возможно.

Используя коэффициент эксцесса как меру ненормальности мы можем теперь проверить насколько коэффициент эксцесса сигнала , извлечённого из набора M смесей , изменяется по мере того, как вектор весов  вращается вокруг начала координат. Если задано, что каждый источник сигнала  является супергауссовым, мы можем ожидать
 коэффициент эксцесса извлечённого сигнала  максимален в точности тогда, когда .
 коэффициент эксцесса извлечённого сигнала  максимален, когда  ортогонален проекциям осей  или , поскольку мы знаем, что вектор оптимального веса должен быть ортогонален преобразованным осям  и .

Для смеси сигналов от разных источников мы можем использовать коэффициент эксцесса ортогонализации Грама ― Шмидта (ОГШ) для извлечения сигналов. Если дана смесь M сигналов в M-мерном пространстве, ОГШ проектирует эти точки данных в (M-1)-мерное пространство с помощью вектора весов. Мы можем гарантировать независимость выделенных сигналов с помощью ОГШ.

С целью поиска правильного значения  мы можем использовать метод градиентного спуска. Прежде всего, мы избавляемся от корреляции и преобразуем  в новую смесь , которая имеет единичную дисперсию и . Этот процесс может быть выполнен путём применения сингулярного разложения к ,
	
 

Масштабируем каждый вектор  и положим . Сигнал, выделенный взвешенным вектором , равен . Если вектор весов w имеет единичную длину, то есть , тогда коэффициент эксцесса можно переписать как:

 

Процесс обновления для :
 
где  является малой константой для гарантирования, что  сходится к оптимальному решению. После каждого обновления мы нормализуем  и множество  и повторяем процесс обновления пока он не сойдётся. Мы можем использовать также другой алгоритм для обновления вектора весов .

Другим подходом является использование негэнтропии вместо коэффициента эксцесса. Негэнтропия является устойчивым методом по отношению коэффициента эксцесса, поскольку коэффициент эксцесса очень чувствителен к выбросам. Метод негэнтропии основывается на важном свойстве распределения Гаусса — нормальная случайная величина имеет наибольшую энтропию среди всех непрерывных случайных переменных с одинаковой дисперсией. Это также является причиной, почему мы хотим найти наиболее негауссовые переменные. Простое доказательство можно найти в статье дифференциальной энтропии.
 

y являются гауссовой случайной переменной некоторой ковариантной матрицы,

 

Аппроксимация для негэнтропии равна
 
Доказательство можно найти на странице 131 книги «Анализ независимых компонент», которую написали Аапо Хювяринен, Юха Кархунен и Эркки Ойя. Эта аппроксимация также страдает теми же проблемами, что и коэффициент эксцесса (чувствительность к выбросам). Разрабатывались и другие подходы
 
Выбор  и 
  и

Основанный на infomax 
АНК, по существу, является многомерной параллельной версией поиска наилучшей проекции. В то время как поиск наилучшей проекции выделяет серию сигналов по одному из смеси M сигналов, АНК выделяет M сигналов параллельно. Это приводит к большей устойчивости АНК по сравнению с поиском наилучшей проекции.

Метод поиска наилучшей проекции, чтобы обеспечить независимость выделяемых сигналов, использует ортогонализацию Грама ― Шмидта, в то время как АНК использует метод  и оценку максимального правдоподобия для обеспечения независимости выделяемого сигнала. Ненормальность выделяемого сигнала достигается с помощью соответствующей модели.

Процесс АНК, основанный на , коротко: если дана смесь сигналов  и набор одинаковых независимых функций распределения , мы ищем несмешивающую матрицу , которая максимизирует совместную энтропию сигналов , где  являются сигналами, отобранными по . Если дана оптимальная , сигналы  имеют максимальную энтропию и, потому, независимы, что гарантирует, что выделенные сигналы  также независимы. Функция  обратима и является моделью сигнала. Заметим, что если плотность вероятности модели источника сигнала  соответствует плотности вероятности выделенного сигнала , то максимизация совместной энтропии  также максимизирует количество взаимной информации между  и . По этой причине, использование энтропии для выделения независимых сигналов известно как .

Рассмотрим энтропию векторной переменной , где  является набором сигналов, выделенных несмешивающей матрицей . Для конечного набора значений, выбранных из распределения с плотностью вероятности , энтропия  может быть оценена как:
 
Совместная плотность вероятности , как можно показать, связана с совместной плотностью вероятности  извлечённых сигналов с помощью многомерной формы:
 

где  является матрицей Якоби. Мы имеем , и  является плотностью вероятности, принятых для источников сигналов , поэтому,
 
поэтому,
 

Мы знаем, что когда ,  является однородным распределением, а  максимизирована. Поскольку
 
где  является абсолютным значением определителя несмешивающей матрицы . Поэтому,
 
так что,
 
поскольку , и максимизация  не влияет на , мы можем максимизировать функцию
 
чтобы получить независимость извлечённого сигнала.

Если имеется M маргинальных плотностей вероятности модели, совместные плотности вероятности  независимы и используют супергауссову модель плотности вероятности для источников сигналов , то мы получаем
 

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

На основе оценки максимального правдоподобия 
Оценка максимального правдоподобия (, MLE) является стандартным статистическим средством для нахождения значений параметров (например, несмешивающей матрицы ), которые обеспечивают лучшее соответствие некоторых данных (например, извлечённых сигналов ) для данной модели (например, совместной плотности вероятности (ПВ)  источников сигналов).

Модель максимального правдоподобия включает спецификацию плотности вероятности, которая в этом случае является плотностью вероятности  сигналов неизвестного источника . При использовании максимального правдоподобия целью является нахождение несмешивающей матрицы, которая даёт извлечённые сигналы  с совместной плотностью вероятности, которые максимально подобны совместной плотностью вероятности  сигналов неизвестного источника .

Оценка максимального правдоподобия основывается на предположении, что если модель плотности вероятности  и модель параметров  правильны, то должна быть получена высокая вероятность для , что эти данные действительно наблюдаемы. Обратно, если  далёк от верных значений параметров, то следует ожидать низкую вероятность наблюдения данных.

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

Мы определяем функцию правдоподобия  матрицы :

Это равно плотности вероятности в , поскольку .

Тогда, если мы хотим найти , то наиболее вероятно иметь сгенерированные наблюдаемые смеси  из неизвестных источников сигналов  с плотностью вероятности , то нам нужно лишь найти , которая максимизирует правдоподобность . Несмешивающая матрица, которая максимизирует равенство, известна как оценка максимального правдоподобия оптимальной несмешивающей матрицей.

Распространённой практикой является использование логарифма правдоподобия, поскольку его проще всего вычислить. Так как логарифм является монотонной функцией, матрица , которая максимизирует функция , также максимизирует его логарифм . Это позволяет взять логарифм в равенстве выше, что даёт логарифм функции правдоподобия

Если мы подставим широко используемую модель плотности вероятности с высоким коэффициентом эксцесса для источников сигналов , мы получим

Матрица , максимизирующая эту функцию, является оценкой максимального правдоподобия.

История и предпосылки 
Раннюю общую основу для анализа независимых компонент предложили Дженни Эро и Бернард Анс в 1984 году, затем к ним присоединился Христиан Джуттен с 1985 года. Наиболее ясно этот метод изложил Пьер Комон в 1994 году. В 1995 году Тони Белл и Терри Седжновски предложили быстрый и эффективный алгоритм АНК, основанный на принципе , который ввёл Ральф Линскер в 1987 г.

Многие алгоритмы, реализующие АНК, доступны и описаны в литературе, относящейся к данной области. Алгоритм FastICA, который разработали Аапо Хювяринен и Эркки Ойя, широко используется, включая производственные приложения. В нём применен коэффициент эксцесса в качестве функции цены. Другие примеры скорее связаны со слепым разделением сигнала, в основе которого лежит более общий подход. Например, можно опустить допущение независимости и разделить попарно коррелирующие сигналы, а следовательно, избежать статистически «зависимых» сигналов. Сепп Хохрайтер и Юрген Шмидхубер показали, как получить нелинейный АНК или осуществить разделение источников, если они являются побочным продуктом регуляризации (1999). Их метод не требует бесспорного и строгого знания о числе независимых источников.

Приложения 
АНК может быть расширен на анализ нефизических сигналов. Например, АНК был применён для обнаружения тем обсуждения в архивах новостей.

Некоторые из приложений АНК перечислены ниже:

 оптическое изображение нейронов
 сортировка импульсов нейронов sorting
 распознавание лица
 моделирование рецепторного поля главных зрительных нейронов
 предсказание цен на рынке бумаг
 мобильная телефонная связь
 определение зрелости помидор на основе цвета
 удаление объектов, таких как мигание глаза, из данных электроэнцефалограммы
 анализ изменений в экспрессии гена со временем в экспериментах по секвенированию РНК в отдельной клетке cell
 изучение

См. также 

 Слепая деконволюция
 Факторный анализ
 
 
 
 
 Неотрицательное матричное разложение
 
 Поиск наилучшей проекции

Примечания

Литература 

 
 
 
 
 
 
 
 
 

 
  (Оригинальная статья, описывающая концепцию ICA)
 
 
  (книга фокусируется на обучении без учителя с помощью слепого выделения источника)

Ссылки 
 Что есть анализ независимых компонент? (Аапо Хювяринен)
 Обучающий курс: Анализ независимых компонент (Аапо Хювяринен)
 Обучающий курс: Анализ независимых компонент
 FastICA как пакет для Matlab, на языках R и C++
 Инструментальные средства ICALAB для Matlab, разработанный в RIKEN
 Инструментальные средства высокоэффективного анализа сигналов даёт реализацию на языке C++ методов FastICA и Infomax
 Инструментальные средства ICA — Инструментальные средства Matlab для ICA с Bell-Sejnowski, Molgedey-Schuster и mean field ICA. Разработано в DTU.
 Демонстрация задачи о шумной вечеринке 
 Инструментальное средство EEGLAB ICA для электроэнцефалограмм для Matlab, разработанное в UCSD.
 Инструментальные средства FMRLAB ICA функциональной магнитно-резонансной томографии для Matlab, разработанное в UCSD
 MELODIC, часть .
 Обсуждение ICA, используемой в контексте биометрических представлений объектов
 Алгоритмы FastICA, CuBICA, JADE и TDSEP для языка Python
 Инструментальные средства Group ICA и Fusion ICA
 Обучающий курс: Использование ICA для очищения сигналов энцефалограммы

Снижение размерности
Оценка сигнала