Как запустить контролируемые модели ML на большом наборе данных (15 ГБ) в R? - PullRequest
1 голос
/ 10 ноября 2019

У меня есть набор данных (15 ГБ): 72 миллиона записей и 26 функций. Я хотел бы сравнить 7 контролируемых моделей ML (проблема классификации): SVM, случайный лес, дерево решений, наивный байесовский анализ, ANN, KNN и XGBoosting. Я создал выборочный набор из 7,2 миллиона записей (10% от всего набора). Запуск моделей на выборке (даже выбор функций) уже является проблемой. У него очень долгое время обработки. Сейчас я использую только RStudio.

Я искал ответ на свои вопросы в течение нескольких дней. Я пробовал следующие вещи: - data.table - все еще недостаточно для сокращения времени обработки - sparklyr - не может скопировать мой набор данных, потому что он слишком большой

Я ищу бесплатное решение моей проблемы. Может кто-нибудь помочь мне?

Ответы [ 2 ]

0 голосов
/ 15 ноября 2019

Если у вас есть доступ к Spark, вы можете использовать sparklyr для непосредственного чтения файла CSV.

install.packages('sparklyr')
library(sparklyr)

## You'll have to connect to your Spark cluster, this is just a placeholder example
sc <- spark_connect(master = "spark://HOST:PORT")

## Read large CSV into Spark
sdf <- spark_read_csv(sc, 
                      name = "my_spark_table", 
                      path = "/path/to/my_large_file.csv")

## Take a look
head(sdf)

Вы можете использовать функции dplyr для манипулирования данными ( документы ). Для машинного обучения вам нужно использовать функции sparklyr для SparkML ( docs ). Вы должны быть в состоянии найти почти все, что вы хотите в sparklyr.

0 голосов
/ 10 ноября 2019

Вы должны заглянуть в пакет disk.frame.

...