EDA - Готово, Визуализация данных - Готово, Модель - Готово, Оценка модели - Готово. Что дальше?
Часто модель науки о данных остается или умирает в jupyter notebook. Развертывание модели - настолько сложный термин, что мы часто игнорируем его или передаем информацию через PowerPoint, тогда как на самом деле мы хотели бы опубликовать его как веб-приложение и просто поделиться через URL-адрес.
Доступные решения для развертывания модели
Чтобы модель использовалась в реальном мире, она должна быть в производстве. Ниже приведены некоторые из наиболее распространенных доступных решений:
Развертывание модели с использованием Flask и Heroku
В этом посте я поделюсь комплексным подходом к развертыванию модели прогнозирования в Heroku с использованием Flask API.
- Модель поезда
- Создайте веб-приложение с помощью Flask
- Создать репозиторий на github
- Свяжите github с Heroku
- Развернуть модель в Интернете
Модель поезда - model.py
Краткое введение о pickle - Pickling преобразует объект в поток байтов, который может быть сохранен, передан и преобразован обратно в исходную модель позже.
Создайте веб-API с помощью Flask
API - это способ, которым компьютерные системы могут общаться друг с другом по Интернет-протоколам. Они действуют как агент, который принимает информацию от пользователя к серверу, а затем снова от сервера к пользователю, возвращая ответ. Flask предоставляет такую возможность. Flask будет действовать как API между вашей моделью и файлом HTML.
API будет создан как файл app.py
На этом этапе с нашей моделью (model.py), API (app.py) и HTML-файлом (index.html) мы можем запустить и протестировать наше приложение локально с помощью командной строки.
Развертывание модели в Интернете:
Для развертывания на heroku нам необходимо обеспечить:
- Созданы все необходимые файлы - 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