EDA - Готово, Визуализация данных - Готово, Модель - Готово, Оценка модели - Готово. Что дальше?

Часто модель науки о данных остается или умирает в jupyter notebook. Развертывание модели - настолько сложный термин, что мы часто игнорируем его или передаем информацию через PowerPoint, тогда как на самом деле мы хотели бы опубликовать его как веб-приложение и просто поделиться через URL-адрес.

Доступные решения для развертывания модели

Чтобы модель использовалась в реальном мире, она должна быть в производстве. Ниже приведены некоторые из наиболее распространенных доступных решений:

Развертывание модели с использованием Flask и Heroku

В этом посте я поделюсь комплексным подходом к развертыванию модели прогнозирования в Heroku с использованием Flask API.

  1. Модель поезда
  2. Создайте веб-приложение с помощью Flask
  3. Создать репозиторий на github
  4. Свяжите github с Heroku
  5. Развернуть модель в Интернете

Модель поезда - model.py

Краткое введение о pickle - Pickling преобразует объект в поток байтов, который может быть сохранен, передан и преобразован обратно в исходную модель позже.

Создайте веб-API с помощью Flask

API - это способ, которым компьютерные системы могут общаться друг с другом по Интернет-протоколам. Они действуют как агент, который принимает информацию от пользователя к серверу, а затем снова от сервера к пользователю, возвращая ответ. Flask предоставляет такую ​​возможность. Flask будет действовать как API между вашей моделью и файлом HTML.

API будет создан как файл app.py

На этом этапе с нашей моделью (model.py), API (app.py) и HTML-файлом (index.html) мы можем запустить и протестировать наше приложение локально с помощью командной строки.

Развертывание модели в Интернете:

Для развертывания на heroku нам необходимо обеспечить:

  1. Созданы все необходимые файлы - requirements.txt и Procfile.

Файл требований

Это первая точка входа в программу. Он установит все зависимости, необходимые для запуска вашего кода. requirements.txt сообщит heroku, что этому проекту потребуются все эти библиотеки для успешного запуска приложения.

Procfile

Heroku требует, чтобы Procfile присутствовал в корневом каталоге вашего приложения. Он сообщит Heroku, как запустить приложение. Убедитесь, что это простой файл без расширения. Procfile.txt недействителен. Часть слева от двоеточия - это тип процесса, а часть справа - это команда, которую нужно запустить для запуска этого процесса. Благодаря этому мы можем сказать, на каком порту должен быть развернут код, и вы можете запускать и останавливать эти процессы.

2. Создайте репозиторий Githtub, чтобы связать его с Heroku.

Выберите автоматическое развертывание (CI - непрерывная интеграция) или ручное развертывание.

И Taadddaaa heroku сгенерирует URL-адрес вашего веб-приложения, которым вы можете поделиться со всем миром !!! - https://mlprediction-api.herokuapp.com/

Надеюсь, этот урок будет вам полезен, ребята!

В следующий раз, когда вы решите выйти за рамки jupyter, вы можете обратиться к моему github за дополнительной информацией - https://github.com/rajeevr008