2014-01-16 2 views
1

У меня около 10 000 образцов и 9 000 функций. Я пытаюсь использовать RandomForest (RF или GRF) для выбора/уменьшения функции (переменной).RandomForest in R с большим количеством функций

Концепция отлично работает, когда я использую 700 функций, но за 9000, когда я пытаюсь запустить randomForest или RRF, даже с 1 деревом (и даже с mtry = 1), я жду часами и ничего не происходит. (FYI, я использую sampsize = 800)

Я надеялся хотя бы на то, чтобы иметь возможность запускать единое дерево, а затем использовать несколько компьютеров и комбинировать.

Любые идеи для оказания помощи?

Рони

+1

Возможно, вы используете неправильный метод уменьшения размерности. Я бы попробовал PCA, он должен быть быстрее. Я считаю, что randomForest - отличная модель для прогнозирования, но медленная. По крайней мере, используя «нормальный» ноутбук. Как только вы уменьшите измерение, попробуйте randomForest. – marbel

+1

Если вы собираетесь придерживаться случайных лесов, есть относительно новый пакет под названием ** wsrf **, который вы, возможно, захотите изучить. Кроме того, ** bigrf ** может стоить внимания. – joran

ответ

0

Я занимаюсь с той же проблемой, и я решил, как показано ниже:

  1. Разделите ваши 9000 функции сказать 9 групп, каждый из которых содержит 1000 возможностей для 10K образцов
  2. художественных
  3. Run выбор для каждой подгруппы и выберите, скажем, 300 наиболее информативных признаков из каждой подгруппы
  4. Объедините выбранные функции 9 * 300 и повторите шаги 1 и 2
  5. Finall y вы получите 300 функций, выбранных

Этот подход может привести к потере некоторых важных функций, но он обычно выбирает наиболее информативные функции. Кстати, вы можете изменить выбранный размер функции (300 в данном примере) в соответствии с вашими потребностями.

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