Запуск модели машинного обучения в контейнере Docker

Введение:

Машинное обучение :

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

Докер-контейнер:

Контейнер — это стандартная единица программного обеспечения, которая упаковывает код и все его зависимости, чтобы приложение быстро и надежно запускалось из одной вычислительной среды в другую. Образ контейнера Docker — это легкий, автономный исполняемый пакет программного обеспечения, который включает в себя все необходимое для запуска приложения: код, среду выполнения, системные инструменты, системные библиотеки и настройки.

Так что очень легко запустить нашу модель в контейнере в любое время, потому что у нас есть все зависимости модели в любом месте. Нам не нужно беспокоиться об этом. Нам также не нужно создавать нашу модель снова и снова.

Задача :

Извлеките образ контейнера Docker образа CentOS из DockerHub и создайте новый контейнер.

Установите программное обеспечение Python в верхней части док-контейнера.

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

Делаем шаг за шагом

Шаг 1.Во-первых, нам нужно запустить службу Docker в нашей базовой ОС.

systemctl start docker

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

setenforce 0

После запуска перезапустите службу докеров.

systemctl restart docker

Шаг 2. Теперь извлеките образ Centos из Docker Hub с помощью этой команды.

docker pull centos:latest

Шаг 3.После извлечения образа запустите контейнер, используя образ Centos, используя эту команду. Здесь я даю имя контейнера в качестве теста.

docker run -it centos:latest --name test 

Шаг 4. Наш контейнер будет запущен и запущен, теперь нам нужно установить python3, так как наша модель машинного обучения написана на языке python.

yum install python3

Шаг 5. Теперь нам нужно установить необходимые библиотеки для запуска нашей модели машинного обучения. Мы можем установить их с помощью pip3, поскольку он также был установлен с помощью python3.

pip3 install sklearn scikit-learn==0.23.1 joblib

Шаг 6.Теперь нам нужно запустить нашу модель. Но где модель?

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

Другой способ — после успешного запуска вашей модели мы можем сохранить эту модель для будущего использования.

Где бы вы ни находились, используйте библиотеку joblib для сохранения вашей модели после ее сохранения. он создает файл .pkl, в котором будет сохранено наше машинное обучение. Теперь нам просто нужно скопировать этот файл .pkl в наш контейнер.

import joblib  
joblib.dump(model, 'salary_predictor.pkl')  

Здесь мы должны передать два аргумента: 1) имя модели 2) имя файла .pkl.

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

import joblib
model = joblib.load(‘salary_predictor.pkl’)
p = input(“Enter the experience of employe: “)
output = model.predict([[int(p)]])
print(output)

Теперь мы просто запускаем наш файл приложения python в нашем контейнере, и он запрашивает ввод, и как только мы входим, у нас есть прогнозируемый вывод на нашем экране.

Мы также можем создать образ, используя этот контейнер.

docker commit test484 rangamani54/ml_image:v1

Здесь test484 — это имя контейнера, а rangamani54 — репозиторий Docker Hub, а ml_image — это имя с версией v1.

Вот мое демонстрационное видео об этом

Часть 1 Демонстрация



Часть 2 Демонстрация



Ссылка на гитхаб



Спасибо…

Продолжайте учиться…

Продолжайте делиться…