Az Azure Machine Tanulás költségeinek kezelése és optimalizálása

Megtudhatja, hogyan kezelheti és optimalizálhatja a költségeket gépi tanulási modellek betanítása és üzembe helyezése során az Azure Machine Tanulás.

Az alábbi tippek segítségével kezelheti és optimalizálhatja a számítási erőforrások költségeit.

  • Betanítási fürtök konfigurálása automatikus skálázáshoz
  • Kvóták beállítása az előfizetésen és a munkaterületeken
  • Leállítási szabályzatok beállítása a betanítási feladathoz
  • Alacsony prioritású virtuális gépek használata
  • Számítási példányok automatikus leállításának és indításának ütemezése
  • Fenntartott Azure-beli virtuálisgép-példány használata
  • Helyi betanítása
  • Betanítás párhuzamosítása
  • Adatmegőrzési és törlési szabályzatok beállítása
  • Erőforrások üzembe helyezése ugyanabban a régióban

A tervezési és monitorozási költségekkel kapcsolatos információkért tekintse meg az Azure Machine Tanulás költségeinek kezelésére vonatkozó tervet.

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. For more information, see Supplemental Terms of Use for Microsoft Azure Previews.

Az Azure Machine Tanulás számítási fürt (AmlCompute) használata

A folyamatosan változó adatoknak megfelelően gyors és egyszerűsített modellbetanításra és újratanításra van szükség a pontos modellek karbantartásához. A folyamatos betanítás azonban költséges, különösen a GPU-k mélytanulási modelljei esetében.

Az Azure Machine Tanulás felhasználói használhatják a felügyelt Azure Machine Tanulás számítási fürtöt, más néven AmlCompute-t. Az AmlCompute különböző GPU- és CPU-beállításokat támogat. Az AmlCompute-t az Előfizetés nevében az Azure Machine Tanulás üzemelteti. Ugyanazt a nagyvállalati szintű biztonságot, megfelelőséget és szabályozást biztosítja az Azure IaaS-felhőbeli méretekben.

Mivel ezek a számítási készletek az Azure IaaS-infrastruktúrájában találhatók, a betanításokat ugyanolyan biztonsági és megfelelőségi követelményekkel helyezheti üzembe, méretezheti és kezelheti, mint a többi infrastruktúrát. Ezek az üzemelő példányok az előfizetésben történnek, és betartják az irányítási szabályokat. További információ az Azure Machine Tanulás számításról.

Betanítási fürtök konfigurálása automatikus skálázáshoz

A fürtöknek a számítási feladatok követelményei alapján történő automatikus skálázása segít csökkenteni a költségeket, hogy csak azt használja, amire szüksége van.

Az AmlCompute-fürtök úgy vannak kialakítva, hogy dinamikusan skálázhatók a számítási feladatok alapján. A fürt a konfigurált csomópontok maximális számára skálázható. Az egyes feladatok befejeződése után a fürt felszabadítja a csomópontokat, és a minimális csomópontszámra méretezhető.

Fontos

Ha el szeretné kerülni a díjakat, ha nem futnak feladatok, állítsa a minimális csomópontokat 0 értékre. Ezzel a beállítással az Azure Machine Tanulás megszüntethetik a csomópontok lefoglalását, ha nincsenek használatban. A 0-nál nagyobb értékek akkor is futtatják a csomópontok számát, ha nincsenek használatban.

A leskálázás előtt konfigurálhatja azt is, hogy mennyi ideig tétlen a csomópont. Alapértelmezés szerint a leskálázás előtti tétlenségi idő 120 másodpercre van állítva.

  • Ha kevesebb iteratív kísérletezést végez, csökkentse ezt az időt a költségek csökkentése érdekében.
  • Ha nagy mértékben iteratív fejlesztési/tesztelési kísérleteket végez, előfordulhat, hogy növelnie kell az időt, hogy ne kelljen folyamatosan skáláznia a betanítási szkript vagy a környezet minden módosítása után.

Az AmlCompute-fürtök konfigurálhatók a változó számítási feladatokra vonatkozó követelményekhez az Azure Portalon az AmlCompute SDK-osztály, az AmlCompute CLI és a REST API-k használatával.

Kvóták beállítása erőforrásokon

Az AmlCompute kvótakonfigurációval (vagy korláttal) rendelkezik. Ez a kvóta virtuálisgép-család (például Dv2 sorozat, NCv3 sorozat) szerint történik, és régiónként változik az egyes előfizetések esetében. Az előfizetések kis alapértelmezett beállításokkal kezdődnek, de ezzel a beállítással szabályozhatja az előfizetésben felpörgendő Amlcompute-erőforrások mennyiségét.

Emellett konfigurálja a munkaterületszintű kvótát virtuálisgép-család szerint az előfizetésen belüli összes munkaterülethez. Így részletesebben szabályozhatja az egyes munkaterületek esetlegesen felmerülő költségeit, és korlátozhatja bizonyos virtuálisgép-családokat.

A kvóták munkaterületi szinten való beállításához kezdje az Azure Portallal. Jelöljön ki egy munkaterületet az előfizetésében, és a bal oldali panelen válassza a Usages + Quotas (Használatok + kvóták ) lehetőséget. Ezután válassza a Kvóták konfigurálása lapot a kvóták megtekintéséhez. A kvóta beállításához jogosultságokra van szüksége az előfizetés hatókörében, mivel ez egy olyan beállítás, amely több munkaterületet is érint.

