# Категориальное кодирование

Большинство алгоритмов машинного обучения требуют, чтобы переменные были числовыми. Поскольку категориальное значение не имеет четкой измеримой связи с другими значениями в том же столбце, оно должно быть сначала преобразовано в числовое представление, чтобы его можно было измерить с помощью математики. Qlik Predict использует категориальное кодирование для преобразования категориальных значений в столбцах признаков в числовые значения, которые могут быть поняты алгоритмами машинного обучения.

Qlik Predict использует три метода кодирования: impact encoding, one-hot encoding и ordinal encoding. Метод кодирования, используемый для конкретного признака, зависит от характеристики данных, числа уникальных категориальных значений и типа эксперимента.

* Для задач классификации и регрессии:

  * Для наборов данных, содержащих менее 100 столбцов, используются следующие методы кодирования.

    * Категориальные признаки с менее чем 13 уникальными значениями кодируются методом one-hot encoding.

    * Категориальные признаки с более чем 13 уникальными значениями кодируются методом impact encoding.

  * Для наборов данных, содержащих более 100 столбцов, используется метод кодирования impact encoding для всех категориальных столбцов.

* Для задач с временными рядами категориальные столбцы кодируются методом порядкового (ordinal) кодирования.

Посмотреть, какие признаки в наборе данных обрабатываются с использованием категориального кодирования, можно с помощью вида схемы при настройке эксперимента машинного обучения. Для получения дополнительной информации см. раздел [Configuring experiments](https://help.qlik.com/ru-RU/cloud-services/Subsystems/Hub/Content/Sense_Hub/AutoML/configuring-experiments.htm).

## Как работает категориальное кодирование

Распространенной техникой для преобразования категории в математическое представление является кодирование методом one-hot encoding. Кодирование методом one-hot encoding разбивает категориальный столбец на n столбцов, где n равно количеству уникальных значений в столбце. Число 1 присваивается соответствующему столбцу для каждой строки, а число 0 — другим столбцам, созданным для этой категории. Категориальное кодирование позволяет оценивать каждую уникальную переменную независимо от других, а числовые значения при этом оцениваются относительно других значений в столбце.

Пример в таблице показывает кодирование категориального столбца MarketingSource методом one-hot encoding. В результате получаются четыре новых столбца — по одному для каждого уникального маркетингового канала. По первой строке видно, что Person\_1 пользуется маркетинговым каналом Facebook. Это выражается числом 1 в новом столбце Facebook и числом 0 в других столбцах.

Категориальное кодирование столбца MarketingSource

Категориальное кодирование столбца MarketingSource

Категориальное кодирование столбца MarketingSource ![Таблица с образцами данных.](https://help.qlik.com/ru-RU/cloud-services/Subsystems/Hub/Content/Resources/Images/AutomatedMachineLearning/categorical-encoding-table-1.png)

Связанные учебные материалы:

* [Введение в Qlik Predict](https://help.qlik.com/lnk/Introduction_Qlik_AutoML)

## Подробнее

* [Введение в Qlik Predict](https://help.qlik.com/lnk/Introduction_Qlik_AutoML)