#keras
#keras
Вопрос:
Я использую модель LSTM в Keras для классификации изображений. При прогнозировании тестовых изображений я хочу записать время, необходимое (в мс) для прогнозирования каждого тестового изображения. Какие есть способы это сделать?
Ответ №1:
Для вычисления разницы во времени в Python мы используем модуль time.
import time
t1 = time.time()
model.predict( ... )
# Testing has finished
t2 = time.time()
print( 'Time taken was {} seconds'.format( t2 - t1))
Для записной книжки Jupyter поместите этот тег в начало ячейки.
%%time
Если предположить, что прогнозирование 10 изображений занимает 3 секунды или 3000 миллисекунд, то для 1 изображения время составит 300 миллисекунд или 0,3 секунды. Это можно рассматривать как приблизительную оценку
Комментарии:
1. Проблема в том, что мне нужно получить время, затрачиваемое на каждое изображение. Одна из идей состоит в том, чтобы взять каждое тестовое изображение и спрогнозировать их отдельно. В этом случае приведенный выше ответ хорош. Но если я хочу отправить все тестовые изображения вместе в функцию прогнозирования, тогда я получу время прогнозирования для всех изображений, а не для каждого.
2. Вы можете разделить время, затраченное на количество изображений. Я отредактировал ответ.
3. Спасибо, но я не думаю, что для классификации каждого изображения требуется одинаковое время.
4. Тестирование каждого изображения является внутренним в keras, и, следовательно, вычисление времени может быть невозможным. Приведенный выше метод может дать приблизительную оценку, если изображения имеют одинаковый размер.