Modellek betanítása az Azure Machine Learninggel

A KÖVETKEZŐKRE VONATKOZIK: Python SDK azure-ai-ml v2 (aktuális)

Azure Machine Learning többféle módon taníthatja be a modelleket, az SDK-t használó kódelső megoldásoktól kezdve az olyan alacsony kódszámú megoldásokig, mint az automatizált gépi tanulás és a vizuális tervező. Az alábbi lista segítségével állapítsa meg, hogy melyik betanítási módszer megfelelő Önnek:

  • Azure Machine Learning SDK for Python: A Python SDK számos módszert kínál a modellek betanítása, mindegyik különböző képességekkel rendelkezik.

    Betanítási módszer Leírás
    command() A modellek betanításának tipikus módja egy betanítási szkriptet, környezetet és számítási információkat tartalmazó parancs(ok) elküldése.
    Automatizált gépi tanulás Az automatizált gépi tanulás lehetővé teszi modellek betanítása széles körű adatelemzési vagy programozási ismeretek nélkül. Az adatelemzési és programozási háttérrel rendelkező felhasználók számára az algoritmusok kiválasztásának és a hiperparaméterek finomhangolásának automatizálásával időt és erőforrásokat takaríthat meg. Továbbra is konfigurálja az automatizált gépi tanulási feladatot olyan beállításokkal, mint a tevékenységtípus, a betanítási adatok, a céloszlop, a számítás és a korlátok.
    Gépi tanulási folyamat A folyamatcsövek nem egy eltérő tanítási módszert jelentenek, hanem egy munkafolyamat moduláris, újrafelhasználható lépések használatával történő meghatározásának módját, amelynek része lehet a tanítás is. A gépi tanulási folyamatok támogatják az automatizált gépi tanulási és parancsfeladatok használatát a modellek betanítása érdekében. Mivel a pipeline-ok nem kifejezetten a képzésre összpontosítanak, a használatuk okai sokfélébbek, mint a többi képzési módszer esetében. Általában a következő esetekben használhat folyamatokat:
    * Felügyelet nélküli folyamatokat szeretne ütemezni, például hosszú ideig futó betanítási feladatokat vagy adatelőkészítést.
    * Használjon több lépést , amelyek heterogén számítási erőforrások és tárolási helyek között vannak koordinálva.
    * Használja a folyamatot újrafelhasználható sablonként bizonyos forgatókönyvekben, például újratanításhoz vagy kötegelt pontozáshoz.
    * Nyomon követheti és verziószámozhatja a munkafolyamat adatforrásait, bemeneteit és kimeneteit .
    * A munkafolyamatot különböző csapatok implementálják , amelyek egymástól függetlenül dolgoznak bizonyos lépéseken. Ezután a munkafolyamat implementálásához a lépések összekapcsolhatók egy folyamaton belül.
  • Tervező: Az Azure Machine Learning Designer egyszerű belépési pontot biztosít a gépi tanulásba az alapfogalmak készítéséhez, vagy a kevés kódolási tapasztalattal rendelkező felhasználók számára. Lehetővé teszi modellek betanítását egy fogd és vidd webalapú felhasználói felületen. A Python-kódot a tervezés részeként használhatja, vagy kódírás nélkül taníthat be modelleket.

  • Azure CLI: A gépi tanulási parancssori felület parancsokat biztosít az Azure Machine Learning gyakori feladataihoz, és gyakran használják szkriptelésre és feladatok automatizálására. Ha például létrehozott egy betanítási szkriptet vagy folyamatot, az Azure CLI használatával elindíthat egy betanítási feladatot ütemezés szerint, vagy ha a betanításhoz használt adatfájlok frissülnek. A betanítási modellekhez olyan parancsokat biztosít, amelyek betanítási feladatokat küldenek. Parancsfeladatokat, automatizált gépi tanulási feladatokat és folyamatfeladatokat küldhet be.

Ezek a betanítási módszerek különböző típusú számítási erőforrásokat használhatnak a betanításhoz. Ezeket az erőforrásokat együttesen számítási céloknak nevezzük. A számítási cél lehet helyi gép vagy felhőerőforrás, például Azure Machine Learning Compute, Azure HDInsight vagy távoli virtuális gép.

Python SDK

A Pythonhoz készült Azure Machine Learning SDK-val gépi tanulási munkafolyamatokat hozhat létre és futtathat az Azure Machine Learning használatával. A szolgáltatás interaktív Python munkamenetből, Jupyter Notebookból, Visual Studio Code vagy más IDE-ből használható.

