Перейти к содержимому
Compvision.ru
Smorodov

Вышла DIGITS-3rc и много других обнов для GPU

Recommended Posts

Вышла DIGITS-3rc и много других обнов для GPU, в этой версии включена экспериментальная поддержка Torch.

Ставится по человечески и сервер сразу прописывается в автозапуск.

https://developer.nvidia.com/deep-learning-software?mkt_tok=3RkMMJWWfF9wsRoju67JZKXonjHpfsX56e4tXKK2lMI%2F0ER3fOvrPUfGjI4HRMplI%2BSLDwEYGJlv6SgFS7XDMa9m1LgKXxM%3D

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Вроде уж пару недель как для nvidia registred developer'ов был доступен этот DIGITS. 

Но в целом я так и не понял нафиг он нужен, вроде с кафе и без того довольно просто работать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Да просто-то просто, ну влом мне скрипты писать, а сетки учить часто приходится, да и наблюдать не так скучно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Потестил DIGITS-3, глючный он пока какой-то.

Регулярно падает то по таймауту GPU, то от нехватки памяти, лучше пока второй версией буду пользоваться.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
29 minutes ago, Smorodov said:

Потестил DIGITS-3, глючный он пока какой-то.

Регулярно падает то по таймауту GPU, то от нехватки памяти, лучше пока второй версией буду пользоваться.

Хм, а разве DIGITS как-то сам мэнеджит процесс обучения? Вроде бы это только GUI для caffe/torch/etc. и не более того, соответственно все озвученные проблемы скорей всего на стороне caffe должны решаться. Нехватка памяти должна лечиться пересборкой caffe с библиотекой cnmem (если конечно памяти у GPU действительно хватает для решаемой задачи).

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Да, я тоже так думаю, но вся прелесть новой версии в ее установке через apt-get, а она какие-то глючные бинарники тянет (может в 4-м cuDNN дело ?).

Caffe для DIGITS 2.0 я собирал сам, с cnmem и cuDNN, и она работает стабильно.

Кстати, вроде cuDNN радикально уменьшает потребляемую память (раза в 4), а эффекта от cnmem я не особо и заметил.

 

ЗЫ: DIGITS 3.0 может отработать часов 6, а затем взять и отвалиться, очень неприятный эффект.

И с бэтчем 1024 и с 512 количество потребляемой памяти GPU одно и то же, и это странно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Еще одно наблюдение, последний СAFFE, который в составе DIGITS 3.0, несмотря на нестабильнось, работает заметно быстрее, если не в 2 раза, чем тот-же 0.14 й билд c cuDNN v2 из DIGITS 2.2 который я использовал до этого, и это, вероятно заслуга cuDNN v4. Но пока не уверен какая версия cuDNN там используется, завтра проверю.

 

UPD: проверил, действительно в последней версии используется cuDNN v4.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

И по скорости проверил, почти втрое быстрее чем предыдущая версия. Для моей задачи: 30 часов против 11.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
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 раза ускорились? Неужто придумали, как еще быстрее свертки считать? О_О

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ну тут написано:

  • 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.

Так что видимо, да что то еще придумали :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А с Batch Normalization я что-то так и не разобрался...скорость сходимости действительно растет в десятки раз(у меня на карточке ~750GTX с 2-3 дней до получаса сокращалось время работы), но есть подозрение, что сетка при этом начинает оверфитить (

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Пока не наблюдаю оверфиттинга правда и данных у меня >2M сэмплов и не скажу что тестовая выборка совершенно честная (есть смещение). Но так как сеть маленькая, то это вполне допустимо для оценки.

А скорость да, вчера на тех же данных учил, 30 эпох, сегодня ту же точность получил на 3 эпохе.

 

Screenshot from 2015-12-21 22:04:27.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
49 minutes ago, Smorodov said:

Пока не наблюдаю оверфиттинга правда и данных у меня >2M сэмплов и не скажу что тестовая выборка совершенно честная (есть смещение). Но так как сеть маленькая, то это вполне допустимо для оценки.

А скорость да, вчера на тех же данных учил, 30 эпох, сегодня ту же точность получил на 3 эпохе.

 

Screenshot from 2015-12-21 22:04:27.png

Чисто из любопытстав: а что за задачу решаете?)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

На данном графике детектор лиц.

heatmap_cumulative (1).png

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

RCNN? A HeatMap - это визуализация откликов сети?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Не-а, просто свертка :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
18 hours ago, Smorodov said:

 

 

18 hours ago, Smorodov said:

Не-а, просто свертка :)

Кстати, насчет object detection. А вы сетку обучаете по принципу автоэнкодера, когда на вход скармливается только пачка позитивов в надежде, что сетка сама извлечет фичи и обучится...или как каскады аля Viola-Jones, когда на вход подается обучющая выборка в виде позитивы + негативы в какой-то пропорции?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Сетка обучается как обычная сетка прямого распространения для классификации объектов, только полносвязные слои заменены на слои свертки.

Быстродействие зависит от этажности пирамиды и разрешения изображения и колеблется от 0.2 сек до пары минут.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Доучил еще одну итерацию уже неплохо, правда шума еще многовато, и на сложенные руки еще реагирует, но это временно :) :

 

heatmap_cumulative.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
On 12/22/2015 at 5:34 PM, Smorodov said:

И все таки, вы тут просто делаете прямой проход по сети для всей картинки и визуализируете это, или тут какое-то скользящее окно используете?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Свертка слоями сети всей картинки.

Сеть конечно не на все изображение, иначе она просто не влезет ни в какую память.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте учётную запись или войдите для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать учётную запись

Зарегистрируйтесь для создания учётной записи. Это просто!

Зарегистрировать учётную запись

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас


  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу

×