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

Я продемонстрировал концепт на фиктивных данных, курируемых мной.

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

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

«Стадия» горячего кодирования

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

Я преобразовал одно горячее закодированное значение в десятичное число, поскольку модель ожидает, что значения будут переданы ей в определенном типе данных. Я переименовал столбец «stage_4» в «stage», а затем преобразовал значения в тип данных float64, используя numpy.

Прогноз:

Используя приведенный выше набор данных, я предсказал опасность нового пациента, используя функцию опасности

где:

Тета – коэффициент Xi признаков, лямбда(t, x) – опасность для пациента.

Я умножил коэффициент на характеристики.

Коэффициент представляет собой одномерный массив, поэтому я переставил функции, которые являются X

Наконец, я предсказал опасности трех пациентов.

Вывод:

Я считаю, что дал понимание того, что означает одно горячее кодирование и как это сделать. Это код, и вы можете связаться со мной в LinkedIn. Спасибо за чтение.