В чем разница между одной горячей кодировкой и одной внешней кодировкой?

13

Я читаю презентацию, и она рекомендует не использовать кодировку "оставь один", но с одной горячей кодировкой все в порядке. Я думал, что они оба были одинаковыми. Кто-нибудь может описать, в чем различия между ними?

ИВМ
источник
1
Непонятно (только из вашего вопроса), что такое пропуски. Вы должны отредактировать это, чтобы дать указатель и кратко объяснить ваше понимание обоих, и почему вы думаете, что они одинаковы.
Шон Оуэн

Ответы:

15

Вероятно, они используют «оставь одну кодировку» для обозначения стратегии Оуэна Чжана.

От: https://www.kaggle.com/c/caterpillar-tube-pricing/forums/t/15748/strategies-to-encode-categorical-variables-with-many-categories

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

Эта картина хорошо выражает идею. введите описание изображения здесь

Декс Гровс
источник
Ваше объяснение лучше, чем у Waxax по указанной ссылке, спасибо
Аллан Руин
Привет @Dex Groves, так что кодировка left_one_out для теста всегда .5?
user7117436
3
Здравствуй! Как видно из рисунка, этот типичный пример относится к проблеме классификации. Кто-нибудь имеет опыт работы с LOO-кодированием в рамках проблемы регрессии? Основной вопрос - как агрегировать целевую переменную. Сейчас я провожу эксперименты и получаю огромное переосмысление со значением (у).
Алексей Трофимов
1
для кластерной (неконтролируемой) проблемы, возможно ли использовать этот вид кодирования?
enneppi
@AlexeyTrofimov - попробуйте агрегацию с меньшей дисперсией. Я бы начал с другого биннинга (например, 1K, 2K, 2M, .. для больших значений y int или некоторого округления до десятичного знака для значений y с плавающей запятой) => mean (bin_f (y))
mork