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

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

Давайте начнем !!!

В моей системе Windows я предварительно создал модель прогнозирования заработной платы. Как вы можете видеть ниже файлы в моем блокноте Jupyter.

Ее взгляд на модель прогнозирования зарплаты с помощью GIF.

Теперь вам нужно скопировать все файлы из вашей системы Windows в систему Linux в ту же папку, где вы создали Dockerfile/собираетесь создать Dockerfile. Команда для копирования файлов из системы Windows в систему Linux выглядит следующим образом:

scp <file u want to copy> root@<IP address of Linux machine>:<directory with which u save the file to>
scp file.txt [email protected]:/folder/

Теперь внутри Dockerfile вы должны написать все команды установки. Вы должны установить все необходимые библиотеки. Здесь есть несколько команд/ключевых слов.

FROM — образ, из которого вы должны запустить контейнер.

RUN — это этап сборки образа, состояние контейнера после выполнения команды RUN будет зафиксировано в образе контейнера.

КОПИРОВАНИЕ — копирование файлов из определенного места в образ докера.

ENTRYPOINT — после запуска контейнера, какую команду / оператор мы хотим выполнить первым, будет задана этой командой.

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

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

Теперь следующее, что нам нужно сделать, это создать образ с помощью следующей команды. Здесь мы должны присвоить нашему изображению тег, используя -t, за которым следует имя изображения и точка(.), используемая для выбора текущая папка, в которую я скопировал файлы.

docker build -t lr_salary_pred .

После создания образа, как мы видим с помощью команды docker images, был создан новый образ.

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

docker run -it --name <container_name> <image_name>

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

Вот так ребята!! Мы сделали это !!

Спасибо, что прочитали эту статью, надеюсь, вам понравилось :)