Gépi tanulási kísérletek a Microsoft Fabricben
A gépi tanulási kísérlet az összes kapcsolódó gépi tanulási futtatás szervezetének és vezérlésének elsődleges egysége. A futtatás a modellkód egyetlen végrehajtásának felel meg. Az MLflow-ban a nyomkövetés kísérleteken és futtatásokon alapul.
A gépi tanulási kísérletek lehetővé teszik az adattudósoknak, hogy a gépi tanulási kód futtatásakor naplózzanak paramétereket, kódverziókat, metrikákat és kimeneti fájlokat. A kísérletek lehetővé teszik a futtatások vizualizációjának, keresésének és összehasonlításának, valamint a futtatási fájlok és metaadatok letöltését más eszközök elemzéséhez.
Ebben a cikkben többet tudhat meg arról, hogyan használhatják az adattudósok a gépi tanulási kísérleteket a fejlesztési folyamatuk rendszerezésére és több futtatás nyomon követésére.
Előfeltételek
- Power BI Premium-előfizetés. Ha nincs ilyenje, olvassa el a Power BI Premium vásárlása című témakört.
- Power BI-munkaterület hozzárendelt prémium szintű kapacitással.
Kísérlet létrehozása
Gépi tanulási kísérletet közvetlenül a Power BI felhasználói felületén található Adatelemzés kezdőlapjáról vagy az MLflow API-t használó kód megírásával hozhat létre.
Kísérlet létrehozása a felhasználói felületen
Gépi tanulási kísérlet létrehozása a felhasználói felületről:
Hozzon létre egy új adatelemzési munkaterületet, vagy válasszon ki egy meglévőt.
Válassza a Kísérlet lehetőséget az "Új" szakaszban.
Adjon meg egy kísérletnevet, és válassza a Létrehozás lehetőséget. Ez a művelet létrehoz egy üres kísérletet a munkaterületen belül.
A kísérlet létrehozása után elkezdhet futtatásokat hozzáadni a futtatási metrikák és paraméterek nyomon követéséhez.
Kísérlet létrehozása az MLflow API használatával
Gépi tanulási kísérletet közvetlenül a szerzői felületről is létrehozhat az mlflow.create_experiment()
API-k használatával mlflow.set_experiment()
. Az alábbi kódban cserélje le <EXPERIMENT_NAME>
a kísérlet nevét.
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>")
Futtatások kezelése kísérleten belül
A gépi tanulási kísérlet futtatások gyűjteményét tartalmazza az egyszerűbb nyomon követés és összehasonlítás érdekében. Egy kísérleten belül az adatelemzők különböző futtatások között navigálhatnak, és megismerhetik a mögöttes paramétereket és metrikákat. Az adattudósok a gépi tanulási kísérletben futtatott futtatásokat is összehasonlíthatják annak megállapításához, hogy a paraméterek mely részhalmaza eredményez kívánt modellteljesítményt.
Futtatások nyomon követése
A gépi tanulási futtatások a modellkód egyetlen végrehajtásának felelnek meg.
Minden futtatás a következő információkat tartalmazza:
- Forrás: A futtatás létrehozó jegyzetfüzetének neve.
- Regisztrált verzió: Azt jelzi, hogy a futtatás gépi tanulási modellként lett-e mentve.
- Kezdési dátum: A futtatás kezdési időpontja.
- Állapot: A futtatás állapota.
- Hiperparaméterek: Kulcs-érték párként mentett hiperparaméterek. A kulcsok és az értékek egyaránt sztringek.
- Metrikák: Kulcs-érték párként mentett metrikák futtatása. Az érték numerikus.
- Kimeneti fájlok: Kimeneti fájlok bármilyen formátumban. Rögzíthet például képeket, környezetet, modelleket és adatfájlokat.
Legutóbbi futtatások megtekintése
A kísérlet legutóbbi futtatásai közvetlenül a munkaterület listanézetéből is megtekinthetők. Ezzel a nézettel nyomon követheti a legutóbbi tevékenységeket, gyorsan ugorhat a kapcsolódó Spark-alkalmazásra, és szűrőket alkalmazhat a futtatási állapot alapján.
Futtatások összehasonlítása és szűrése
A gépi tanulási futtatások minőségének összehasonlításához és kiértékeléséhez összehasonlíthatja a paramétereket, metrikákat és metaadatokat a kísérletben kiválasztott futtatások között.
Futtatások vizuális összehasonlítása
Egy meglévő kísérleten belül vizuálisan összehasonlíthatja és szűrheti a futtatásokat. A vizuális összehasonlítással egyszerűen navigálhat több futtatás között, és rendezheti őket.
Futtatások összehasonlítása:
- Válasszon ki egy meglévő, több futtatásból álló gépi tanulási kísérletet.
- Válassza a Nézet lapot, majd lépjen a Futtatás lista nézetre. Másik lehetőségként választhatja a futtatási lista megtekintésének lehetőségét közvetlenül a Futtatás részletei nézetből.
- Az Oszlopok testreszabása panel kibontásával testre szabhatja a táblázat oszlopait . Itt kiválaszthatja a megtekinteni kívánt tulajdonságokat, metrikákat és hiperparamétereket.
- Bontsa ki a Szűrő panelt, hogy bizonyos kiválasztott feltételek alapján szűkítse az eredményeket.
- Több futtatás kiválasztásával összehasonlíthatja az eredményeket a metrikák összehasonlító paneljén. Ezen az ablaktáblán testre szabhatja a diagramokat a diagram címének, a vizualizáció típusának, az X tengelynek, az Y tengelynek és egyebeknek a módosításával.
Futtatások összehasonlítása az MLflow API használatával
Az adattudósok az MLflow használatával is lekérdezhetik és kereshetnek a kísérleten belüli futtatások között. Az MLflow dokumentációjában további MLflow API-kat is megismerhet a futtatások kereséséhez, szűréséhez és összehasonlításához.
Az összes futtatás lekérése
Az MLflow keresési API-val mlflow.search_runs()
egy kísérlet <EXPERIMENT_NAME>
összes futtatását lekérheti a kísérlet nevével vagy <EXPERIMENT_ID>
a kísérlet azonosítójával a következő kódban:
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>"])
Tipp.
Több kísérletben is kereshet, ha megadja a paraméternek a experiment_ids
kísérletazonosítók listáját. Hasonlóképpen, ha a paraméternek megadja a experiment_names
kísérletnevek listáját, az MLflow több kísérletben is kereshet. Ez akkor lehet hasznos, ha különböző kísérleteken belül szeretné összehasonlítani a futtatásokat.
Rendezés és korlátfuttatások
Használja a paramétert search_runs
a max_results
visszaadott futtatások számának korlátozásához. A order_by
paraméterrel listázhatja a sorrendbe rendezendő oszlopokat, és tartalmazhat egy választható DESC
vagy ASC
egy értéket. Az alábbi példa például egy kísérlet utolsó futtatását adja vissza.
mlflow.search_runs(experiment_ids=[ "1234-5678-90AB-CDEFG" ], max_results=1, order_by=["start_time DESC"])
Hálójegyzetfüzeten belüli futtatások összehasonlítása
A Fabric-jegyzetfüzetekben található MLFlow-szerkesztő widgettel nyomon követheti az egyes jegyzetfüzetcellákban létrehozott MLflow-futtatásokat. A widget lehetővé teszi a futtatások, a kapcsolódó metrikák, paraméterek és tulajdonságok nyomon követését közvetlenül az egyes cellaszintig.
A vizualizációk összehasonlításához átválthat a Futtatás összehasonlító nézetre is. Ez a nézet grafikusan jeleníti meg az adatokat, segítve a minták vagy eltérések gyors azonosítását a különböző futtatások között.
Futtatás mentése gépi tanulási modellként
Ha egy futtatás a kívánt eredményt adja, a futtatást modellként mentheti a továbbfejlesztett modellkövetéshez és a modell üzembe helyezéséhez a Mentés ml-modellként lehetőséget választva.
Kapcsolódó tartalom
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: