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

A — Агрегация: этот метод включает создание новых функций путем агрегирования существующих функций, таких как вычисление среднего значения, медианы или режима группы числовых функций.

B — Биннинг: этот метод включает преобразование непрерывных числовых признаков в категориальные признаки путем разделения данных на ячейки.

C — Комбинация: этот метод включает создание новых функций путем объединения существующих функций, например, умножение двух числовых функций вместе.

D — Дискретизация. Этот метод включает преобразование непрерывных числовых признаков в порядковые категориальные признаки путем разделения данных на интервалы.

E — Расширения: этот метод в основном используется для полиномиальных расширений, включая квадратные или кубические расширения для таких данных, как числовые признаки или даже степени 2 для категориальных признаков.

F — хеширование признаков: этот метод полезен при работе с категориальными признаками с большим количеством уровней. Трюк с хешированием объектов позволяет создавать фиксированное количество новых объектов с целью сохранения информационного содержания исходного объекта при уменьшении размерности набора данных.

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

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

I — Взаимодействие: этот метод включает создание новых функций путем взаимодействия с существующими функциями, например, путем умножения двух числовых функций или объединения двух категориальных функций.

J — объединение: этот метод используется для объединения объектов из разных наборов данных на основе общего ключа или идентификатора.

K — Кластеризация K-средних: этот неконтролируемый метод можно использовать для группировки похожих наблюдений и создания новых функций на основе назначений кластеров.

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

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

N — нормализация: этот метод используется для масштабирования числовых характеристик до общего диапазона, например от 0 до 1.

O — Горячее кодирование: этот метод используется для представления категориальных переменных в модели машинного обучения путем создания двоичных признаков для каждого уровня категориальной переменной.

P — анализ основных компонентов: этот метод используется для уменьшения размерности набора данных путем определения основных компонентов данных, которые затем можно использовать в качестве новых функций для модели.

Q — Квантильное преобразование: этот метод используется для изменения распределения числовых признаков до определенного типа, такого как нормальное или равномерное.

R — Случайная проекция. Этот метод включает в себя проецирование данных в пространство более низкого измерения при сохранении взаимосвязей между точками данных.

S — Масштабирование: этот метод используется для изменения масштаба числовых признаков для повышения производительности моделей машинного обучения.

T — Текстовые функции: этот метод включает в себя извлечение функций из текстовых данных, таких как количество слов, длина предложения или даже теги частей речи.

U — объединение: этот метод включает объединение двух или более наборов данных вместе на основе общего ключа или идентификатора.

V — преобразование переменных: этот метод включает в себя применение математических преобразований к признакам, таким как квадратные корни, логарифмы или показатели степени.

W — Статистика окна: Этот метод включает в себя расчет статистики в скользящем окне наблюдений, такой как среднее значение, медиана или стандартное отклонение.

X — важность функций XGBoost: этот метод используется для определения важности каждой функции в модели XGBoost путем измерения влияния каждой функции на производительность модели.

Y — годовое изменение: этот метод включает в себя расчет изменения характеристики с течением времени, например изменение стоимости акции по сравнению с прошлым годом.

Z — Нормализация с отсчетом от нуля. Этот метод включает нормализацию числовых признаков таким образом, чтобы они имели нулевое среднее значение и стандартное отклонение, равное единице.

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