Parancs elküldése

A Azure Machine Learning általános betanítási feladat a command() függvény használatával határozható meg. Ezután a parancsobjektum és a betanítási szkriptek segítségével betanít egy modellt a megadott számítási célon.

A helyi számítógép parancsobjektumával kezdheti, majd szükség szerint válthat egy felhőalapú számítási célhoz. A számítási cél módosításakor csak a használt Command objektumban módosítja a számítási paramétert. A futtatás a betanítási feladat adatait is naplózza, például a bemeneteket, kimeneteket és naplókat.

Automatizált gépi tanulás

Határozza meg az iterációkat, a hiperparaméter-beállításokat, a featurizációt és az egyéb beállításokat. A betanítás során az Azure Machine Learning különböző algoritmusokat és paramétereket próbál ki párhuzamosan. A betanítás leáll, amint eléri a megadott kilépési feltételeket.

Tipp

A Python SDK mellett az Automatizált gépi tanulást is használhatja az Azure Machine Learning Studióban.

Gépi tanulási folyamat

A gépi tanulási folyamatok használhatják a korábban említett betanítási módszereket. A pipeline-ok inkább egy munkafolyamat kialakításáról szólnak, tehát többet foglalnak magukban, mint pusztán a modellek betanítását.

A betanítási feladat beküldésekor megjelenő teendők ismertetése

Egy tipikus szkriptalapú parancsfeladat Azure betanítási életciklusa a következő lépésekből áll. Az automatizált gépi tanulási feladatok és a folyamat-feladatok hasonló munkafolyamatot követnek, de a pontos végrehajtás és a rendszerkép-gyorsítótárazás módja a feladat típusától és a környezettől függően eltérhet:

  1. Tömörítse a projektmappában lévő fájlokat, és töltse fel őket a felhőbe.

    Tipp

    Ha meg szeretné akadályozni, hogy a szükségtelen fájlok bekerüljenek a pillanatképbe, hozzon létre egy figyelmen kívül hagyott fájlt (.gitignore vagy .amlignore) a könyvtárban. Adja hozzá a kizárni kívánt fájlokat és könyvtárakat ehhez a fájlhoz. Az ebben a fájlban használandó szintaxissal kapcsolatos további információkért lásd: szintaxis és minták ehhez: .gitignore. A .amlignore fájl ugyanazt a szintaxist használja. Ha mindkét fájl létezik, a rendszer a .amlignore fájlt használja, és a .gitignore fájl nincs használatban.

  2. Skálázza fel a számítási fürtöt vagy a kiszolgáló nélküli számítást.

  3. A dockerfile létrehozása vagy letöltése a számítási csomópontra

    1. A rendszer a következő kivonatot számítja ki:
    2. A rendszer ezt a kivonatot használja kulcsként az Azure Container Registry (ACR) munkaterület keresésében
    3. Ha nem található, egyezést keres a globális ACR-ben
    4. Ha nem található, a rendszer létrehoz egy új rendszerképet (amely gyorsítótárba kerül, és regisztrálja a munkaterület ACR-jében)
  4. Tömörített projektfájl letöltése ideiglenes tárolóba a számítási csomóponton

  5. A projektfájl kibontása

  6. Futtassa a számítási csomópontot a feladat által megadott paranccsal, például python <entry script> <arguments> egy Python betanítási szkripthez.

  7. Naplók, modellfájlok és a munkaterülethez társított tárfiókba ./outputs írt egyéb fájlok mentése

  8. Számítási kapacitás vertikális leskálázása, beleértve az ideiglenes tárterület eltávolítását is

Azure Machine Learning-tervező

A Designer lehetővé teszi a modellek betanítását a webböngészőben, fogd és vidd felületen.

Azure CLI (Az Azure parancssori felülete)

A gépi tanulási parancssori felület az Azure CLI bővítménye. Platformfüggetlen CLI-parancsokat biztosít az Azure Machine Learning használatához. Általában a parancssori felülettel automatizálja a feladatokat, például betanít egy gépi tanulási modellt.

VS Code

A VS Code bővítmény használatával futtathatja és kezelheti a betanítási feladatokat. További információkért tekintse meg a VS Code erőforrás-kezelési útmutatóját.

Következő lépések

Ezután megtudhatja, hogyan hozhat létre éles ML-folyamatokat az Python SDK v2-vel egy Jupyter-jegyzetfüzetben.