dl-benchmark icon indicating copy to clipboard operation
dl-benchmark copied to clipboard

Результаты конвертации и бенчмаркина моделей в TFLite из списка 10 публичных моделей.

Open FenixFly opened this issue 2 months ago • 0 comments

Для конвертации и бенчмаркинга моделей в рамках проекта предполагалась конвертация и запуск в TFLite следующих публичных моделей.

  • densenet-121-tf
  • googlenet-v1
  • googlenet-v4-tf
  • squeezenet1.1
  • resnet-50-pytorch
  • ssd_512_resnet50_v1_coco
  • ssd_512_vgg16_atrous_voc
  • ssd_300_vgg16_atrous_voc
  • ssd_512_mobilenet1.0_coco

Был реализован скрипт, который скачивает данные модели, и конвертирует их. TF модели конвертируются в TFLite напрямую, остальные через промежуточное сохранение в ONNX, затем с помощью скрипта в текущем репозитории tflite_converter.py в формат TFLite. Результаты следующие.

  • Результаты бенчмаркинга моделей: https://github.com/itlab-vision/dl-benchmark/blob/87c9940ef19104843274eb38f4f8dc7ff887bce9/results/benchmarking/TFLite-2.14-riscv-public_models-07.04.2024.xlsx
  • Результаты Accuracy Checker: https://github.com/itlab-vision/dl-benchmark/blob/44ec70070f47c07698324cf92a72d450b7e2c056/results/accuracy/TFLite-2.14-riscv-1000images-public_models-05-04-2024.xlsx
  • Скрипт скачивания и конвертации моделей: https://github.com/itlab-vision/dl-benchmark/pull/519/commits/2f95fde8bff977b1687432bd8e0334243d94f263

Результаты конвертации:

  • Модель densenet-121-tf сконвертировалась из TF в TFLite, бенчмарк запущен с batch 1 и 8.
  • Модель googlenet-v1 не сконвертировалась из Caffe в ONNX.
  • Модель googlenet-v4-tf сконвертировалась из TF в TFLite, бенчмарк запущен с batch 1 и 8.
  • Модель squeezenet1.1 сконвертировалась из Сaffe в ONNX и далее в TFLite, бенчмарк запущен с batch 1. В ONNX после конвертации зафиксирован batch 1, поэтому запуск batch 8 невозможен. Необходим инструмент для изменения размера batch в ONNX модели.
  • Модель resnet-50-pytorch сконвертировалась из PyTorch в ONNX и далее в TFLite, бенчмарк запущен с batch 1. В ONNX после конвертации зафиксирован batch 1, поэтому запуск batch 8 невозможен. Необходим инструмент для изменения размера batch в ONNX модели.
  • Модели ssd_512_resnet50_v1_coco, ssd_512_vgg16_atrous_voc, ssd_300_vgg16_atrous_voc, ssd_512_mobilenet1.0_coco сконвертировались из MXNet в ONNX с потерей NMS слоя модели (на выходе получилось 3 тензора). Конвертация из ONNX в TFLite падает с ошибкой о неверной размерности в слое ssd0_multiperclassdecoder0_slice_axis0.

FenixFly avatar Apr 09 '24 22:04 FenixFly