Sobes.tech
Middle
24

Что такое target encoding?

Компании, где спрашивали
Автомакон

Ответ от нейросети

sobes.tech AI

Target encoding — это метод кодирования категориальных признаков в числовые значения на основе статистик целевой переменной. Вместо простого one-hot кодирования, для каждой категории вычисляется, например, среднее значение целевой переменной (target) для объектов с этой категорией.

Это помогает моделям лучше использовать информацию о связи категорий с целевой переменной, особенно когда категорий много и one-hot кодирование приводит к высокой размерности.

Пример:

Если у нас есть признак "город" и целевая переменная — цена дома, то для каждого города вычисляем среднюю цену домов и заменяем категорию на это число.

import pandas as pd

data = pd.DataFrame({
    'city': ['A', 'B', 'A', 'C', 'B'],
    'price': [100, 150, 120, 130, 160]
})

mean_target = data.groupby('city')['price'].mean()
data['city_encoded'] = data['city'].map(mean_target)
print(data)

Важно применять регуляризацию и кросс-валидацию при использовании target encoding, чтобы избежать утечки информации и переобучения.