Feladat automatikus szabályozásának beállítása

Bizonyos esetekben úgy kell konfigurálnia a betanítási futtatásokat, hogy korlátozzák az időtartamukat, vagy korán fejezzék be őket. Ha például az Azure Machine Tanulás beépített hiperparaméter-finomhangolását vagy automatizált gépi tanulását használja.

Az alábbiakban néhány lehetőség közül választhat:

  • Definiáljon egy, a RunConfigurationban hívott max_run_duration_seconds paramétert, amely meghatározza, hogy a futtatás maximális időtartama a választott számításra (helyi vagy távoli felhőbeli számításra) terjedjen ki.
  • A hiperparaméterek finomhangolásához definiáljon egy korai leállítási szabályzatot a Bandit-szabályzatból, egy mediánleállítási szabályzatból vagy egy csonkolási kijelölési szabályzatból. A hiperparaméter-takarítások további szabályozásához használjon olyan paramétereket, mint a max_total_runs vagy max_duration_minutesa .
  • Az automatizált gépi tanuláshoz állítsa be a hasonló megszüntetési szabályzatokat a enable_early_stopping jelölő használatával. Olyan tulajdonságokat is használjon, mint iteration_timeout_minutesexperiment_timeout_minutes például a feladatok maximális időtartamának vagy a teljes kísérletnek a szabályozása.

Alacsony prioritású virtuális gépek használata

Az Azure lehetővé teszi a felesleges kihasználatlan kapacitás alacsony prioritású virtuális gépekként való használatát a virtuálisgép-méretezési csoportok, a Batch és a Machine Tanulás szolgáltatásban. Ezek a kiosztások előre kiürülnek, de a dedikált virtuális gépekhez képest alacsonyabb áron érhetők el. Általában azt javasoljuk, hogy alacsony prioritású virtuális gépeket használjunk Batch-számítási feladatokhoz. Akkor is érdemes használni őket, ha a megszakítások helyreállíthatók újraküldéssel (Batch-következtetés esetén) vagy újraindításokkal (az ellenőrzőpontokkal végzett mélytanulási betanításhoz).

Az alacsony prioritású virtuális gépek egyetlen kvótával rendelkeznek, amely eltér a dedikált kvótaértéktől, amely a virtuálisgép-családhoz tartozik. További információ az AmlCompute kvótákról.

Az alacsony prioritású virtuális gépek nem működnek a számítási példányok esetében, mivel támogatniuk kell az interaktív jegyzetfüzetek használatát.

Számítási példányok ütemezése

Számítási példány létrehozásakor a virtuális gép továbbra is elérhető marad a munkájához.

Fenntartott példányok használata

A számítási erőforrások megtakarításának másik módja az Azure Reserved VM Instance. Ezzel az ajánlattal kötelezettséget vállal egy vagy hároméves feltételekre. Ezek a kedvezmények a használatalapú fizetéses árak 72%-át is elérik, és közvetlenül a havi Azure-számlára vonatkoznak.

Az Azure Machine Tanulás Compute eleve támogatja a fenntartott példányokat. Ha egy vagy hároméves fenntartott példányt vásárol, automatikusan kedvezményt alkalmazunk az Azure Machine-Tanulás felügyelt számításra.

Betanítás párhuzamosítása

A költségek és a teljesítmény optimalizálásának egyik fő módszere a számítási feladat párhuzamos üzembe helyezése az Azure Machine Tanulás egy párhuzamos összetevőjének segítségével. A párhuzamos összetevők lehetővé teszik, hogy sok kisebb csomópontot használjon a feladat párhuzamos végrehajtásához, így lehetővé teszi a horizontális skálázást. A párhuzamosításnak van egy többlettere. A számítási feladattól és az elérhető párhuzamosság mértékétől függően ez lehet vagy nem megoldás. További részletekért kövesse ezt a hivatkozást a ParallelComponent dokumentációjában.

Adatmegőrzési és törlési szabályzatok beállítása

Minden folyamat végrehajtásakor a rendszer minden lépésnél köztes adatkészleteket hoz létre. Ezek a köztes adathalmazok idővel helyet foglalnak a tárfiókban. Érdemes lehet szabályzatokat beállítani az adatok teljes életciklusa során történő kezeléséhez az adathalmazok archiválásához és törléséhez. További információ: Költségek optimalizálása az Azure Blob Storage hozzáférési szintjeinek automatizálásával.

Erőforrások üzembe helyezése ugyanabban a régióban

A különböző régiókban található számítások hálózati késést és megnövekedett adatátviteli költségeket tapasztalhatnak. Az Azure-beli hálózati költségek az Azure-adatközpontokból kimenő sávszélességből származnak. A hálózati költségek csökkentése érdekében helyezze üzembe az összes erőforrást a régióban. Az Azure Machine-Tanulás munkaterület és az adatokkal azonos régióban lévő függő erőforrások kiépítése segíthet a költségek csökkentésében és a teljesítmény javításában.

Az ExpressRoute-hoz hasonló hibrid felhőalapú forgatókönyvek esetében néha költséghatékonyabb lehet az összes erőforrás áthelyezése az Azure-ba a hálózati költségek és késés optimalizálása érdekében.

További lépések