2015-12-30 2 views
0

Мне нужно построить модель классификации случайных лесов на основе набора данных с 100 предикторами и 30 млн строк. Целевая переменная двоичная. Важно рассчитать значение оценки для каждой строки, которая является стандартной опцией для РЧ-алгоритмов. Я успешно построил модели RF с до 70 000 строк. Обработка больших наборов данных заканчивается сообщением об ошибке ограничения памяти. Я знаю о возможности разбить большой набор данных на несколько достаточно маленьких наборов данных и обрабатывать их отдельно. Но с 30 миллионами записей у меня было бы слишком много подмножеств, и я предпочел бы найти более удобный подход.случайная модель леса на большом наборе данных

Итак, вот мой вопрос: есть ли способ обрабатывать 30 миллионов строк одновременно для создания RF-модели? Прежде всего, меня интересуют решения R или Python. Каковы ожидаемые временные ограничения?

ответ

1

Кроме того, чтобы найти машину с большим количеством оперативной памяти или немного ускорить экземпляр AWS и подгонять модель, вы также можете использовать инструменты, которые распределяют случайные леса, поскольку это не сложный алгоритм для распараллеливания. Я использовал H2O.ai, который является бесплатным и имеет Python и R hooks, но я знаю, что есть и другие варианты.

+0

Плюс один для H2O, прост в применении в R. – Minnow

0

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

В R-упаковке randomForest выборка контролируется параметром sampsize.

Смежные вопросы