Smorodov 578 Report post Posted December 16, 2015 Вышла DIGITS-3rc и много других обнов для GPU, в этой версии включена экспериментальная поддержка Torch. Ставится по человечески и сервер сразу прописывается в автозапуск. https://developer.nvidia.com/deep-learning-software?mkt_tok=3RkMMJWWfF9wsRoju67JZKXonjHpfsX56e4tXKK2lMI%2F0ER3fOvrPUfGjI4HRMplI%2BSLDwEYGJlv6SgFS7XDMa9m1LgKXxM%3D Share this post Link to post Share on other sites
BeS 53 Report post Posted December 16, 2015 Вроде уж пару недель как для nvidia registred developer'ов был доступен этот DIGITS. Но в целом я так и не понял нафиг он нужен, вроде с кафе и без того довольно просто работать. Share this post Link to post Share on other sites
Smorodov 578 Report post Posted December 17, 2015 Да просто-то просто, ну влом мне скрипты писать, а сетки учить часто приходится, да и наблюдать не так скучно. Share this post Link to post Share on other sites
iskees 32 Report post Posted December 17, 2015 еще более влом линукс ставить ради этого Share this post Link to post Share on other sites
Smorodov 578 Report post Posted December 19, 2015 Потестил DIGITS-3, глючный он пока какой-то. Регулярно падает то по таймауту GPU, то от нехватки памяти, лучше пока второй версией буду пользоваться. Share this post Link to post Share on other sites
BeS 53 Report post Posted December 19, 2015 29 minutes ago, Smorodov said: Потестил DIGITS-3, глючный он пока какой-то. Регулярно падает то по таймауту GPU, то от нехватки памяти, лучше пока второй версией буду пользоваться. Хм, а разве DIGITS как-то сам мэнеджит процесс обучения? Вроде бы это только GUI для caffe/torch/etc. и не более того, соответственно все озвученные проблемы скорей всего на стороне caffe должны решаться. Нехватка памяти должна лечиться пересборкой caffe с библиотекой cnmem (если конечно памяти у GPU действительно хватает для решаемой задачи). Share this post Link to post Share on other sites
Smorodov 578 Report post Posted December 19, 2015 Да, я тоже так думаю, но вся прелесть новой версии в ее установке через apt-get, а она какие-то глючные бинарники тянет (может в 4-м cuDNN дело ?). Caffe для DIGITS 2.0 я собирал сам, с cnmem и cuDNN, и она работает стабильно. Кстати, вроде cuDNN радикально уменьшает потребляемую память (раза в 4), а эффекта от cnmem я не особо и заметил. ЗЫ: DIGITS 3.0 может отработать часов 6, а затем взять и отвалиться, очень неприятный эффект. И с бэтчем 1024 и с 512 количество потребляемой памяти GPU одно и то же, и это странно. Share this post Link to post Share on other sites
Smorodov 578 Report post Posted December 20, 2015 Еще одно наблюдение, последний СAFFE, который в составе DIGITS 3.0, несмотря на нестабильнось, работает заметно быстрее, если не в 2 раза, чем тот-же 0.14 й билд c cuDNN v2 из DIGITS 2.2 который я использовал до этого, и это, вероятно заслуга cuDNN v4. Но пока не уверен какая версия cuDNN там используется, завтра проверю. UPD: проверил, действительно в последней версии используется cuDNN v4. Share this post Link to post Share on other sites
Smorodov 578 Report post Posted December 21, 2015 И по скорости проверил, почти втрое быстрее чем предыдущая версия. Для моей задачи: 30 часов против 11. Share this post Link to post Share on other sites
BeS 53 Report post Posted December 21, 2015 On 12/19/2015 at 3:09 PM, Smorodov said: Да, я тоже так думаю, но вся прелесть новой версии в ее установке через apt-get, а она какие-то глючные бинарники тянет (может в 4-м cuDNN дело ?). Caffe для DIGITS 2.0 я собирал сам, с cnmem и cuDNN, и она работает стабильно. Кстати, вроде cuDNN радикально уменьшает потребляемую память (раза в 4), а эффекта от cnmem я не особо и заметил. ЗЫ: DIGITS 3.0 может отработать часов 6, а затем взять и отвалиться, очень неприятный эффект. И с бэтчем 1024 и с 512 количество потребляемой памяти GPU одно и то же, и это странно. Хм...а за счет чего они в 2 раза ускорились? Неужто придумали, как еще быстрее свертки считать? О_О Share this post Link to post Share on other sites
Smorodov 578 Report post Posted December 21, 2015 Ну тут написано: Train neural networks up to 14x faster using Google’s Batch Normalization technique. Increase training and inference performance for convolutional layers up to 2x faster with new 2D tiled FFT algorithm. Accelerate inference performance for convolutional layers on small batch sizes up to 2x on Maxwell-architecture GPUs. Так что видимо, да что то еще придумали Share this post Link to post Share on other sites
BeS 53 Report post Posted December 21, 2015 А с Batch Normalization я что-то так и не разобрался...скорость сходимости действительно растет в десятки раз(у меня на карточке ~750GTX с 2-3 дней до получаса сокращалось время работы), но есть подозрение, что сетка при этом начинает оверфитить ( Share this post Link to post Share on other sites
Smorodov 578 Report post Posted December 21, 2015 Пока не наблюдаю оверфиттинга правда и данных у меня >2M сэмплов и не скажу что тестовая выборка совершенно честная (есть смещение). Но так как сеть маленькая, то это вполне допустимо для оценки. А скорость да, вчера на тех же данных учил, 30 эпох, сегодня ту же точность получил на 3 эпохе. Share this post Link to post Share on other sites
BeS 53 Report post Posted December 21, 2015 49 minutes ago, Smorodov said: Пока не наблюдаю оверфиттинга правда и данных у меня >2M сэмплов и не скажу что тестовая выборка совершенно честная (есть смещение). Но так как сеть маленькая, то это вполне допустимо для оценки. А скорость да, вчера на тех же данных учил, 30 эпох, сегодня ту же точность получил на 3 эпохе. Чисто из любопытстав: а что за задачу решаете?) Share this post Link to post Share on other sites
Smorodov 578 Report post Posted December 21, 2015 На данном графике детектор лиц. Share this post Link to post Share on other sites
BeS 53 Report post Posted December 21, 2015 RCNN? A HeatMap - это визуализация откликов сети? Share this post Link to post Share on other sites
Smorodov 578 Report post Posted December 21, 2015 Не-а, просто свертка Share this post Link to post Share on other sites
BeS 53 Report post Posted December 22, 2015 18 hours ago, Smorodov said: 18 hours ago, Smorodov said: Не-а, просто свертка Кстати, насчет object detection. А вы сетку обучаете по принципу автоэнкодера, когда на вход скармливается только пачка позитивов в надежде, что сетка сама извлечет фичи и обучится...или как каскады аля Viola-Jones, когда на вход подается обучющая выборка в виде позитивы + негативы в какой-то пропорции? Share this post Link to post Share on other sites
Smorodov 578 Report post Posted December 22, 2015 Сетка обучается как обычная сетка прямого распространения для классификации объектов, только полносвязные слои заменены на слои свертки. Быстродействие зависит от этажности пирамиды и разрешения изображения и колеблется от 0.2 сек до пары минут. Share this post Link to post Share on other sites
Smorodov 578 Report post Posted December 23, 2015 Доучил еще одну итерацию уже неплохо, правда шума еще многовато, и на сложенные руки еще реагирует, но это временно : Share this post Link to post Share on other sites
BeS 53 Report post Posted December 24, 2015 On 12/22/2015 at 5:34 PM, Smorodov said: И все таки, вы тут просто делаете прямой проход по сети для всей картинки и визуализируете это, или тут какое-то скользящее окно используете? Share this post Link to post Share on other sites
Smorodov 578 Report post Posted December 24, 2015 Свертка слоями сети всей картинки. Сеть конечно не на все изображение, иначе она просто не влезет ни в какую память. Share this post Link to post Share on other sites