Я планирую осветить серию из трех частей, уделив основное внимание развертыванию, начиная с локального развертывания на flask, переходя на серверы EC2 и, наконец, докеры.

Моделирование — это весело и все такое, но можете ли вы получить какую-либо ценность для бизнеса, просто лежа в ваших блокнотах Google Colab / Jupyter и т. Д.? Без развертывания вашей сложной модели в первую очередь не было бы смысла создавать модель.

Развертывание модели может быть самым сложным этапом

На моем работает!

Знакомые знакомые строки, где ваш друг передает вам свою модель вместе с инструкциями по запуску кода, но вы, похоже, не можете его запустить. Это может произойти из-за конфликтующих пакетов, отсутствующих библиотек или даже низкого качества кода. Здесь могут помочь такие программы, как Docker, которые упаковывают все как единое целое. Мы расскажем об этом в ближайшее время.

Речь не всегда идет о результатах

Представьте себе модель с точностью 99,99%, но на один прогноз уходит 20 минут? Как вы думаете, это будет работать в реальном времени? Иногда нам приходится жертвовать производительностью ради экономии времени и других факторов.

Что насчет серверов?

Можете ли вы всегда получить достаточно большой сервер для обработки всех ваших запросов на нагрузку? Очень немногие компании имеют доступ к таким мощным серверам или даже к облачным сервисам.

Износ модели

Это этап после развертывания модели. Ваша работа здесь не заканчивается. Иногда обновления могут сломать весь код, сдвиг в данных, когда модель должна была обучаться на другом дистрибутиве, и вдруг она начинает видеть новый дистрибутив и начинает делать ошибки. В этом случае модель необходимо переобучить.

Вы можете найти весь код здесь — https://github.com/JINO-ROHIT/Medium_Flask_Blog

В этом проекте я создал очень простое приложение для прогнозирования личности, которое работает на сервере flask. Разделим весь процесс на четыре этапа

Перед этим нам нужно построить красивую структуру папок, что-то вроде этого

Статика — здесь вы можете хранить все свои изображения и другие метаданные.

Шаблоны — предназначены для хранения html-файлов, которые будут отображаться на веб-сайте.

app.py — это основной файл, в котором вы создаете экземпляр сервера flask и передаете входные данные функции для окончательного прогноза и отображаете результаты обратно.

baseline_personality.pkl — сериализованная версия обученной модели.

requirements.txt — список всех зависимостей для запуска кода.

Этап 1 – создание модели в Jupyter Notebook

Отказ от ответственности. Здесь акцент делается не на том, чтобы делать современные прогнозы, а на том, чтобы получить работающую простую базовую модель, а затем развернуть ее.

Этап 2 — Создание внешнего интерфейса

Мы будем использовать простой HTML для создания нашего внешнего интерфейса. Достаточно простой HTML-формы, которая может принимать функции от пользователя. Хотя не стесняйтесь проявлять столько творчества, сколько хотите (хотя я сосу в CSS)

Этап 3 — Сборка сервера Flask

Этап 4 — Результаты и эксперименты

После того, как все компоненты будут готовы, вам просто нужно запустить скрипт app.py, и ваш сервер flask запустится с URL-адресом — http://127.0.0.1:5000/.

Нажав на это, вы сможете отобразить index.html. Давайте попробуем указать некоторые значения, чтобы увидеть, как это работает.

Вот это уже круто! Мы смогли создать нашу собственную систему предикторов личности и развернуть ее. Я бы посоветовал вам больше экспериментировать и создавать более крутые штуки. А пока хреновина :)

Вы также можете найти меня здесь — https://www.linkedin.com/in/jino-rohit-6032541b5/