Выделение признаков является набором методов, которые сопоставляют входные функции с новыми выходными функциями. Много методов выделения признаков используют безнадзорное обучение извлечь функции. В отличие от некоторых методов выделения признаков, таких как PCA и NNMF, методы, описанные в этом разделе, могут увеличить размерность (и уменьшить размерность). Внутренне, методы включают оптимизирующие нелинейные целевые функции. Для получения дополнительной информации см. Разреженный Алгоритм ICA Алгоритма фильтрации или Реконструкции.
Одно типичное использование выделения признаков находит функции в изображениях. Использование этих функций может привести к улучшенной точности классификации. Для примера смотрите Рабочий процесс Выделения признаков. Другое типичное использование извлекает отдельные сигналы от суперпозиций, который часто называют слепым исходным разделением. Для примера см. Извлечение Смешанные Сигналы.
Существует две функции выделения признаков: rica
и sparsefilt
. Сопоставленный с этими функциями объекты, которые они создают: ReconstructionICA
и SparseFiltering
.
Разреженный алгоритм фильтрации начинается с матрицы данных X
, который имеет строки n
и столбцы p
. Каждая строка представляет одно наблюдение, и каждый столбец представляет одно измерение. Столбцы также называются функциями или предикторами. Алгоритм затем берет или начальный случайный p
- в-развес-q
матричный W
или использует матрицу веса, переданную в паре "имя-значение" InitialTransformWeights
. q
является требуемым количеством функций, которые вычисляет sparsefilt
.
Алгоритм пытается минимизировать Разреженную Целевую функцию Фильтрации при помощи стандартной ограниченной памяти Бройден Флетчер Голдфарб Шэнно (LBFGS) оптимизатор квазиньютона. Смотрите Носедэла и Райта [2]. Этот оптимизатор берет до итераций IterationLimit
. Это прекращает выполнять итерации ранее, когда это предпринимает шаги, чья норма является меньше, чем StepTolerance
, или когда это вычисляет это, норма градиента в текущей точке является меньше, чем времена GradientTolerance
скалярный τ, где
|f | является нормой целевой функции, и норма бесконечности начального градиента.
Целевая функция пытается одновременно получить немного ненулевых функций каждой точки данных, и каждой получившейся функции, чтобы иметь почти равный вес. Чтобы понять, как целевая функция пытается достигнуть этих целей, смотрите Ngiam, Koh, Чена, Бхэксэра и Ына [1].
Часто, вы получаете хорошие функции путем устанавливания относительно маленького значения IterationLimit
, всего от 5 к нескольким сотням. Разрешение оптимизатора продолжиться может привести к перетренировке, где извлеченные функции не делают вывод хорошо к новым данным.
После построения объекта SparseFiltering
используйте метод transform
, чтобы сопоставить входные данные с новыми выходными функциями.
Чтобы вычислить целевую функцию, разреженный алгоритм фильтрации использует следующие шаги. Целевая функция зависит от n
-by-p
матрица данных X
и матрица веса W
, что оптимизатор отличается. Матрица веса W
имеет размерности p
-by-q
, где p
является количеством исходных функций и q
, является количеством требуемых функций.
Вычислите n
-by-q
матричный X*W
. Примените аппроксимированную функцию абсолютного значения к каждому элементу X*W
, чтобы получить матричный F
. ϕ является сглаженной неотрицательной симметричной функцией, которая тесно аппроксимирует функцию абсолютного значения.
Нормируйте столбцы F
аппроксимированным L 2 нормы. Другими словами, задайте нормированную матрицу
Нормируйте строки аппроксимированным L 2 нормы. Другими словами, задайте нормированную матрицу
Матрица матрица конвертированных функций в X
. Если sparsefilt
находит веса W
, которые минимизируют целевую функцию h (см. ниже), который функция хранит в выходном объекте Mdl
в свойстве Mdl.TransformWeights
, функция transform
может выполнить те же шаги преобразования, чтобы преобразовать новые данные, чтобы вывести функции.
Вычислите целевую функцию h (W
) как 1 норма матрицы , значение суммы всех элементов в матрице (которые являются неотрицательными конструкцией):
Если вы устанавливаете пару "имя-значение" Lambda
на строго положительное значение, sparsefilt
использует следующую измененную целевую функцию:
Здесь, wj является jth столбцом матричного W
, и λ является значением Lambda
. Эффект этого термина состоит в том, чтобы уменьшить веса W
. Если вы строите столбцы W
как изображения с положительным Lambda
, эти изображения кажутся сглаженными по сравнению с теми же изображениями с нулевым Lambda
.
Алгоритм Реконструкции независимого анализа компонента (RICA) основан на минимизации целевой функции. Алгоритм сопоставляет входные данные, чтобы вывести функции.
Исходная модель ICA следующая. Каждое наблюдение x сгенерировано случайным векторным s согласно
x является вектор-столбцом длины p
.
μ является вектор-столбцом длины p
, представляющий постоянный термин.
s является вектор-столбцом длины q
, элементы которого являются нулевым средним значением, модульные случайные переменные отклонения, которые статистически независимы друг от друга.
A является смесительной матрицей размера p
-by-q
.
Можно использовать эту модель в rica
, чтобы оценить A от наблюдений за x. См. Извлечение Смешанные Сигналы.
Алгоритм RICA начинается с матрицы данных X
, который имеет строки n
и столбцы p
, состоящие из наблюдений xi:
Каждая строка представляет одно наблюдение, и каждый столбец представляет одно измерение. Столбцы также называются функциями или предикторами. Алгоритм затем берет или начальный случайный p
- в-развес-q
матричный W
или использует матрицу веса, переданную в паре "имя-значение" InitialTransformWeights
. q
является требуемым количеством функций, которые вычисляет rica
. Матрица веса W
состоит из столбцов wi размера p
-by-1:
Алгоритм пытается минимизировать Целевую функцию ICA Реконструкции при помощи стандартной ограниченной памяти Бройден Флетчер Голдфарб Шэнно (LBFGS) оптимизатор квазиньютона. Смотрите Носедэла и Райта [2]. Этот оптимизатор берет до итераций IterationLimit
. Это прекращает выполнять итерации, когда это предпринимает шаги, чья норма является меньше, чем StepTolerance
, или когда это вычисляет это, норма градиента в текущей точке является меньше, чем времена GradientTolerance
скалярный τ, где
|f | является нормой целевой функции, и норма бесконечности начального градиента.
Целевая функция пытается получить почти ортонормированную матрицу веса, которая минимизирует сумму элементов g (XW
), где g является функцией (описанный ниже), который применяется поэлементно к XW
. Чтобы понять, как целевая функция пытается достигнуть этих целей, смотрите Le, Карпенко, Нджиэма и Ына [3].
После построения объекта ReconstructionICA
используйте метод transform
, чтобы сопоставить входные данные с новыми выходными функциями.
Целевая функция использует контрастную функцию, которую вы задаете при помощи пары "имя-значение" ContrastFcn
. Контрастная функция является сглаженной выпуклой функцией, которая подобна абсолютному значению. По умолчанию контрастная функция . Для других доступных контрастных функций смотрите ContrastFcn
.
Для n
-by-p
X
и q
матрицы данных функции вывода, с параметром регуляризации λ как значение пары "имя-значение" Lambda
, целевая функция с точки зрения p
-by-q
матричный W
σj является известными константами, которые являются ±1. Когда σj = +1, минимизируя целевую функцию h поощряет гистограмму быть резко достигнутым максимума в 0 (супер Гауссов). Когда σj = –1, минимизируя целевую функцию h поощряет гистограмму быть более плоским близким 0 (sub Гауссов). Задайте значения σj с помощью пары "имя-значение" NonGaussianityIndicator
rica
.
h целевой функции может иметь побочный минимум нуля, когда λ является нулем. Поэтому rica
минимизирует h по W, которые нормированы к 1. Другими словами, каждый столбец wj W задан с точки зрения вектор-столбца vj
rica
минимизирует по vj. Получившийся минимальный матричный W
обеспечивает преобразование от входных данных, X
, чтобы вывести показывает XW
.
[1] Ngiam, Jiquan, Зэнгэо Чен, Соня А. Бхэскэр, Пан В. Ко и Эндрю И. Ын. “Разреженная Фильтрация”. Усовершенствования в Нейронных Системах обработки информации. Издание 24, 2011, стр 1125–1133. https://papers.nips.cc/paper/4334-sparse-filtering.pdf
.
[2] Nocedal, J. и С. Дж. Райт. Числовая оптимизация, второй выпуск. Ряд Спрингера в исследовании операций, Springer Verlag, 2006.
[3] Le, Quoc V., Александр Карпанко, Джикуэн Нджиэм и Эндрю И. Ын. “ICA со Стоимостью Реконструкции для Эффективного Сверхполного Изучения Функции”. Усовершенствования в Нейронных Системах обработки информации. Издание 24, 2011, стр 1017–1025. https://papers.nips.cc/paper/4467-ica-with-reconstruction-cost-for-efficient-overcomplete-feature-learning.pdf
.
ReconstructionICA
| SparseFiltering
| rica
| sparsefilt