Design för omträning
När du förbereder din modell för produktion i en MLOps-lösning (Machine Learning Operations) måste du utforma för omträning.
I allmänhet finns det två metoder för när du vill träna om en modell:
- Baserat på ett schema: när du vet att du alltid behöver den senaste versionen av modellen kan du välja att träna om din modell varje vecka, eller varje månad, baserat på ett schema.
- Baserat på mått: om du bara vill träna om din modell vid behov kan du övervaka modellens prestanda och dataavvikelse för att bestämma när du behöver träna om modellen.
I båda fallen måste du utforma för omträning. För att enkelt träna om din modell bör du förbereda koden för automatisering.
Förbereda koden
Helst bör du träna modeller med skript i stället för notebook-filer. Skript passar bättre för automatisering. Du kan lägga till parametrar i ett skript och ändra indataparametrar som träningsdata eller hyperparametervärden. När du parameteriserar skripten kan du enkelt träna modellen på nya data om det behövs.
En annan viktig sak att förbereda koden är att vara värd för koden på en central lagringsplats. En lagringsplats refererar till en plats där alla relevanta filer till ett projekt lagras. Med maskininlärningsprojekt är Git-baserade lagringsplatser idealiska för att uppnå källkontroll.
När du tillämpar källkontroll på projektet kan du enkelt samarbeta i ett projekt. Du kan tilldela någon för att förbättra modellen genom att uppdatera koden. Du kommer att kunna se tidigare ändringar och du kan granska ändringarna innan de checkas in på huvudlagringsplatsen.
Automatisera din kod
När du vill köra koden automatiskt kan du konfigurera Azure Machine Learning-jobb för att köra skript. I Azure Machine Learning kan du också skapa och schemalägga pipelines för att köra skript.
Om du vill att skript ska köras baserat på en utlösare eller händelse som inträffar utanför Azure Machine Learning kanske du vill utlösa Azure Machine Learning-jobbet från ett annat verktyg.
Två verktyg som ofta används i MLOps-projekt är Azure DevOps och GitHub (Actions). Med båda verktygen kan du skapa automatiseringspipelines och utlösa Azure Machine Learning-pipelines.
Som dataexpert kanske du föredrar att arbeta med Azure Machine Learning Python SDK. Men när du arbetar med verktyg som Azure DevOps och GitHub kanske du föredrar att konfigurera nödvändiga resurser och jobb med Azure Machine Learning CLI-tillägget i stället. Azure CLI är utformat för att automatisera uppgifter och kan vara enklare att använda med Azure DevOps och GitHub.
Tips/Råd
Om du vill lära dig mer om MLOps kan du utforska introduktionen till maskininlärningsåtgärder (MLOps) eller försöka skapa din första MLOps-automatiseringspipeline med GitHub Actions