MLflow és Azure Machine Learning
ÉRVÉNYES:Azure CLI ml-bővítmény v2 (aktuális)
Python SDK azure-ai-ml v2 (aktuális)
Az MLflow egy nyílt forráskódú keretrendszer, amely a teljes gépi tanulási életciklus kezelésére lett kialakítva. A modellek különböző platformokon való betanítása és kiszolgálása lehetővé teszi, hogy konzisztens eszközkészletet használjon, függetlenül attól, hogy hol futnak a kísérletek: akár helyileg a számítógépen, egy távoli számítási célon, egy virtuális gépen vagy egy Azure Machine Learning számítási példányon.
Az Azure Machine Learning-munkaterületek MLflow-kompatibilisek, ami azt jelenti, hogy az Azure Machine Learning-munkaterületeket ugyanúgy használhatja, mint egy MLflow-kiszolgálót. Ez a kompatibilitás a következő előnyökkel jár:
- Az Azure Machine Learning nem üzemeltet MLflow-kiszolgálópéldányokat a motorháztető alatt; A munkaterület inkább az MLflow API nyelvét beszéli.
- Az Azure Machine Learning-munkaterületeket követési kiszolgálóként használhatja bármilyen MLflow-kódhoz, függetlenül attól, hogy az Azure Machine Learningen fut-e. Csak úgy kell konfigurálnia az MLflow-t, hogy arra a munkaterületre mutasson, ahol a nyomon követésnek történnie kell.
- Minden olyan betanítási rutint futtathat, amely az MLflow-t használja az Azure Machine Learningben változtatás nélkül.
Tipp.
Az Azure Machine Learning SDK 1-sel ellentétben az SDK v2-ben nincs naplózási funkció. Javasoljuk, hogy az MLflow-t használja a naplózáshoz, hogy a betanítási rutinok felhőszintűek és hordozhatóak legyenek – így eltávolítva a kód azure Machine Learning-függőségeit.
Nyomon követés az MLflow használatával
Az Azure Machine Learning MLflow-nyomkövetést használ a metrikák naplózásához és az összetevők tárolásához a kísérletekhez. Amikor csatlakozik az Azure Machine Learninghez, az MLflow használatával végzett összes nyomon követés a munkaterületen valósul meg, amelyen dolgozik. Ha többet szeretne megtudni arról, hogyan állíthatja be kísérleteit az MLflow használatával a kísérletek és a betanítási rutinok nyomon követésére, tekintse meg az MLflow-ral rendelkező naplómetrikákat, paramétereket és fájlokat. Az MLflow használatával is lekérdezheti és összehasonlíthatja a kísérleteket és a futtatásokat.
Az MLflow az Azure Machine Learningben lehetővé teszi a nyomon követés központosítását. Az MLflow-t akkor is csatlakoztathatja az Azure Machine Learning-munkaterületekhez, ha helyileg vagy egy másik felhőben dolgozik. A munkaterület központosított, biztonságos és méretezhető helyet biztosít a betanítási metrikák és modellek tárolásához.
Az MLflow használata az Azure Machine Learningben az alábbi képességeket tartalmazza:
- Nyomon követheti a helyileg vagy a felhőben futó gépi tanulási kísérleteket és modelleket.
- Kövesse nyomon az Azure Databricks gépi tanulási kísérleteit.
- Kövesse nyomon az Azure Synapse Analytics gépi tanulási kísérleteit.
Példajegyzetfüzetek
- XGBoost-osztályozó betanítása és nyomon követése az MLflow használatával: Bemutatja, hogyan követheti nyomon a kísérleteket MLflow, naplómodellek használatával, és hogyan kombinálhat több ízt a folyamatokban.
- XGBoost-osztályozó betanítása és nyomon követése az MLflow használatával szolgáltatásnév-hitelesítéssel: Bemutatja, hogyan követheti nyomon a kísérleteket az Azure Machine Learningen kívül futó számításból származó MLflow használatával. A példa bemutatja, hogyan hitelesíthető az Azure Machine Learning-szolgáltatásokkal egy szolgáltatásnév használatával.
- Hyper-parameter optimization using HyperOpt and nested runs in MLflow: How to use child runs in MLflow to do hyper-parameter optimization for models by using the popular library
Hyperopt
. A példa bemutatja, hogyan továbbíthat metrikákat, paramétereket és összetevőket a gyermekfuttatásokból a szülőfuttatásokra. - Modellek naplózása MLflow használatával: Bemutatja, hogyan használhatja a modellek fogalmát összetevők helyett az MLflow használatával. A példa azt is bemutatja, hogyan hozhat létre egyéni modelleket.
- Futtatások és kísérletek kezelése az MLflow használatával: Bemutatja, hogyan kérdezhet le kísérleteket, futtatásokat, metrikákat, paramétereket és összetevőket az Azure Machine Learningből az MLflow használatával.
Nyomon követés MLflow-val az R-ben
Az R MLflow-támogatása a következő korlátozásokkal rendelkezik:
- Az MLflow-nyomkövetés az Azure Machine Learning-feladatok kísérletmetrikáinak, paramétereinek és modelljeinek nyomon követésére korlátozódik.
- Az RStudio, a Posit (korábbi nevén RStudio Workbench) vagy az R kernelekkel rendelkező Jupyter-jegyzetfüzetek interaktív betanítása nem támogatott.
- A modellkezelés és a regisztráció nem támogatott az MLflow R SDK használatával. Ehelyett használja az Azure Machine Learning CLI-t vagy az Azure Machine Learning Studiót a modellregisztrációhoz és -kezeléshez.
Az MLflow-követési ügyfél Azure Machine Learning-lel való használatáról az R-modellek betanítása az Azure Machine Learning CLI (v2) használatával című témakörben olvashat.
Nyomon követés az MLflow használatával a Javában
A Java MLflow-támogatása a következő korlátozásokkal rendelkezik:
- Az MLflow-nyomkövetés az Azure Machine Learning-feladatok kísérletmetrikáinak és paramétereinek nyomon követésére korlátozódik.
- Az összetevők és modellek nem követhetők nyomon az MLflow Java SDK használatával. Ehelyett használja a
Outputs
feladatmappát a metódussal együtt amlflow.save_model
rögzíteni kívánt modellek (vagy összetevők) mentéséhez.
Az MLflow-követő ügyfél Azure Machine Learningdel való használatáról az MLflow-követő ügyfelet az Azure Machine Learningtel használó Java-példa szemlélteti.
Modellregisztrációs adatbázisok az MLflow használatával
Az Azure Machine Learning támogatja az MLflow-t a modellkezeléshez. Ez a támogatás kényelmes módot jelent az MLflow-ügyfelet ismerő felhasználók teljes modelléletciklusának támogatására.
Ha többet szeretne megtudni arról, hogyan kezelheti a modelleket az MLflow API-val az Azure Machine Learningben, tekintse meg a modellregisztrációs adatbázisok kezelését az Azure Machine Learningben az MLflow használatával.
Példajegyzetfüzet
- Modellregisztrációs adatbázisok kezelése az MLflow használatával: Bemutatja, hogyan kezelheti a modelleket a regisztrációs adatbázisokban az MLflow használatával.
Modell üzembe helyezése az MLflow használatával
MLflow-modelleket helyezhet üzembe az Azure Machine Learningben, és kihasználhatja a továbbfejlesztett felhasználói élményt az MLflow-modellek használatakor. Az Azure Machine Learning támogatja az MLflow-modellek valós idejű és kötegelt végpontokon való üzembe helyezését anélkül, hogy környezetet vagy pontozószkriptet kellene megadnia. Az üzembe helyezést az MLflow SDK, az Azure Machine Learning CLI, a Pythonhoz készült Azure Machine Learning SDK vagy az Azure Machine Learning Studio támogatja.
Ha többet szeretne megtudni az MLflow-modellek Azure Machine Learningben való valós idejű és kötegelt következtetésre történő üzembe helyezéséről, tekintse meg az MLflow-modellek üzembe helyezésének irányelveit.
Példajegyzetfüzetek
- MLflow üzembe helyezése online végpontokon: Bemutatja, hogyan helyezhet üzembe modelleket MLflow formátumban az online végpontokon az MLflow SDK használatával.
- MLflow üzembe helyezése online végpontokon biztonságos bevezetéssel: Bemutatja, hogyan helyezhet üzembe modelleket MLflow formátumban online végpontokon az MLflow SDK használatával a modellek fokozatos bevezetése mellett. A példa azt is mutatja, hogy a modell több verziója is ugyanarra a végpontra van üzembe helyezve.
- MLflow üzembe helyezése webszolgáltatásokban (V1): Bemutatja, hogyan helyezhet üzembe modelleket MLflow formátumban a webszolgáltatásokban (ACI/AKS v1) az MLflow SDK használatával.
- Az Azure Databricksben betanított modellek üzembe helyezése az Azure Machine Learningben az MLflow használatával: Bemutatja, hogyan taníthat be modelleket az Azure Databricksben, és hogyan helyezheti üzembe őket az Azure Machine Learningben. A példa azt is ismerteti, hogyan kezelheti azokat az eseteket, amikor az Azure Databricks MLflow-példányával végzett kísérleteket is nyomon szeretné követni.
Betanítás MLflow-projektekkel (előzetes verzió)
Fontos
A cikkben megjelölt (előzetes verziójú) elemek jelenleg nyilvános előzetes verzióban érhetők el. Az előzetes verzió szolgáltatásszint-szerződés nélkül érhető el, és éles számítási feladatokhoz nem ajánlott. Előfordulhat, hogy néhány funkció nem támogatott, vagy korlátozott képességekkel rendelkezik. További információ: Kiegészítő használati feltételek a Microsoft Azure előzetes verziójú termékeihez.
A betanítási feladatokat MLflow-projektek (előzetes verzió) használatával küldheti el az Azure Machine Learningbe. Feladatokat küldhet be helyileg az Azure Machine Learning nyomon követésével, vagy migrálhatja a feladatokat a felhőbe az Azure Machine Learning compute használatával.
Ha tudni szeretné, hogyan küldhet be betanítási feladatokat az Azure Machine Learning-munkaterületeket követő MLflow-projektekkel, olvassa el a gépi tanulási modellek betanítását MLflow-projektekkel és Az Azure Machine Learning szolgáltatással.
Példajegyzetfüzetek
- MLflow-projekt nyomon követése az Azure Machine Learning-munkaterületeken.
- MLflow-projekt betanítása és futtatása Azure Machine Learning-feladatokon.
MLflow SDK, Azure Machine Learning v2 és Azure Machine Learning Studio képességek
Az alábbi táblázat a gépi tanulási életciklusban elérhető összes ügyféleszköz használatával mutatja be a lehetséges műveleteket.
Szolgáltatás | MLflow SDK | Azure Machine Learning CLI/SDK | Azure Machine Learning Studio |
---|---|---|---|
Metrikák, paraméterek és modellek nyomon követése és naplózása | ✓ | ||
Metrikák, paraméterek és modellek lekérése | ✓ | 1 | ✓ |
Betanítási feladatok elküldése | ✓2 | ✓ | ✓ |
Betanítási feladatok beküldése azure Machine Learning-adategységekkel | ✓ | ✓ | |
Betanítási feladatok elküldése gépi tanulási folyamatokkal | ✓ | ✓ | |
Kísérletek és futtatások kezelése | ✓ | ✓ | ✓ |
MLflow-modellek kezelése | ✓3 | ✓ | ✓ |
Nem MLflow-modellek kezelése | ✓ | ✓ | |
MLflow-modellek üzembe helyezése az Azure Machine Learningben (Online > Batch) | ✓4 | ✓ | ✓ |
Nem MLflow-modellek üzembe helyezése az Azure Machine Learningben | ✓ | ✓ |
Feljegyzés
- 1 Csak összetevők és modellek tölthetők le.
- 2 MLflow-projektek (előzetes verzió) használatával lehetséges.
- 3 Előfordulhat, hogy egyes műveletek nem támogatottak. Részletekért tekintse meg a modellregisztrációs adatbázisok kezelését az Azure Machine Learningben az MLflow használatával.
- 4 Az MLflow-modellek üzembe helyezése kötegelt következtetéshez az MLflow SDK használatával jelenleg nem lehetséges. Alternatív megoldásként tekintse meg az MLflow-modellek üzembe helyezését és futtatását a Spark-feladatokban.
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: