exponenta event banner

Выбор элементов для анализа компонентов соседства (NCA)

Анализ компонентов окрестности (NCA) - непараметрический метод выбора признаков с целью максимизации точности прогнозирования алгоритмов регрессии и классификации. Функции Toolbox™ статистики и машинного обучения fscnca и fsrnca выполнить выбор признаков NCA с регуляризацией, чтобы узнать веса признаков для минимизации целевой функции, которая измеряет среднюю классификацию отпуска или потерю регрессии по учебным данным.

Выбор функций NCA для классификации

Рассмотрим проблему классификации нескольких классов с обучающим набором, содержащим n наблюдений:

S = {(xi, yi), i = 1,2,..., n},

где xi∈ℝp - векторы признаков, yi∈{1,2,..., c} - метки классов, а c - число классов. Целью является изучение классификатора f:ℝp→{1,2,..., c}, который принимает вектор признаков и делает предсказание f (x) для истинной метки y из x.

Рассмотрим рандомизированный классификатор, который:

  • Случайный выбор точки, Ref (x), из S в качестве «опорной точки» для x

  • Метки x с использованием метки опорной точки Ref (x).

Эта схема аналогична схеме классификатора 1-NN, где опорная точка выбирается в качестве ближайшего соседа новой точки x. В NCA опорная точка выбирается случайным образом, и все точки в S имеют некоторую вероятность выбора в качестве опорной точки. Вероятность P (Ref (x ) = xj 'S) того, что точка xj выбирается из S в качестве опорной точки для x, выше, если xj ближе к x, что измеряется функцией расстояния dw, где

dw (xi, xj) =∑r=1pwr2|xir−xjr|,

и wr являются весами признаков. Предположим, что

P (Ref (x ) = xj 'S) ∝k (dw (x, xj)),

где k - некоторое ядро или функция подобия, которая предполагает большие значения, когда dw (x, xj) мал. Предположим, что это

k (z) = exp (zλ),

как предложено в [1]. Опорная точка для x выбрана из S, поэтому сумма P (Ref (x ) = xj 'S) для всех j должна быть равна 1. Поэтому возможна запись

P (Ref (x ) = xj 'S) = k (dw (x, xj)) ∑j=1nk (dw (x, xj)).

Теперь рассмотрим безвыходное применение этого рандомизированного классификатора, то есть предсказание метки xi с использованием данных в S i, обучающий набор S исключая точку (xi, yi). Вероятность того, что точка xj выбрана в качестве опорной точки для xi, равна

pij = P (Ref ( xi) = xj 'S i) = k (dw (xi, xj)) ∑j=1,j≠ink (dw (xi, xj)).

Средняя вероятность отказа от правильной классификации - это вероятность, что рандомизированный классификатор правильно классифицирует наблюдение i, используя S i.

pi=∑j=1,j≠inP (Ref (xi) = xj 'S i) I (yi = yj) =∑j=1,j≠inpijyij,

где

yij = I (yi = yj) = {1если yi = yj, 0 в противном случае.

Средняя вероятность отказа от правильной классификации с использованием рандомизированного классификатора может быть записана как

F (w) =1n∑i=1npi.

Правая сторона F (w) зависит от вектора веса w. Целью анализа компонента окрестности является максимизация F (w) относительно w.fscnca использует регуляризованную целевую функцию, введенную в [1].

F (w) =1n∑i=1npi−λ∑r=1pwr2=1n∑i=1n[∑j=1,j≠inpijyij−λ∑r=1pwr2] Fi (w) =1n∑i=1nFi (w),

где λ - параметр регуляризации. Термин регуляризации приводит многие веса в w к 0.

После выбора в качестве 1 параметра δ ядра в pij определение вектора веса w может быть выражено как следующая задача минимизации для данного λ.

w ^ = argminwf (w) =argminw1n∑i=1nfi (w),

где f (w) = -F (w) и fi (w) = -Fi (w).

Обратите внимание, что

1n∑i=1n∑j=1,j≠inpij=1,

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

w ^ = argminw {1 + f (w)} =argminw{1n∑i=1n∑j=1,j≠inpij−1n∑i=1n∑j=1,j≠inpijyij+λ∑r=1pwr2}=argminw{1n∑i=1n∑j=1,j≠inpij (1 yij) +λ∑r=1pwr2}=argminw{1n∑i=1n∑j=1,j≠inpijl (yi, yj) +λ∑r=1pwr2},

где функция потерь определяется как

l (yi, yj) = {1если yi≠yj,0otherwise.

Аргументом минимума является весовой вектор, минимизирующий ошибку классификации. Можно указать пользовательскую функцию потерь с помощью LossFunction аргумент пары имя-значение в вызове fscnca.

Выбор элемента NCA для регрессии

fsrnca функция выполняет выбор элемента NCA, измененного для регрессии. Учитывая n наблюдений

S = {(xi, yi), i = 1,2,..., n},

единственное отличие от проблемы классификации заключается в том, что yi∈ℝ значения ответа являются непрерывными. В этом случае цель состоит в том, чтобы предсказать ответ y с учетом обучающего набора S.

Рассмотрим рандомизированную регрессионную модель, которая:

  • Случайным образом выбирает точку (Ref (x)) из Sas «контрольная точка» для x

  • Устанавливает значение ответа x равным значению ответа опорной точки Ref (x).

Опять же, вероятность P (Ref (x ) = xj 'S), что точка xj выбирается из S в качестве опорной точки для x, равна

P (Ref (x ) = xj 'S) = k (dw (x, xj)) ∑j=1nk (dw (x, xj)).

Теперь рассмотрим применение отказа от этой рандомизированной регрессионной модели, то есть предсказание ответа для xi с использованием данных в S i, обучающий набор S, исключая точку (xi, yi). Вероятность того, что точка xj выбрана в качестве опорной точки для xi, равна

pij = P (Ref ( xi) = xj 'S i) = k (dw (xi, xj)) ∑j=1,j≠ink (dw (xi, xj)).

Пусть y ^ i является значением ответа, которое предсказывает модель рандомизированной регрессии, и yi является фактическим ответом для xi. и пусть l:ℝ2→ℝ быть функцией потерь, которая измеряет разногласия между y ^ i и yi. Затем среднее значение l (yi, y ^ i) равно

li = E (l (yi, y ^ i) | S i) =∑j=1,j≠inpijl (yi, yj).

После добавления термина регуляризации целевой функцией минимизации является:

f (w) =1n∑i=1nli+λ∑r=1pwr2.

Функция потерь по умолчанию l (yi, yj) для NCA для регрессии является средним абсолютным отклонением, но можно указать другие функции потерь, включая пользовательские, используя LossFunction аргумент пары имя-значение в вызове fsrnca.

Влияние стандартизации

Термин регуляризации выводит веса неактуальных предикторов до нуля. В целевых функциях для NCA для классификации или регрессии имеется только один параметр регуляризации λ для всех весов. Этот факт требует, чтобы величины весов были сравнимы друг с другом. Когда векторы xi признаков в S находятся в разных масштабах, это может привести к весам, которые находятся в разных масштабах и не имеют значения. Чтобы избежать этой ситуации, стандартизируйте предикторы, чтобы иметь нулевое среднее и единичное стандартное отклонение перед применением NCA. Можно стандартизировать предикторы с помощью 'Standardize',true аргумент пары имя-значение в вызове fscnca или fsrnca.

Выбор значения параметра регуляризации

Обычно необходимо выбрать значение параметра регуляризации, рассчитав точность рандомизированного классификатора NCA или регрессионной модели на независимом тестовом наборе. Если вместо одного тестового набора используется перекрестная проверка, выберите значение λ, которое минимизирует средние потери по складкам перекрестной проверки. Примеры см. в разделе Настройка параметра регуляризации для обнаружения элементов с использованием NCA для классификации и настройка параметра регуляризации в NCA для регрессии.

Ссылки

[1] Ян, У., К. Ван, У. Цзо. «Выбор компонентов соседства для высокоразмерных данных». Журнал компьютеров. Том 7, номер 1, январь 2012 года.

См. также

| | |

Связанные темы