Как увидеть различия между 2 моделями Tflite - PullRequest
0 голосов
/ 16 марта 2020

У меня есть 2 модели Tensorflow Lite (это модели Yolo V2 Tiny):

  • Модель A) Загруженная из inte rnet, обнаруживает и классифицирует объекты с 80 классами. Вес файлов .tflite составляет 44,9 МБ.
  • Модель B) Обученная мной с использованием Dar knet, обнаруживает и классифицирует объекты с 52 классами. Вес файлов .tflite составляет 20,8 МБ. Модель преобразуется в TFLite с использованием Darkflow.

Однако и для мобильного телефона, и для компьютера модель B требует в 10 раз больше времени для прогнозирования, чем модель A (даже если модель B обнаруживает в меньшем количестве классов и ее файл легче). Кроме того, кажется, что модели работают с входными изображениями размером 416x416 и используют числа с плавающей точкой.

Что может быть причиной того, что модель A быстрее, чем модель B? Как я могу узнать, почему модель A быстрее?

Одна из проблем, с которыми я сталкиваюсь, заключается в том, что для модели A, так как я сам не тренировался, у меня нет файла .cfg со всей установкой ...

1 Ответ

1 голос
/ 16 марта 2020

Вы должны попробовать следующие два подхода, чтобы получить больше информации, поскольку причин, по которым модель оказывается медленнее, чем ожидалось, может быть несколько.

Проверьте обе сети с помощью такого инструмента, как Netron. Вы можете загрузить файл модели flatbuffer (TF Lite) и визуализировать сетевую архитектуру после преобразования TF Lite. Там вы можете увидеть разницу между двумя моделями. Если, например, в модели B есть дополнительные операции по изменению формы или тому подобное по сравнению с A, это может быть причиной. Чтобы загрузить Netron, выполните следующие действия: https://github.com/lutzroeder/netron.

Измерьте время, проведенное моделью на каждом из ее слоев. Для этого вы можете использовать инструмент тестирования TF Lite, предоставляемый непосредственно в репозитории Tensorflow. Проверьте это здесь https://github.com/tensorflow/tensorflow/blob/master/tensorflow/lite/tools/benchmark/README.md.

...