Modellfejlesztés nyomon követése az MLflow használatával
Ez a cikk példákat tartalmaz az Azure Databricks modellfejlesztésének nyomon követésére. Az ML- és mélytanulási modellek naplózása és nyomon követése automatikusan az MLflow használatával vagy manuálisan az MLflow API-val.
Modellkövetés > MLflow
A modellfejlesztés folyamata ismétlődő, és a munka nyomon követése kihívást jelenthet a modellek fejlesztése és optimalizálása során. Az Azure Databricksben az MLflow-követés segítségével nyomon követheti a modellfejlesztési folyamatot, például a már kipróbált paraméterbeállításokat vagy -kombinációkat, illetve azt, hogy ezek milyen hatással vannak a modell teljesítményére.
Az MLflow-nyomkövetés kísérleteket és futtatásokat használ az ML- és mélytanulási modellek fejlesztésének naplózásához és nyomon követéséhez. A futtatás a modellkód egyszeri végrehajtása. Az MLflow-futtatások során naplózhatja a modell paramétereit és eredményeit. A kísérletek a kapcsolódó futtatások gyűjteményei. Egy kísérletben összehasonlíthatja és szűrheti a futtatásokat, hogy megértse, hogyan teljesít a modell, és hogyan függ a teljesítmény a paraméterbeállításoktól, a bemeneti adatoktól stb.
A cikkben található jegyzetfüzetek egyszerű példákat tartalmaznak, amelyek segítségével gyorsan megkezdheti az MLflow használatát a modellfejlesztés nyomon követéséhez. Az MLflow-nyomkövetés Azure Databricksben való használatával kapcsolatos további részletekért lásd az ML és a mélytanulási betanítási futtatások nyomon követését.
Feljegyzés
Az MLflow-nyomkövetés nem támogatja az spark_submit_task a Jobs API-ban küldött feladatokat. Ehelyett az MLflow-projektek használatával futtathatja a Spark-kódot.
Az automatikus naplózás használata a modellfejlesztés nyomon követéséhez
Az MLflow automatikusan naplózhatja a számos ML- és mélytanulási keretrendszerben írt betanítási kódot. Az MLflow-követés használata így kezdhető meg a legegyszerűbben.
Ez a példaként szolgáló jegyzetfüzet bemutatja, hogyan használható az automatikus naplózás a scikit-learn alkalmazásával. További információ az egyéb Python-kódtárakkal történő automatikus naplózásról: Betanítási futtatások automatikus naplózása az MLflow-ban.
A Python-jegyzetfüzet automatikus MLflow-naplózása
A naplózási API használata a modellfejlesztés nyomon követéséhez
Ez a jegyzetfüzet az MLflow naplózási API használatát mutatja be. A naplózási API használatával jobban szabályozhatja a naplózott metrikákat, és további összetevőket, például táblákat vagy diagramokat is naplózhat.
Ez a példaként szolgáló jegyzetfüzet a Python naplózási API használatát mutatja be. A MLflow REST, R és Java API-kkal is rendelkezik.
MLflow naplózási API Python-jegyzetfüzet
Végpontok közötti példa
Az oktatóanyagban található jegyzetfüzet egy modell betanításának teljes példáját mutatja be az Azure Databricksben, például az adatok betöltését, az adatok vizualizációját, a párhuzamos hiperparaméterek optimalizálását, illetve az MLflow használatát az eredmények megtekintésére, a modell regisztrálására és következtetések végrehajtására az új adatokon a regisztrált modell Spark UDF-ben való használatával.
Követelmények
Databricks Runtime ML
Példajegyzetfüzet
Ha a munkaterület engedélyezve van a Unity Cataloghoz, használja a jegyzetfüzet ezen verzióját:
Scikit-learn használata MLflow-integrációval a Databricksben (Unity Catalog)
Ha a munkaterület nincs engedélyezve a Unity Catalogban, használja a jegyzetfüzet ezen verzióját: