ФастИКА
Эта статья в значительной степени или полностью опирается на один источник . ( апрель 2013 г. ) |
FastICA — эффективный и популярный алгоритм независимого анализа компонентов, изобретенный Аапо Хивариненом из Хельсинкского технологического университета . [1] [2] Как и большинство алгоритмов ICA, FastICA ищет ортогональное вращение предварительно выбеленных с фиксированной точкой данных с помощью схемы итераций , которая максимизирует меру негауссовости повернутых компонентов. Негауссовость служит показателем статистической независимости , которая является очень строгим условием и требует бесконечного количества данных для проверки. FastICA также может быть альтернативно получен как аппроксимативная итерация Ньютона.
Алгоритм
[ редактировать ]Предварительное отбеливание данных
[ редактировать ]Пусть обозначаем матрицу входных данных, количество столбцов, соответствующее количеству выборок смешанных сигналов и количество строк соответствует количеству сигналов независимых источников. Матрица входных данных должен быть предварительно отбелен или отцентрирован и отбелен перед применением к нему алгоритма FastICA.
- Центрирование данных влечет за собой унижение каждого компонента входных данных. , то есть,
- для каждого и . После центрирования каждый ряд имеет ожидаемую стоимость .
- Для отбеливания данных требуется линейное преобразование центрированных данных так, чтобы компоненты некоррелированы и имеют дисперсию единицу. Точнее, если представляет собой центрированную матрицу данных, ковариация это -мерная единичная матрица, т.е.
- Распространенным методом отбеливания является выполнение собственным значениям разложения по ковариационной матрицы центрированных данных. , , где – матрица собственных векторов и – диагональная матрица собственных значений. Забеленная матрица данных определяется таким образом:
Экстракция одного компонента
[ редактировать ]Итерационный алгоритм находит направление весового вектора что максимизирует меру негауссовости проекции , с обозначая предварительно обесцвеченную матрицу данных, как описано выше. Обратите внимание, что является вектор-столбцом. Для измерения негауссовости FastICA использует неквадратическую нелинейную функцию , его первая производная и его вторая производная . Хиваринен утверждает, что функции
полезны для общих целей, в то время как
может быть очень прочным. [1] Шаги по извлечению весового вектора для одного компонента в FastICA следующие:
- Рандомизировать начальный весовой вектор
- Позволять , где означает усреднение по всем векторам-столбцам матрицы
- Позволять
- Если не сходятся, вернитесь к 2
Многокомпонентная экстракция
[ редактировать ]Одноблочный итерационный алгоритм оценивает только один весовой вектор, который извлекает один компонент. Оценка дополнительных компонентов, которые являются взаимно «независимыми», требует повторения алгоритма для получения линейно независимых векторов проекции - обратите внимание, что понятие независимости здесь относится к максимизации негауссовости оцениваемых компонентов. Хюваринен предлагает несколько способов извлечения нескольких компонентов, самый простой из которых следующий. Здесь, - вектор-столбец единицы измерения .
Алгоритм FastICA
- Вход: Количество желаемых компонентов
- Вход: Предварительно отбеленная матрица, где каждый столбец представляет собой -размерный образец, где
- Выход: Матрица несмешивания, в которой выступает каждый столбец на независимый компонент.
- Выход: Матрица независимых компонентов, с столбцы, представляющие образец с размеры.
for p in 1 to C: Random vector of length N while changes
output
output
См. также
[ редактировать ]- Обучение без присмотра
- Машинное обучение
- Библиотека IT++ содержит реализацию FastICA на C++.
- Инфомакс
Ссылки
[ редактировать ]- ^ Jump up to: а б Хюваринен, А.; Оджа, Э. (2000). «Независимый компонентный анализ: алгоритмы и приложения» (PDF) . Нейронные сети . 13 (4–5): 411–430. CiteSeerX 10.1.1.79.7003 . дои : 10.1016/S0893-6080(00)00026-5 . ПМИД 10946390 .
- ^ Хиваринен, А. (1999). «Быстрые и надежные алгоритмы с фиксированной точкой для анализа независимых компонентов» (PDF) . Транзакции IEEE в нейронных сетях . 10 (3): 626–634. CiteSeerX 10.1.1.297.8229 . дои : 10.1109/72.761722 . ПМИД 18252563 .