Paketering och containerisering

End-to-End Machine Learning

Joshua Stapleton

Machine Learning Engineer

Driftsättning och containerisering

Driftsättning

  • Paketera modell + beroenden i enheter
  • För körning i olika miljöer
  • Docker är de facto-standard för containerisering och driftsättning

Driftsättningsfasen i maskininlärningens livscykel

End-to-End Machine Learning

Docker

  • Plattform som förenklar utveckling med containers

Containers:

  • Paketerar applikationer som fristående enheter
  • Designade för att vara plattformsoberoende
  • Hämta Docker

 

DataCamp Docker Course

Docker-logotyp

End-to-End Machine Learning

Docker-användning del 1

Dockerfile: instruktioner för att bygga en container

# 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
End-to-End Machine Learning

Docker-användning del 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"]

Bygg den definierade imagen:

docker build -t heart_disease_model .
End-to-End Machine Learning

Taggning av containers

Taggning:

docker tag heart_disease_model:latest heart_disease_model:1.0
  • Gör images och containers enklare att identifiera och hantera.
  • Hjälper till att upprätthålla ett detaljerat och robust modellregister.
  • Efter taggning är vi redo att driftsätta!

Driftsättning visualiserad som en pil

End-to-End Machine Learning

Bästa praxis

Även om Docker förenklar paketering av modeller...

  • Tänk på säkerheten
  • Inkludera inte känslig data
  • Använd betrodda images (från verifierade utvecklare)

Om din applikation innehåller känslig information...

  • Använd miljövariabler
  • T.ex. för anslutningssträngar och lösenord

Säkerhetslås

End-to-End Machine Learning

Nu kör vi en övning!

End-to-End Machine Learning

Preparing Video For Download...