При работе с моделями машинного обучения данные необходимо преобразовать и подготовить для дальнейшего процесса построения модели. Данные состоят из множества переменных, которые делятся на числовые и категориальные переменные.
Числовой — сердцебиение, температура (они будут в числовом значении)
Категориальный — Курильщик/Некурящий, показатели (Хорошо, Средне, Плохо)
Дополнительная категориальная переменная разделена на 2 типа
Номинальные данные определяют данные с использованием таких меток, как «Курильщик» или «Не курящий». Номинальные данные не имеют какой-либо порядковой последовательности или ранга, заданного на основе этикетки.
Порядковые данные имеют упорядоченную последовательность или ранг, присвоенный таким переменным, как «Хороший», «Средний», «Плохой», где «хороший» классифицируется как лучший, а «Плохой» — как худший.
Машина не понимает текст, поэтому для преобразования этого текста в числа используется пустышка или кодировка.
Одно горячее кодирование
Одно горячее кодирование — это процесс, с помощью которого категориальные переменные преобразуются в форму, которая может быть предоставлена алгоритмам ML, чтобы лучше выполнять прогнозирование.
В то время как
Кодировка ярлыка
В кодировке метки переменной присваивается только номер. Например, есть 3 города — Nokia, Samsung и Apple. При этом Nokia присваивается значение 1, Samsung определяется как 2, а Apple определяется как 3. В кодировке меток им присваивается ранг. Под этим машина понимает, что Nokia — это 1, Samsung — это 2, а Apple — это 3, поэтому, взяв среднее значение 1 и 3, мы получим 2. (т. е. среднее значение для Nokia и Apple будет Samsung)
Вызовы одной горячей кодировке
Во-первых, одно горячее кодирование создает много столбцов, что немного усложняет работу. Во-вторых, это приводит к проблеме, называемой ловушкой фиктивной переменной, которая может вызвать мультиколлинеарность. Мультиколлинеарность возникает, когда они зависят от независимых переменных при построении модели ML.
Чтобы предотвратить мультиколлинеарность и разорвать зависимость ч/б независимых переменных, всегда удаляйте одну фиктивную переменную из фрейма данных (пример — удаление столбца Apple), а затем продолжайте работу с моделью.
Спасибо!