По сценарию Эвена Вэй
В прошлый раз мы сделали ноутбук с Intel OpenVINO toolkit (если вы не читали, вот он: « Используйте Intel OpenVINO Toolkit в PrimeHub Notebooks ). В этой статье мы будем использовать ноутбук для оптимизации модели Keras для обнаружения COVID-19 с помощью оптимизатора моделей OpenVINO и развертывания оптимизированной модели в качестве конечной точки API в развертывании PrimeHub, которое ускоряется Intel OpenVINO.
Оптимизируйте модель с помощью OpenVINO
Запустите свой ноутбук PrimeHub с 4GB
памятью и включенным OpenVINO. Если у вас его нет, перейдите на портал администрирования PrimeHub и добавьте новое изображение с URL evenwei/openvino-notebook:latest
.
Загрузите записную книжку openvino-covid-19-detect.ipynb, поместите ее в записную книжку PrimeHub и запустите все ячейки. Ноутбук будет делать следующее:
Шаг 1. Импортируйте библиотеки
Шаг 2. Загрузите и разархивируйте набор данных и модели, если они не существуют
Шаг 3. Преобразование модели из Keras h5 в TensorFlow SavedModel, поскольку OpenVINO не поддерживает модели в Keras h5.
Шаг 4. Создайте команду для оптимизации модели.
Шаг 5: Оптимизируйте выбранную модель с помощью подготовленной команды. Пройдет некоторое время, и появится SUCCESS
. В случае ошибки убедитесь, что объем памяти ноутбука превышает 4GB
.
Шаг 6: Проверьте модель, сравнив результаты вывода. Сначала загрузите исходную и оптимизированную модели.
Затем мы проверяем точность и время вывода на положительных и отрицательных примерах COVID-19. Разница в точности меньше 1e-4
, а оптимизированная модель на 2
x быстрее исходной модели.
Шаг 7. После проверки точности мы копируем оптимизированную модель в PHFS для последующего развертывания оптимизированной модели.
Шаг 8: В конце мы создаем отчет о классификации со всем набором данных. Это займет некоторое время, и сначала мы сможем развернуть модель.
Развертывание оптимизированной модели с помощью OpenVINO
Шаг 1. Перейдите в раздел «Развертывание PrimeHub» и создайте новое развертывание с помощью:
- Изображение модели:
evenwei/openvino-prepackaged:v0.3.0-dev
- URI модели:
phfs:///openvino/resnet_chest
Шаг 2: После завершения развертывания скопируйте Endpoint
.
Шаг 3. Загрузите изображение сундука из PrimeHub Notebook и откройте свой терминал с помощью curl
.
ENDPOINT="<your_endpoint>" curl -F 'binData=@<image_path>' $ENDPOINT
Вы получите результат вывода в формате JSON, например:
$ curl -F 'binData=@ryct.2020003.fig2-a.png' $ENDPOINT {"data":{"names":["t:0","t:1"],"tensor":{"shape":[1,2],"values":[0.9978099465370178,0.0021900241263210773]}},"meta":{"requestPath":{"model":"evenwei/openvino-prepackaged:v0.3.0-dev"}}}
Поздравляю! Теперь у вас есть быстрая конечная точка API обнаружения COVID-19.
Пользовательский сервер предварительной упаковки
Я создал сервер предварительной сборки OpenVINO, поскольку PrimeHub еще не предоставляет его. Основные библиотеки включают среду выполнения Seldon, OpenCV и OpenVINO. Если вас это интересует или вы хотите улучшить, проверьте ссылку.
Резюме
В этой статье мы покажем вам, как преобразовать модель Keras в оптимизированную модель OpenVINO в PrimeHub Notebook и как развернуть оптимизированную модель с OpenVINO в PrimeHub Deployment. Классификация - простой случай глубокого обучения. Мы также можем разрабатывать и развертывать модели для обнаружения объектов, сегментации изображений и обработки естественного языка быстрее, используя только центральный процессор.
Надеюсь, ты узнаешь что-то новое. Хорошего дня!
Знаете ли вы, что всего в 1 клик вы можете пойти выпить кофе, а PrimeHub настроит все необходимое для вашего приключения в области машинного обучения в облачной среде. Узнай больше сейчас.
Присоединяйтесь к сообществу InfuseAI в Discord: https://discord.gg/CrAxQznedH
Следите за нами в Twitter: https://twitter.com/InfuseAI
Подпишитесь на нашу рассылку: http: // eepurl .com / hyI2TD