Target encoding
Зачем это нужно? Модели работают с числами, а не строками. Простые кодирования вроде порядковых номеров создают ложную зависимость («район 15 лучше района 3»). Target encoding передаёт реальную статистическую связь категории с результатом, что особенно полезно для признаков с множеством уникальных значений, например почтовых индексов.
Интуитивно это как оценка кофе по обёртке: если синие обёртки чаще получали «отлично» за год, для новой синей обёртки прогнозируем высокую оценку. Так и здесь — категория заменяется её «историей успеха»: долей положительных исходов или средним значением.
Пример: банк предсказывает невозврат кредита. Для профессии «шахтёр» подставляем средний процент дефолтов среди всех шахтёров. Если он 0,3, алгоритм понимает рискованность. Это сохраняет нюансы редких категорий, которые теряются при бинарном кодировании.
Но есть риск переобучения: у редких категорий среднее может быть случайным. Поэтому применяют сглаживание — смешивают среднее по категории с глобальным средним, а на тренировке добавляют шум. При аккуратном использовании target encoding заметно повышает точность и извлекает больше пользы из данных.
Поделиться