По сценарию Эвена Вэй

В прошлый раз мы сделали ноутбук с 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, а оптимизированная модель на 2x быстрее исходной модели.

Шаг 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