Я пытаюсь сделать мой процесс классификации немного быстрее. Я думал об увеличении первого ввода_dim в моем файле deploy.prototxt, но это, похоже, не работает. Это даже немного медленнее, чем классификация каждого изображения по одному.размер партии не работает для caffe с deploy.prototxt
deploy.prototxt
input: "data"
input_dim: 128
input_dim: 1
input_dim: 120
input_dim: 160
... net description ...
питона чистой инициализации
net=caffe.Net('deploy.prototxt', 'model.caffemodel', caffe.TEST)
net.blobs['data'].reshape(128, 1, 120, 160)
transformer = caffe.io.Transformer({'data':net.blobs['data'].data.shape})
#transformer settings
питон классификации
images=[None]*128
for i in range(len(images)):
images[i]=caffe.io.load_image('image_path', False)
for j in range(len(images)):
net.blobs['data'].data[j,:,:,:] = transformer.preprocess('data',images[j])
out = net.forward()['prob']
я пропустил некоторые детали, но важные вещи должны быть заполнены. Я пробовал разные размеры партии, такие как 32, 64, ..., 1024, но все почти то же самое. Поэтому мой вопрос: если кто-то знает, что я делаю неправильно или что нужно изменить? Спасибо за помощь!
EDIT:
Некоторые временные результаты, avg-times - это всего лишь общее время обработки обработанных изображений (1044).
Пакетный размер: 1
444441462 Размер 0935846510408888 Пакетное: 322016-05-04 10: 51: 20721 - Детектор - ИНФО - форма данных: (1, 1, 120, 160)
2016-05-04 10: 51: 35,149 - основные - ИНФО - GPU тайминги:
2016-05-04 10: 51: 35,149 - основные - INFO - обработанные изображения: 10 2016-05-04 10: 51: 35149 - основная - INFO - всего: 14.43s
2016-05-04 10 : 51: 35149 - Главный - ИНФО - ср времени: 13.82ms
2016-05-04 10: 51: 35149 - Главный - ИНФО - время загрузки: 8.31s
2016-05-04 10 : 51: 35149 - Главный - ИНФО - ср-во время загрузки: 7.96ms
2016-05-04 10: 51: 35149 - Основной - ИНФО - классифицирует время: 5.99s
2016-05- 04 10: 51: 35149 - Главного - INFO - ср-классифицирует время: 5.74ms
2016-05-04 10: 52: 30773 - Детектор - ИНФО - форма данных: (32, 1, 120, 160)
2016-05-04 10: 52: 45135 - основные - ИНФО - GPU тайминги:
2016-05-04 10: 52: 45135 - основные - INFO - обработанные изображения: 10 2016-05-04 10: 52: 45,135 - Главный - INFO - общее время: 14,36s
2016-05-04 10: 52: 45,136 - основная - INFO - время автономной работы: 13.76m с
2016-05-04 10: 52: 45,136 - основная - INFO - время загрузки: 7.13s
2016-05-04 10: 52: 45136 - Главный - ИНФО - ср-во время загрузки: 6.83ms
2016-05-04 10: 52: 45136 - Основной - ИНФО - классифицирует время : 7.13s
2016-05-04 10: 52: 45,136 - основные - INFO - ср-классифицируют времени: 6.83ms
размер Пакетный: 128
2016-05- 04 10: 53: 17,478 - детектор - INFO - форма данных: (128, 1, 12 0, 160)
2016-05-04 10: 53: +31299 - основные - ИНФО - GPU тайминги:
2016-05-04 10: 53: 31,299 - основные - INFO - обработанные изображения: 10 2016-05-04 10: 53: 31 299 - Основная - ИНФО - все время: 13.82s
2016-05-04 10: 53: 31 299 - Главный - ИНФО - ср время: 13.24ms
2016-05-04 10: 53: 31,299 - main - INFO - время загрузки: 7.06s
2016-05-04 10: 53: 31,299 - основные - INFO - ср нагрузки время: 6.77ms
2016-05-04 10: 53: 31299 - Основной - ИНФО - классифицирует-время: 6.66s
2016-05-04 10:53: 31299 - основные - INFO - ср-классифицируют времени: 6.38ms
размер Пакетное: 102
2016-05-04 10: 54: 11546 - детектор - ИНФО - форма данных: (1024, 1, 120, 160)
2016-05-04 10: 54: 25,316 - основные - ИНФО - GPU тайминги:
2016-05-04 10: 54: 25,316 - основные - INFO - обработанные изображения:
тысяча сорок четыре 2016-05-04 10: 54: 25316 - Главный - ИНФО - все время: 13.77s
2016-05-04 10: 54: 25316 - главного - ИНФО - ср время: 13.19ms
2016-05-04 10: 54: 25,316 - главного - INFO - время загрузки: 7.04s
2016-05-04 10: 54: 25,316 - основная - INFO - время загрузки: 6.75 мс
2016-05-04 10: 54: 25316 - Основная - ИНФО - классифицирует время: 6.63s
2016-05-04 10: 54: 25316 - Главного - ИНФО - ср-классифицирует-время: 6.35ms
вы используете GPU или CPU? – Shai
Я использую GPU: nvidia GTX980 Ti – Feuerteufel
Что вы подразумеваете под «все почти то же самое»? время выполнения 'net.forward()' одинаково независимо от 'batch_size', или время выполнения * разделенное * на' batch_size' является «почти таким же»? можете ли вы поместить здесь несколько цифр? – Shai