Relief — это алгоритм, разработанный Кирой и Ренделлом в 1992 году, который использует подход метода фильтрации для выбора признаков , который особенно чувствителен к взаимодействиям признаков. [1] [2] Первоначально он был разработан для применения к задачам бинарной классификации с дискретными или числовыми признаками. Relief вычисляет оценку признака для каждой характеристики, которую затем можно применить для ранжирования и выбора признаков с наивысшей оценкой для выбора признаков. В качестве альтернативы эти оценки могут применяться в качестве весов признаков для руководства последующим моделированием. Оценка признаков Relief основана на идентификации различий значений признаков между ближайшими парами экземпляров-соседей. Если разница значений признаков наблюдается в соседней паре экземпляров с тем же классом («попадание»), оценка признака уменьшается. В качестве альтернативы, если разница значений признаков наблюдается в соседней паре экземпляров с разными значениями класса («промах»), оценка признака увеличивается. Исходный алгоритм Relief с тех пор вдохновил семейство алгоритмов выбора признаков на основе Relief (RBA), включая алгоритм ReliefF [3] . Помимо оригинального алгоритма Relief, RBA были адаптированы для (1) более надежной работы в шумных задачах, [4] (2) обобщения на многоклассовые задачи [4] (3) обобщения на задачи с числовым результатом (т. е. регрессией) [5] и (4) для того, чтобы сделать их устойчивыми к неполным (т. е. отсутствующим) данным. [4]
На сегодняшний день разработка вариантов и расширений RBA сосредоточена на четырех областях: (1) улучшение производительности «основного» алгоритма Relief, т. е. изучение стратегий выбора соседей и взвешивания экземпляров, (2) улучшение масштабируемости «основного» алгоритма Relief для более крупных пространств признаков с помощью итеративных подходов, (3) методы гибкой адаптации Relief к различным типам данных и (4) повышение эффективности работы Relief. [6]
Их сильные стороны в том, что они не зависят от эвристики, работают за полиномиальное время низкого порядка, устойчивы к шумам и надежны к взаимодействиям признаков, а также применимы для двоичных или непрерывных данных. Однако они не различают избыточные признаки, а малое количество обучающих примеров вводит алгоритм в заблуждение.
Возьмем набор данных с n экземплярами p признаков, принадлежащих двум известным классам. В наборе данных каждый признак должен быть масштабирован до интервала [0 1] (двоичные данные должны оставаться как 0 и 1). Алгоритм будет повторен m раз. Начнем с p -длинного вектора веса (W) из нулей.
На каждой итерации берем вектор признаков (X), принадлежащий одному случайному экземпляру, и векторы признаков экземпляра, ближайшего к X (по евклидову расстоянию) из каждого класса. Ближайший экземпляр того же класса называется «почти попадание», а ближайший экземпляр другого класса называется «почти промах». Обновляем вектор веса таким образом, чтобы
где индексирует компоненты и пробегает от 1 до p.
Таким образом, вес любого данного признака уменьшается, если он отличается от этого признака в соседних экземплярах того же класса больше, чем в соседних экземплярах другого класса, и увеличивается в обратном случае.
После m итераций разделите каждый элемент вектора веса на m . Это станет вектором релевантности. Признаки выбираются, если их релевантность больше порогового значения τ .
Эксперименты Киры и Ренделла [2] показали четкий контраст между значимыми и незначимыми признаками, что позволило определить τ путем проверки. Однако с помощью неравенства Чебышева для заданного уровня достоверности ( α ) можно также определить, что τ, равный 1/sqrt(α*m), достаточно хорош, чтобы сделать вероятность ошибки первого рода меньше α , хотя утверждается, что τ может быть намного меньше этого.
Рельеф также был описан как обобщаемый до полиномиальной классификации путем разложения на ряд бинарных задач.
Кононенко и др. предлагают ряд обновлений Relief. [3] Во-первых, они находят случаи близкого попадания и близкого промаха, используя манхэттенскую (L1) норму, а не евклидову (L2) норму , хотя обоснование не указано. Кроме того, они обнаружили , что при обновлении вектора веса достаточно брать абсолютные разности между x i и близкого попадания i , а также x i и близкого промаха i .
Вместо того, чтобы повторять алгоритм m раз, реализуйте его исчерпывающе (т. е. n раз, один раз для каждого экземпляра) для относительно небольшого n (до тысячи). Кроме того, вместо того, чтобы искать единственное ближайшее попадание и единственное ближайшее промах, что может привести к тому, что избыточные и шумные атрибуты повлияют на выбор ближайших соседей, ReliefF ищет k ближайших попаданий и промахов и усредняет их вклад в веса каждого признака. k можно настроить для любой отдельной проблемы.
В ReliefF вклад пропущенных значений в вес признака определяется с использованием условной вероятности того, что два значения должны быть одинаковыми или разными, аппроксимированной с помощью относительных частот из набора данных. Это можно рассчитать, если отсутствует один или оба признака.
Вместо того чтобы использовать предложенную Кирой и Ренделлом декомпозицию полиномиальной классификации на ряд биномиальных задач, ReliefF ищет k близких промахов из каждого отдельного класса и усредняет их вклады для обновления W, взвешенного с учетом априорной вероятности каждого класса.
Следующие RBA расположены в хронологическом порядке от самых старых к самым новым. [6] Они включают методы улучшения (1) базовой концепции алгоритма Relief, (2) итерационных подходов к масштабируемости, (3) адаптации к различным типам данных, (4) стратегий для вычислительной эффективности или (5) некоторой комбинации этих целей. Для получения дополнительной информации о RBA см. эти главы книги [7] [8] [9] или эту последнюю обзорную статью. [6]
Робник-Шиконья и Кононенко предлагают дальнейшие обновления ReliefF, делая его пригодным для регрессии. [5]
Представлен детерминированный подход к выбору соседей и новый подход к обработке неполных данных. [10]
Реализован метод устранения смещения в отношении немонотонных признаков. Представлен первый итеративный подход Relief. Впервые соседи были однозначно определены пороговым значением радиуса, а экземпляры были взвешены по их расстоянию от целевого экземпляра. [11]
Введено сигмоидальное взвешивание на основе расстояния от целевого экземпляра. [12] [13] Все пары экземпляров (а не только определенное подмножество соседей) внесли вклад в обновления оценок. Предложен вариант обучения в режиме онлайн Relief. Расширена итеративная концепция Relief. Введены обновления локального обучения между итерациями для улучшения сходимости. [14]
Специально стремились устранить шум в больших пространствах признаков посредством рекурсивного устранения признаков и итеративного применения ReliefF. [15]
Аналогично, стремясь устранить шум в больших пространствах признаков. Использовалось итеративное «испарительное» удаление признаков самого низкого качества с использованием оценок ReliefF в сочетании с взаимной информацией. [16]
Решение проблем, связанных с неполными и многоклассовыми данными. [17]
Значительно повышает эффективность обнаружения двусторонних взаимодействий признаков в очень больших пространствах признаков за счет оценки случайных подмножеств признаков, а не всего пространства признаков. [18]
Введен расчет весов признаков относительно средней разницы признаков между парами экземпляров. [19]
SURF идентифицирует ближайших соседей (как попадания, так и промахи) на основе порогового расстояния от целевого экземпляра, определяемого средним расстоянием между всеми парами экземпляров в обучающих данных. [20] Результаты показывают улучшенную способность обнаруживать двусторонние эпистатические взаимодействия по сравнению с ReliefF.
SURF* [21] расширяет алгоритм SURF [20] не только для использования «ближних» соседей в обновлениях оценок, но и для «дальних» экземпляров, но и для использования инвертированных обновлений оценок для пар «дальних экземпляров». Результаты показывают улучшенную способность обнаруживать двусторонние эпистатические взаимодействия по сравнению с SURF, но неспособность обнаруживать простые основные эффекты (т. е. одномерные ассоциации). [22]
SWRF* расширяет алгоритм SURF*, принимая сигмоидное взвешивание для учета расстояния от порога. Также введена модульная структура для дальнейшей разработки RBA, называемая MoRF. [23]
MultiSURF* [24] расширяет алгоритм SURF* [21] , адаптируя границы ближнего/дальнего соседства на основе среднего и стандартного отклонения расстояний от целевого экземпляра до всех остальных. MultiSURF* использует стандартное отклонение для определения зоны нечувствительности, где экземпляры «среднего расстояния» не вносят вклад в оценку. Данные свидетельствуют о том, что MultiSURF* лучше всего справляется с обнаружением чистых 2-сторонних взаимодействий признаков. [22]
Вводит адаптивный параметр k по признакам для более гибкого обнаружения одномерных эффектов и эффектов взаимодействия. [25]
MultiSURF [22] упрощает алгоритм MultiSURF* [24] , сохраняя зону нечувствительности и определение соседства, ориентированного на целевой экземпляр, но исключая «дальнюю» оценку. Данные свидетельствуют о том, что MultiSURF является хорошо сбалансированным вариантом, способным обнаруживать 2- и 3-сторонние взаимодействия, а также простые одномерные ассоциации. [22] Также представлен программный пакет RBA под названием ReBATE, который включает реализации (Relief, ReliefF, SURF, SURF*, MultiSURF*, MultiSURF и TuRF).
STIR [26] [27] переформулирует и слегка корректирует исходную формулу Relief, включив выборочную дисперсию расстояний до ближайших соседей в оценку важности атрибута. Эта дисперсия позволяет вычислять статистическую значимость признаков и корректировать для множественного тестирования оценок на основе Relief. В настоящее время STIR поддерживает двоичную переменную результата, но вскоре будет расширена до многосостояний и непрерывных результатов.
Различные RBA применялись для выбора признаков в различных проблемных областях.
{{cite book}}
: CS1 maint: несколько имен: список авторов ( ссылка )