Высокие кардинальные категориальные черты в цифрах - PullRequest
0 голосов
/ 01 июля 2018

В большинстве академических примеров мы использовали для преобразования категориальных функций, используя get_dummies или OneHotEncoder. Допустим, я хочу использовать Country в качестве функции, и в наборе данных у нас есть 100 уникальных стран. Когда мы применяем get_dummies к стране, мы получим 100 столбцов, и модель будет обучена с использованием 100 столбцов стран плюс другие функции.

Допустим, мы внедрили эту модель в производство, и мы получили только 10 стран. Когда мы предварительно обрабатываем данные с использованием get_dummies, тогда модель не может предсказать, потому что «Количество обученных моделей объектов не соответствует переданным функциям», так как мы передаем 10 столбцов страны плюс другие функции.

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

https://www.kdnuggets.com/2016/08/include-high-cardinality-attributes-predictive-model.html

Не могли бы вы помочь мне понять, как справиться с такими сценариями?

1 Ответ

0 голосов
/ 03 августа 2018

Есть две вещи, которые вы можете сделать.

  1. Применяйте OHE после объединения данных вашего тренировочного набора и набора тестов / проверок не ранее этого.
  2. Пропустите OHE и примените StandardScaler, потому что «Если у объекта есть отклонение, которое на несколько порядков больше, чем у других, оно может доминировать в целевой функции и сделать оценщик неспособным учиться на других функциях правильно, как ожидалось».

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...