Категориальное кодирование
Большинство алгоритмов машинного обучения требуют, чтобы переменные были числовыми. Поскольку категориальное значение не имеет четкой измеримой связи с другими значениями в том же столбце, оно должно быть сначала преобразовано в числовое представление, чтобы его можно было измерить с помощью математики. Qlik Predict использует категориальное кодирование для преобразования категориальных значений в столбцах признаков в числовые значения, которые могут быть поняты алгоритмами машинного обучения.
Qlik Predict использует три метода кодирования: impact encoding, one-hot encoding и ordinal encoding. Метод кодирования, используемый для конкретного признака, зависит от характеристики данных, числа уникальных категориальных значений и типа эксперимента.
-
Для задач классификации и регрессии:
-
Для наборов данных, содержащих менее 100 столбцов, используются следующие методы кодирования.
-
Категориальные признаки с менее чем 13 уникальными значениями кодируются методом one-hot encoding.
-
Категориальные признаки с более чем 13 уникальными значениями кодируются методом impact encoding.
-
-
Для наборов данных, содержащих более 100 столбцов, используется метод кодирования impact encoding для всех категориальных столбцов.
-
-
Для задач с временными рядами категориальные столбцы кодируются методом порядкового (ordinal) кодирования.
Посмотреть, какие признаки в наборе данных обрабатываются с использованием категориального кодирования, можно с помощью вида схемы при настройке эксперимента машинного обучения. Для получения дополнительной информации см. раздел Настройка экспериментов.
Как работает категориальное кодирование
Распространенной техникой для преобразования категории в математическое представление является кодирование методом one-hot encoding. Кодирование методом one-hot encoding разбивает категориальный столбец на n столбцов, где n равно количеству уникальных значений в столбце. Число 1 присваивается соответствующему столбцу для каждой строки, а число 0 — другим столбцам, созданным для этой категории. Категориальное кодирование позволяет оценивать каждую уникальную переменную независимо от других, а числовые значения при этом оцениваются относительно других значений в столбце.
Пример в таблице показывает кодирование категориального столбца MarketingSource методом one-hot encoding. В результате получаются четыре новых столбца — по одному для каждого уникального маркетингового канала. По первой строке видно, что Person_1 пользуется маркетинговым каналом Facebook. Это выражается числом 1 в новом столбце Facebook и числом 0 в других столбцах.
Категориальное кодирование столбца MarketingSource
