Apache Spark MLlib és automatizált MLflow-követés
Feljegyzés
Az MLlib automatizált MLflow-nyomkövetés elavult a Databricks Runtime 10.1 ML-t és újabb verziót futtató fürtökön, és alapértelmezés szerint le van tiltva a Databricks Runtime 10.2 ML-t és újabb verziót futtató fürtöken. Ehelyett az MLflow PySpark ML automatikus aktiválását használja a hívássalmlflow.pyspark.ml.autolog()
, amely alapértelmezés szerint engedélyezve van a Databricks autologging funkcióval.
Ha a régi MLlib automatizált MLflow-nyomkövetést szeretné használni a Databricks Runtime 10.2 ML vagy újabb verziójában, engedélyezze azt a Spark-konfigurációk spark.databricks.mlflow.trackMLlib.enabled true
és spark.databricks.mlflow.autologging.enabled false
a .
Az MLflow egy nyílt forráskódú platform, amely lehetővé teszi a teljes gépi tanulási életciklus kezelését. Az MLflow támogatja a gépi tanulási modellek hangolásának követését Pythonban, R-ben és Scalában. Csak Python-jegyzetfüzetek esetén a Databricks Runtime kibocsátási megjegyzéseinek verziói és kompatibilitása, valamint a Databricks Runtime for Machine Learning támogatja az Apache Spark MLlib-modellek automatikus MLflow-követését.
Az MLlib automatizált MLflow-nyomkövetésével a rendszer automatikusan naplózza a hiperparamétereket és a kiértékelési metrikákat használó CrossValidator
TrainValidationSplit
hangolási kódot az MLflow-ban. Automatizált MLflow-nyomkövetés nélkül explicit API-hívásokat kell kezdeményeznie az MLflow-ba való bejelentkezéshez.
MLflow-futtatások kezelése
CrossValidator
vagy TrainValidationSplit
naplózhatja a hangolási eredményeket beágyazott MLflow-futtatásokként:
- Fő- vagy szülőfuttatás: A fő futtatás adatai
CrossValidator
vagyTrainValidationSplit
naplózva. Ha már van aktív futtatás, a rendszer naplózza az adatokat ebbe az aktív futtatásba, és az aktív futtatás nem áll le. Ha nincs aktív futtatás, az MLflow létrehoz egy új futtatást, naplózza azt, és a visszatérés előtt befejezi a futtatást. - Gyermekfuttatások: A rendszer minden tesztelt hiperparaméter-beállítást és a megfelelő kiértékelési metrikát naplózza a főfuttatás alatt futó gyermekfuttatásba.
Híváskor fit()
az Azure Databricks aktív MLflow-futtatási felügyeletet javasol, azaz a hívást fit()
egy "with mlflow.start_run():
" utasításba csomagolja.
Ez biztosítja, hogy az adatok naplózása a saját MLflow főfuttatása alatt történik, és megkönnyíti a további címkék, paraméterek vagy metrikák naplózását az adott futtatáshoz.
Feljegyzés
Ha fit()
egy aktív MLflow-futtatáson belül többször is meghívják, a rendszer naplózza a több futtatásokat ugyanarra a fő futtatásra. Az MLflow-paraméterek és -címkék névütközéseinek feloldásához az MLflow hozzáfűz egy UUID-t az ütközésekkel rendelkező nevekhez.
Az alábbi Python-jegyzetfüzet az automatizált MLflow-nyomkövetést mutatja be.
Automatizált MLflow-nyomkövetési jegyzetfüzet
Miután végrehajtotta a műveleteket a jegyzetfüzet utolsó cellájában, az MLflow felhasználói felületének meg kell jelennie:
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: