Maskinlæringseksperimenter i Microsoft Fabric
Et maskinlæringseksperiment er den primære enheten for organisering og kontroll for alle relaterte maskinlæringskjøringer. En kjøring tilsvarer en enkelt kjøring av modellkode. I MLflow er sporing basert på eksperimenter og kjøringer.
Maskinlæringseksperimenter gjør det mulig for dataforskere å logge parametere, kodeversjoner, måledata og utdatafiler når de kjører maskinlæringskoden. Eksperimenter lar deg også visualisere, søke etter og sammenligne kjøringer, samt laste ned kjøre filer og metadata for analyse i andre verktøy.
I denne artikkelen lærer du mer om hvordan dataforskere kan samhandle med og bruke maskinlæringseksperimenter til å organisere utviklingsprosessen og spore flere kjøringer.
Forutsetning
- Et Power BI Premium-abonnement. Hvis du ikke har en, kan du se Slik kjøper du Power BI Premium.
- Et Power BI-arbeidsområde med tilordnet Premium-kapasitet.
Opprette et eksperiment
Du kan opprette et maskinlæringseksperiment direkte fra hjemmesiden for datavitenskap i brukergrensesnittet i Power BI eller ved å skrive kode som bruker MLflow-API-en.
Opprette et eksperiment ved hjelp av brukergrensesnittet
Slik oppretter du et maskinlæringseksperiment fra brukergrensesnittet:
Opprett et nytt arbeidsområde for datavitenskap, eller velg et eksisterende arbeidsområde.
Velg Eksperimenter fra «Ny»-delen.
Angi et eksperimentnavn, og velg Opprett. Denne handlingen oppretter et tomt eksperiment i arbeidsområdet.
Når du har opprettet eksperimentet, kan du begynne å legge til kjøringer for å spore kjøremetrikk og parametere.
Opprette et eksperiment ved hjelp av API-en for MLflow
Du kan også opprette et maskinlæringseksperiment direkte fra redigeringsopplevelsen ved hjelp av mlflow.create_experiment()
API-ene eller mlflow.set_experiment()
API-ene. Erstatt <EXPERIMENT_NAME>
med eksperimentets navn i følgende kode.
import mlflow
# This will create a new experiment with the provided name.
mlflow.create_experiment("<EXPERIMENT_NAME>")
# This will set the given experiment as the active experiment.
# If an experiment with this name does not exist, a new experiment with this name is created.
mlflow.set_experiment("<EXPERIMENT_NAME>")
Administrere kjøringer i et eksperiment
Et maskinlæringseksperiment inneholder en samling kjøringer for forenklet sporing og sammenligning. I et eksperiment kan en dataforsker navigere på tvers av ulike kjøringer og utforske de underliggende parameterne og måledataene. Dataforskere kan også sammenligne kjøringer i et maskinlæringseksperiment for å identifisere hvilket delsett av parametere som gir en ønsket modellytelse.
Spor kjøringer
En maskinlæringskjøring tilsvarer én kjøring av modellkode.
Hver kjøring inneholder følgende informasjon:
- Kilde: Navnet på notatblokken som opprettet kjøringen.
- Registrert versjon: Angir om kjøringen ble lagret som en maskinlæringsmodell.
- Startdato: Starttidspunkt for kjøringen.
- Status: Fremdriften for kjøringen.
- Hyperparametere: Hyperparametere lagret som nøkkelverdipar. Både nøkler og verdier er strenger.
- Måledata: Kjør måledata som er lagret som nøkkelverdipar. Verdien er numerisk.
- Utdatafiler: Utdatafiler i alle formater. Du kan for eksempel ta opp bilder, miljø, modeller og datafiler.
Vis nylige kjøringer
Du kan også vise nylige kjøringer for et eksperiment direkte fra listevisningen i arbeidsområdet. Med denne visningen kan du holde oversikt over nylig aktivitet, raskt hoppe til det relaterte Spark-programmet og bruke filtre basert på kjørestatusen.
Sammenligne og filtrere kjøringer
Hvis du vil sammenligne og evaluere kvaliteten på maskinlæringskjøringene, kan du sammenligne parametere, måledata og metadata mellom valgte kjøringer i et eksperiment.
Sammenligne kjøringer visuelt
Du kan visuelt sammenligne og filtrere kjøringer i et eksisterende eksperiment. Med visualobjektsammenligning kan du enkelt navigere mellom flere kjøringer og sortere på tvers av dem.
Slik sammenligner du kjøringer:
- Velg et eksisterende maskinlæringseksperiment som inneholder flere kjøringer.
- Velg Vis-fanen, og gå deretter til Kjør listevisning. Alternativt kan du velge alternativet for å vise kjørelisten direkte fra visningen Kjør detaljer .
- Tilpass kolonnene i tabellen ved å utvide ruten Tilpass kolonner . Her kan du velge egenskapene, måledataene og hyperparameterne du vil se.
- Utvid filterruten for å begrense resultatene basert på bestemte valgte vilkår.
- Velg flere kjøringer for å sammenligne resultatene i sammenligningsruten for måledata. Fra denne ruten kan du tilpasse diagrammene ved å endre diagramtittelen, visualiseringstypen, X-aksen, Y-aksen med mer.
Sammenligne kjøringer ved hjelp av API-en for MLflow
Dataforskere kan også bruke MLflow til å spørre og søke blant kjøringer i et eksperiment. Du kan utforske flere MLflow-API-er for søk, filtrering og sammenligning av kjøringer ved å gå til MLflow-dokumentasjonen.
Få alle kjøringer
Du kan bruke MLflow-søke-API-en mlflow.search_runs()
til å få alle kjøringer i et eksperiment ved å <EXPERIMENT_NAME>
erstatte med eksperimentnavnet eller <EXPERIMENT_ID>
med eksperiment-ID-en i følgende kode:
import mlflow
# Get runs by experiment name:
mlflow.search_runs(experiment_names=["<EXPERIMENT_NAME>"])
# Get runs by experiment ID:
mlflow.search_runs(experiment_ids=["<EXPERIMENT_ID>"])
Tips
Du kan søke på tvers av flere eksperimenter ved å gi parameteren experiment_ids
en liste over eksperiment-ID-er. På samme måte vil det å gi en liste over eksperimentnavn til parameteren experiment_names
tillate MLflow å søke på tvers av flere eksperimenter. Dette kan være nyttig hvis du vil sammenligne på tvers av kjøringer i ulike eksperimenter.
Bestillings- og grensekjøringer
Bruk parameteren max_results
fra search_runs
for å begrense antallet kjøringer som returneres. Parameteren order_by
lar deg vise kolonnene du vil bestille etter, og kan inneholde en valgfri DESC
verdi eller ASC
verdi. Eksemplet nedenfor returnerer for eksempel den siste kjøringen av et eksperiment.
mlflow.search_runs(experiment_ids=[ "1234-5678-90AB-CDEFG" ], max_results=1, order_by=["start_time DESC"])
Sammenligne kjøringer i en Fabric-notatblokk
Du kan bruke kontrollprogrammet for MLFlow-redigering i Fabric-notatblokker til å spore MLflow-kjøringer som genereres i hver notatblokkcelle. Kontrollprogrammet lar deg spore kjøringer, tilknyttede måledata, parametere og egenskaper helt ned til det individuelle cellenivået.
Hvis du vil få en visuell sammenligning, kan du også bytte til Kjør sammenligningsvisning . Denne visningen presenterer dataene grafisk, noe som bidrar til rask identifisering av mønstre eller avvik på tvers av ulike kjøringer.
Lagre kjøring som maskinlæringsmodell
Når en kjøring gir det ønskede resultatet, kan du lagre kjøringen som en modell for forbedret modellsporing og for modelldistribusjon ved å velge Lagre som en ML-modell.
Relatert innhold
Tilbakemeldinger
https://aka.ms/ContentUserFeedback.
Kommer snart: Gjennom 2024 faser vi ut GitHub Issues som tilbakemeldingsmekanisme for innhold, og erstatter det med et nytt system for tilbakemeldinger. Hvis du vil ha mer informasjon, kan du se:Send inn og vis tilbakemelding for