Mi az az Azure Machine Tanulás összetevő?

ÉRVÉNYES:Azure CLI ml-bővítmény v2 (aktuális)Python SDK azure-ai-ml v2 (aktuális)

Az Azure Machine Tanulás-összetevők olyan önálló kódrészletek, amelyek egy lépést hajtanak végre egy gépi tanulási folyamatban. Az összetevők egy függvényhez hasonlóak – névvel, bemenetekkel, kimenetekkel és törzstel rendelkezik. Az összetevők az Azure Machine Tanulás folyamatok építőelemei.

Egy összetevő három részből áll:

  • Metaadatok: név, display_name, verzió, típus stb.
  • Interfész: bemeneti/kimeneti specifikációk (név, típus, leírás, alapértelmezett érték stb.).
  • Parancs, kód és környezet: az összetevő futtatásához szükséges parancs, kód és környezet.

Diagram of what a component looks like and how it looks in a pipeline. In addition to screenshots of a component in the CLI, SDK, and portal UI.

Miért érdemes összetevőt használni?

Ez egy jó mérnöki gyakorlat egy gépi tanulási folyamat létrehozásához egy teljes gépi tanulási feladat többlépéses munkafolyamatra való felosztásához. Így mindenki önállóan dolgozhat az adott lépésen. Az Azure Machine Tanulás egy összetevő a folyamat egy újrafelhasználható lépését jelöli. Az összetevők célja a folyamatépítés termelékenységének javítása. Konkrétan az összetevők ajánlata:

  • Jól definiált felület: Az összetevőknek jól meghatározott interfészre (bemenetre és kimenetre) van szükségük. Az interfész lehetővé teszi a felhasználó számára a lépések létrehozását és a lépések egyszerű csatlakoztatását. Az interfész elrejti a lépés összetett logikáját is, és megszünteti a lépés implementálásának megértését.

  • Megosztás és újrafelhasználás: A folyamatok építőelemeiként az összetevők egyszerűen megoszthatók és újra felhasználhatók folyamatok, munkaterületek és előfizetések között. Az egyik csapat által létrehozott összetevőket egy másik csapat fedezheti fel és használhatja.

  • Verziókövetés: Az összetevők verziószámozottak. Az összetevők gyártói folyamatosan fejleszthetik az összetevőket, és új verziókat tehetnek közzé. A felhasználók a folyamatuk adott összetevőverzióit használhatják. Ez kompatibilitást és reprodukálhatóságot biztosít számukra.

Tesztelhető egység: Az összetevők önálló kódrészletek. Egy összetevő egységtesztje egyszerűen írható.

Összetevő és folyamat

A gépi tanulási folyamat egy teljes gépi tanulási feladat munkafolyamata. Az összetevők a gépi tanulási folyamat építőelemei. Ha egy összetevőre gondol, annak a folyamat kontextusában kell lennie.

Az összetevők létrehozásához először meg kell határozni a gépi tanulási folyamatot. Ehhez a teljes gépi tanulási feladatot többlépéses munkafolyamatra kell bontani. Minden lépés egy összetevő. Ha például egy értékesítési előrejelzési modell betanítására használt előzményadatok egyszerű gépi tanulási feladatát tekinti át, érdemes lehet egy szekvenciális munkafolyamatot létrehozni adatfeldolgozási, modellbetanítási és modellértékelési lépésekkel. Összetett feladatok esetén érdemes lehet további bontást végezni. Például egyetlen adatfeldolgozási lépés felosztása az adatbetöltésre, az adattisztításra, az adatok előfeldolgozására és a funkciófejlesztésre.

A munkafolyamat lépéseinek definiálása után a következő lépés annak megadása, hogy az egyes lépések hogyan csatlakoznak a folyamathoz. Ha például csatlakoztatni szeretné az adatfeldolgozási lépést és a modell betanítási lépését, érdemes lehet egy adatfeldolgozási összetevőt definiálni a feldolgozott adatokat tartalmazó mappa kimenetéhez. A betanítási összetevő bemenetként egy mappát vesz fel, és a betanított modellt tartalmazó mappát ad ki. Ezek a bemenetek és kimenetek definíciója az összetevő-felület definíciójának részévé válik.

Most itt az ideje, hogy kidolgozza a lépés végrehajtásának kódját. Használhatja az előnyben részesített nyelveket (python, R stb.). A kódot egy rendszerhéjparancsnak kell végrehajtania. A fejlesztés során érdemes lehet néhány bemenetet hozzáadni a lépés végrehajtásának szabályozásához. Például egy betanítási lépéshez érdemes lehet hozzáadni a tanulási arányt, az alapidőszakok számát, mint a betanítás vezérléséhez szükséges bemeneteket. Ezek a további bemenetek, valamint az egyéb lépésekhez szükséges bemenetek és kimenetek az összetevő interfészei. A rendszerhéjparancs argumentumával bemeneteket és kimeneteket ad át a kódnak. Meg kell adni a parancsot és a kódot végrehajtó környezetet. A környezet lehet válogatott Azure Machine Tanulás környezet, Docker-rendszerkép vagy conda környezet.

Végül minden, beleértve a kódot, a parancsmagot, a környezetet, a bemenetet, a kimeneteket és a metaadatokat egy összetevőbe csomagolhatja. Ezután összekapcsolja ezeket az összetevőket, hogy folyamatokat hozzon létre a gépi tanulási munkafolyamathoz. Egy összetevő több folyamatban is használható.

Ha többet szeretne megtudni az összetevők összeállításáról, tekintse meg az alábbiakat:

Következő lépések