Упаковка и контейнеризация

Сквозное машинное обучение

Joshua Stapleton

Machine Learning Engineer

Развёртывание и контейнеризация

Развёртывание

  • Упаковка модели и зависимостей в единый блок
  • Для запуска в различных средах
  • Стандартный инструмент контейнеризации и развёртывания — Docker

Фаза развёртывания в жизненном цикле машинного обучения

Сквозное машинное обучение

Docker

  • Платформа для упрощения разработки с использованием контейнеров

Контейнеры:

  • Упаковывают приложение в автономный блок
  • Не зависят от платформы
  • Установить Docker

 

Курс по Docker на DataCamp

Логотип Docker

Сквозное машинное обучение

Использование Docker, часть 1

Dockerfile: инструкции по сборке контейнера

# Use an official Python runtime as a parent image
FROM Python:3.7

# Set the working directory in the container to /app WORKDIR /ML_pipeline
# Copy the current directory contents into the container at /app ADD . /ML_pipeline
# Install any needed packages specified in requirements.txt RUN pip install --no-cache-dir -r requirements.txt
Сквозное машинное обучение

Использование Docker, часть 2

# ... continued
# Make port 80 available to the world outside this container
EXPOSE 80
# Define environment variable
ENV NAME World
# Run app.py when the container launches
CMD ["Python", "ML_pipeline.py"]

Сборка образа:

docker build -t heart_disease_model .
Сквозное машинное обучение

Тегирование контейнеров

Тегирование:

docker tag heart_disease_model:latest heart_disease_model:1.0
  • Упрощает идентификацию образов и контейнеров и управление ими.
  • Помогает вести подробный реестр моделей.
  • После тегирования можно приступать к развёртыванию!

Развёртывание в виде стрелки

Сквозное машинное обучение

Рекомендации

Docker упрощает упаковку моделей, но...

  • Помните о безопасности
  • Не включайте конфиденциальные данные
  • Используйте доверенные образы (от проверенных разработчиков)

Если приложение работает с конфиденциальными данными...

  • Используйте переменные окружения
  • Например: для строк подключения и паролей

Замок безопасности

Сквозное машинное обучение

Давайте потренируемся!

Сквозное машинное обучение

Preparing Video For Download...