В теории нет ничего плохого в использовании метода randomForest для переменных классов, которые имеют более 32 классов - это вычислительно дорого, но не невозможно обрабатывать любое количество классов с использованием методологии randomForest.Обычный R-пакет randomForest устанавливает 32 как максимальное количество классов для данной переменной класса и, таким образом, запрещает пользователю запускать randomForest для чего-либо с> 32 классами для любой переменной класса.
Линеаризация переменной является очень хорошим предложением - я использовал метод ранжирования классов, а затем равномерно разбил их на 32 мета-класса.Так что если на самом деле существует 64 разных класса, метакласс 1 состоит из всех вещей в классе 1 и 2 и т. Д. Единственная проблема здесь - это найти разумный способ ранжирования - и если вы работаете, скажем, сслова, очень трудно понять, как каждое слово должно быть ранжировано против любого другого слова.
Способом обойти это является создание n различных наборов предсказаний, где каждый набор содержит все экземпляры с любым конкретным подмножеством из 31 класса в каждой переменной класса с более чем 32 классами.Вы можете сделать прогноз, используя все наборы, а затем с помощью мер переменной важности, которые поставляются с пакетом, найти реализацию, где используемые классы были наиболее прогнозирующими.После того, как вы обнаружили 31 наиболее прогнозирующих классов, внедрите новую версию RF, используя все данные, которые обозначают эти наиболее прогнозирующие классы от 1 до 31, а все остальное в «другом» классе, предоставляя вам максимум 32 класса длякатегориальная переменная, но, надеюсь, сохраняющая большую часть предсказательной силы.
Удачи!