Eksperimenter med maskinel indlæring i Microsoft Fabric
Et maskinlæringseksperiment er den primære enhed for organisation og kontrol for alle relaterede kørsler af maskinel indlæring. En kørsel svarer til en enkelt udførelse af modelkoden. I MLflow er sporing baseret på eksperimenter og kørsler.
Vigtigt
Microsoft Fabric findes i øjeblikket i PRØVEVERSION. Disse oplysninger er relateret til et foreløbig produkt, der kan blive ændret væsentligt, før det udgives. Microsoft giver ingen garantier, udtrykt eller stiltiende, med hensyn til de oplysninger, der er angivet her.
Eksperimenter med maskinel indlæring gør det muligt for datateknikere at logføre parametre, kodeversioner, målepunkter og outputfiler, når de kører deres kode til maskinel indlæring. Med eksperimenter kan du også visualisere, søge efter og sammenligne kørsler samt downloade kørselsfiler og metadata til analyse i andre værktøjer.
I denne artikel får du mere at vide om, hvordan dataspecialister kan interagere med og bruge eksperimenter med maskinel indlæring til at organisere deres udviklingsproces og til at spore flere kørsler.
Forudsætninger
- Et Power BI Premium abonnement. Hvis du ikke har en, kan du se Sådan køber du Power BI Premium.
- Et Power BI-arbejdsområde med tildelt Premium-kapacitet.
Opret et eksperiment
Du kan oprette et eksperiment med maskinel indlæring direkte fra startsiden for datavidenskab i Power BI-brugergrænsefladen eller ved at skrive kode, der bruger MLflow-API'en.
Opret et eksperiment ved hjælp af brugergrænsefladen
Sådan opretter du et eksperiment med maskinel indlæring fra brugergrænsefladen:
Opret et nyt datavidenskabeskabsarbejdsområde, eller vælg et eksisterende.
Vælg Eksperimentér i sektionen "Ny".
Angiv et eksperimentnavn, og vælg Opret. Denne handling opretter et tomt eksperiment i dit arbejdsområde.
Når du har oprettet eksperimentet, kan du begynde at tilføje kørsler for at spore kørselsmålepunkter og parametre.
Opret et eksperiment ved hjælp af MLflow-API'en
Du kan også oprette et eksperiment til maskinel indlæring direkte fra din oprettelsesoplevelse ved hjælp af mlflow.create_experiment()
API'erne eller mlflow.set_experiment()
. I følgende kode skal du erstatte <EXPERIMENT_NAME>
med dit eksperiments navn.
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>")
Administrer kørsler i et eksperiment
Et eksperiment med maskinel indlæring indeholder en samling kørsler til forenklet sporing og sammenligning. I et eksperiment kan en dataforsker navigere på tværs af forskellige kørsler og udforske de underliggende parametre og målepunkter. Dataspecialister kan også sammenligne kørsler i et eksperiment med maskinel indlæring for at identificere, hvilket undersæt af parametre der giver en ønsket modelydeevne.
Sporkørsler
En kørsel af maskinel indlæring svarer til en enkelt udførelse af modelkode.
Hver kørsel indeholder følgende oplysninger:
- Kilde: Navnet på den notesbog, der oprettede kørslen.
- Registreret version: Angiver, om kørslen blev gemt som en model til maskinel indlæring.
- Startdato: Starttidspunktet for kørslen.
- Status: Status for kørslen.
- Hyperparameters: Hyperparameters, der er gemt som nøgleværdipar. Både nøgler og værdier er strenge.
- Målepunkter: Kør målepunkter, der er gemt som nøgleværdipar. Værdien er numerisk.
- Outputfiler: Outputfiler i et hvilket som helst format. Du kan f.eks. optage billeder, miljø, modeller og datafiler.
Sammenlign og filtrer kørsler
Hvis du vil sammenligne og evaluere kvaliteten af dine kørsler af maskinel indlæring, kan du sammenligne parametre, målepunkter og metadata mellem valgte kørsler i et eksperiment.
Sammenlign kørsler visuelt
Du kan visuelt sammenligne og filtrere kørsler i et eksisterende eksperiment. Det giver dig mulighed for nemt at navigere mellem flere kørsler og sortere på tværs af dem.
Sådan sammenligner du kørsler:
- Vælg et eksisterende eksperiment til maskinel indlæring, der indeholder flere kørsler.
- Vælg fanen Vis, og gå derefter til listevisningen Kør . Du kan også vælge indstillingen vis kørselsliste direkte fra visningen Kør detaljer .
- Tilpas kolonnerne i tabellen ved at udvide ruden Tilpas kolonner . Her kan du vælge de egenskaber, målepunkter og hyperparametre, du vil se.
- Udvid ruden Filter for at indsnævre dine resultater baseret på visse valgte kriterier.
- Vælg flere kørsler for at sammenligne deres resultater i ruden til sammenligning af målepunkter. I denne rude kan du tilpasse diagrammerne ved at ændre diagramtitlen, visualiseringstypen, X-aksen, Y-aksen og meget mere.
Sammenlign kørsler ved hjælp af MLflow-API'en
Dataspecialister kan også bruge MLflow til at forespørge på og søge blandt kørsler i et eksperiment. Du kan udforske flere MLflow-API'er til søgning, filtrering og sammenligning af kørsler ved at gå til MLflow-dokumentationen.
Hent alle kørsler
Du kan bruge MLflow-søge-API'en mlflow.search_runs()
til at få alle kørsler i et eksperiment ved at erstatte <EXPERIMENT_NAME>
med dit eksperimentnavn eller <EXPERIMENT_ID>
med dit eksperiment-id 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>"])
Tip
Du kan søge på tværs af flere eksperimenter ved at angive en liste over eksperiment-id'er til experiment_ids
parameteren. På samme måde vil angivelse af en liste over eksperimentnavne til experiment_names
parameteren gøre det muligt for MLflow at søge på tværs af flere eksperimenter. Dette kan være nyttigt, hvis du vil sammenligne på tværs af kørsler i forskellige eksperimenter.
Bestil og begræns kørsler
Brug parameteren max_results
fra search_runs
til at begrænse antallet af returnerede kørsler. Parameteren order_by
giver dig mulighed for at angive de kolonner, der skal sorteres efter, og kan indeholde en valgfri DESC
eller ASC
værdi. Følgende eksempel returnerer f.eks. den sidste kørsel af et eksperiment.
mlflow.search_runs(experiment_ids=[ "1234-5678-90AB-CDEFG" ], max_results=1, order_by=["start_time DESC"])
Gem kørsel som en model
Når en kørsel giver det ønskede resultat, kan du gemme kørslen som en model til forbedret modelsporing og til modelinstallation.