Может ли кто-нибудь дать список того, какие алгоритмы требуют, чтобы категориальные функции были закодированы в горячем виде, а какие - нет?
AFAIU, он должен делать больше с конкретными данными , а не с конкретным алгоритмом . В частности, это зависит от того, существует ли какой-либо значимый порядок в категориях или нет.
Рассмотрим два случая. В первом у вас есть категории плохие, хорошо , а во втором у вас есть яблоко, апельсин, груша . В первом случае существует естественный порядок, потому что, вероятно , меха находится между плохим и хорошим , но, вероятно, ничего подобного не происходит в яблоке, апельсине, груше .
Если вы избегаете однократного кодирования для первого случая, вы «теряете» информацию о заказе. Если вы используете горячее кодирование для второго случая, вы назначаете некоторый порядок категориям, что, естественно, не соответствует действительности.
Я делаю это всякий раз, когда алгоритм использует метрику расстояния для вычисления сходства.
Зачем? Предположим, что одна из характеристик является категорически плохой, хорошо, хорошо , и у вас есть три экземпляра, 1, 2 и 3, где они идентичны, за исключением того, что 1 - плохо , 2 - это мех , а 3 - хорошо. Вы, вероятно, хотите выразить алгоритму, что 1 больше похож на 2, чем на 3.