Для моего исследования выпускников я создаю нейронную сеть, которая тренируется, чтобы распознавать изображения. Я собираюсь сделать намного сложнее, чем просто взять сетку значений RGB, понизить дискретизацию и отправить их на вход в сеть, как это делают многие примеры. Я на самом деле использую более 100 независимо обученных нейронных сетей, которые обнаруживают такие функции, как линии, шаблоны затенения и т.д. Гораздо больше, чем человеческий глаз, и он работает очень хорошо до сих пор! Проблема в том, что у меня довольно много учебных данных. Я показываю более 100 примеров того, как выглядит автомобиль. Затем 100 примеров того, как выглядит человек. Тогда более 100 из того, что выглядит собака, и т.д. Это довольно немного учебных данных! В настоящее время я работаю около недели для обучения сети. Это своего рода убийство моего прогресса, поскольку мне нужно настроить и переквалифицироваться.
Я использую Neuroph, как низкоуровневый API нейронной сети. Я запускаю двухъядерный процессор (16 ядер с гиперпотоком), поэтому это должно быть быстро. Мой процент процессора составляет всего 5%. Есть ли какие-то трюки в исполнении Нейрофа? Или производительность Java в целом? Предложения? Я докторант когнитивного психолога, и я порядочный, как программист, но не очень разбираюсь в программировании производительности.