2016-04-07 3 views
-2

У меня есть data.table в r с 150 000 строк в нем. Я использую 9 функций, и это время тренировки более 30 минут, я больше не жду. Также пробовал на 500 рядов (занимает 0,2 секунды), а на 5000 - 71,2 сек. Итак, как я должен обучать свою модель со всеми данными или, может быть, вы можете дать мне другой совет?Как тренировать нейронную сеть с большим набором данных в R, используя neuralnet?

здесь компиляции журнал:

train1 <- train[1:5000,]+1 
> f1 = as.formula("target~ v1+ v2+ v3+ v4+ v5+ v6+ v7+ v8+ v9") 
> a=Sys.time() 
> nn <-neuralnet(f1,data=train1, hidden = c(4,2), err.fct = "ce", linear.output = TRUE) 
Warning message: 
'err.fct' was automatically set to sum of squared error (sse), because the response is not binary 
> b=Sys.time() 
> difftime(b,a,units = "secs") 
Time difference of 71.2000401 secs 
+0

Не уверен, что вы просите! В MATLAB NN Toolbox заботится почти обо всех, таких как нормализация данных, удаление отсутствующих и постоянных значений, разделение данных на сегменты для обучения, проверки и тестирования. Обычно вам не нужны БОЛЬШИЕ данные, и вы также можете взять образец для обучения/валидации и еще один образец для тестирования и т. Д. Также для аппроксимации/регрессии или классификации могут использоваться различные функции передачи и другой алгоритм обучения. – Celdor

+0

MXNet - лучший пакет R, который я нашел для обучения нейронных сетей: http://myungjun-youn-demo.readthedocs.org/en/latest/R-package/ – Zelazny7

+0

спасибо, что попробуете его. –

ответ

1

Это следовало ожидать, в моем опыте, есть много расчетов, участвующих в нейронных сетях. У меня лично есть один написанный на Python (2 скрытых слоя), подробный, включая момент импульса, у меня есть около 38 000 шаблонов из 56 входов и 3 выходов. Разделение их на 8 000 кусков заняло около 10 минут, чтобы пройти, и чуть меньше недели, чтобы узнать мое удовлетворение.

Весь набор из 38 000 человек имел более крупные скрытые узлы для хранения всех шаблонов, и это заняло более 6 часов, чтобы пройти один цикл и более 3 месяцев, чтобы учиться. Нейронные сети - очень мощный инструмент, но в моем опыте это связано с ценой, другие могут иметь лучшую реализацию, но все сравнения алгоритмов классификации, которые я видел, всегда упоминали о времени, которое вы узнаете как значимое.

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