-
Notifications
You must be signed in to change notification settings - Fork 26
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Переход на эффективную архитектуру (EfficientDet) #31
Comments
Я пробовал переводить в Torchscript, но только на GPU. Улучшения производительности не заметил. А вот на CPU надо будет попробовать. |
Torchscript нужен скорее для избавления от ненужных зависимостей, с ним легче тестировать разные архитектуры и запускать несколько flask-серверов на одной машине. Выигрыш в производительности должен быть именно от перехода на ONNX, но судя по rwightman/efficientdet-pytorch#32, всё, что касается post-processing, перевести не удастся, да и основную модель придется редактировать. |
EfficientDet обучен и работает неплохо. Теперь возникает проблема внедрения полученного кода сюда. В моей версии используется Pytorch Lightning вместо Ignite, данные переводятся в файлы аннотаций формата COCO. Можно, конечно, раскидать файлы с кодом по model/data_utils, но это всё равно не будет работать без модификаций веб-сервера. Пока предлагаю мой код оставить в https://github.com/SpaceD0ge/Braille-OCR (чуть позже опубликую код обучения effdet), и как я там дойду до рабочего прототипа flask-сервера, слить всё вместе здесь. Или даже здесь оставить только ссылки на модели со всем frontend-ом, а код обучения вынести куда-то ещё. |
Привет! Очень хорошая новость. Давай пока в твоем репо, потом подумаем как сливать в одно. |
Текущая реализация не позволяет отойти от использования серверов с GPU. Достаточно высокое время обработки изображения на стандартных CPU серверах AWS/GCP может стать ещё выше после внедрения языковых моделей. Одно из решений этой проблемы - реализация более эффективной архитектуры object detector-a. Подобный процесс можно разделить на следующие шаги:
EfficientDet в 2-8 раз быстрее RetinaNet на CPU. Для его внедрения нужно:
Модифицировать основу https://github.com/rwightman/efficientdet-pytorch
Обучить модель для русского языка
Обновление инструментов проверки скорости и качества работы
Скрипты validate_retinanet не подходят для другой архитектуры.
Перевод в ONNX (опционально - с квантизацией) может положительно сказаться на эффективности
The text was updated successfully, but these errors were encountered: