Megosztás a következőn keresztül:


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

Ez a cikk bemutatja, hogyan kezelheti és optimalizálhatja a költségeket, amikor gépi tanulási modelleket tanít be és helyez üzembe az Azure Machine Learningben.

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

  • Azure Machine Learning számítási fürt használata
  • Betanítási fürtök konfigurálása automatikus skálázáshoz
  • Felügyelt online végpontok 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
  • 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
  • Sikertelen üzemelő példányok törlése

A tervezési és monitorozási költségekkel kapcsolatos információkért tekintse meg az Azure Machine Learning költségeinek kezelését ismertető 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. Éles számítási feladatok előzetes verzióit nem javasoljuk. 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.

Az Azure Machine Learning számítási fürt 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 Learning felhasználói használhatják a felügyelt Azure Machine Learning 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 Learning üzemelteti. Ugyanazt a nagyvállalati szintű biztonságot, megfelelőséget és szabályozást biztosítja az Azure IaaS felhőméretében.

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 Learning költségeinek kezelése.

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 skáláz.

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 Learning megszünteti 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 fizetnie a folyamatos fel- és leskálázásért a betanítási szkript vagy a környezet minden módosítása után.

Az AmlCompute-fürtöket az alábbiak használatával konfigurálhatja a változó számítási feladatokra vonatkozó követelményekhez:

Felügyelt online végpontok konfigurálása automatikus skálázáshoz

Az automatikus skálázás automatikusan a megfelelő mennyiségű erőforrást futtatja az alkalmazásra háruló terhelés kezeléséhez. A felügyelt online végpontok támogatják az automatikus skálázást az Azure Monitor automatikus skálázási funkciójával való integrációval. További információ: Online végpontok és üzemelő példányok valós idejű következtetéshez.

Az Azure Monitor automatikus skálázása számos szabályt támogat:

  • Metrikákon alapuló skálázás, például 70%-os processzorkihasználtság >
  • Ütemezésalapú skálázás, például a csúcsidőre vonatkozó skálázási szabályok
  • A kettő kombinációja

További információ: Online végpontok automatikus skálázása.

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

Az AmlCompute kvótával vagy korláttal rendelkezik. Ez a kvóta virtuálisgép-család, például Dv2-sorozat vagy NCv3-sorozat alapján történik. A kvóta régiónként változik az egyes előfizetések esetében. Az előfizetések kis alapértékekkel kezdődnek. Ezzel a beállítással szabályozhatja az előfizetésben felpörgendő AmlCompute-erőforrások mennyiségét. További információ: Azure Machine Learning Compute.

Emellett konfigurálhatja a munkaterületszintű kvótát virtuálisgép-család szerint az előfizetésen belüli egyes munkaterületekhez. Ezzel a módszerrel részletesebben szabályozhatja az egyes munkaterületek költségeit, és korlátozhatja bizonyos virtuálisgép-családokat. További információ: Munkaterületszintű kvóták.

Kvóták beállítása a munkaterület szintjén:

  1. Nyissa meg az Azure Portalt , majd válasszon ki egy munkaterületet az előfizetésében.

  2. Válassza a Támogatás + A használat hibaelhárítása>+ kvóták lehetőséget a munkaterület menüjében.

  3. A kvóták megtekintéséhez válassza a Kvóta megtekintése lehetőséget az Azure Machine Learning Studióban.

  4. Ezen a lapon megtalálhatja előfizetését és régióját a kvóták beállításához.

    Mivel ez a beállítás több munkaterületet is érint, az előfizetés hatókörében jogosultságokra van szüksége a kvóta beállításához.

Feladat-megszüntetési szabályzatok 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 Learning 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 terjedjen ki, helyi vagy távoli felhőbeli számítással.
  • 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 . További információ: Korai felmondási szabályzat megadása.
  • 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álhat, mint például iteration_timeout_minutes experiment_timeout_minutes a feladatok maximális időtartamának vagy a teljes kísérletnek a szabályozása. További információ: Kilépési feltételek.

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 csoportokban, a Batchben és a Machine Learning szolgáltatásban. Ezek a kiosztások előre kivehetőek, 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áljon Batch-számítási feladatokhoz. Akkor is érdemes használni őket, ha a megszakítások helyreállnak a Batch-következtetés ismételt beadásával vagy az ellenőrzőpontokkal végzett mélytanulási betanítás újraindításával.

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. Az AmlCompute kvótákról további információt a Kvóták kezelése és növelése című témakörben talá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.

  • A tétlen leállítás (előzetes verzió) engedélyezése költségmegtakarításhoz, ha a virtuális gép inaktív egy adott időszakban. Lásd: Tétlen leállítás konfigurálása.
  • Állítson be egy ütemezést, amely automatikusan elindítja és leállítja a számítási példányt (előzetes verzió), ha nincs használatban a költségmegtakarítás érdekében. Lásd: Automatikus indítás és leállítás ütemezése.

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 Learning 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 a felügyelt Azure Machine Learning-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 feladatok párhuzamossá alakítása az Azure Machine Learning egy párhuzamos összetevőjének segítségével. A párhuzamos összetevők lehetővé teszik, hogy sok kisebb csomópont használatával párhuzamosan futtassa a feladatot, ami 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 a megközelítés egy lehetőség lehet. További információ: ParallelComponent Class.

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

A folyamat minden futtatá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 adatéletciklus automatikus kezelésével.

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. Ha az Azure Machine Learning-munkaterületet és a függő erőforrásokat ugyanabban a régióban helyezi üzembe, mint az adatok, csökkentheti a költségeket és javíthatja a teljesítményt.

Az Azure ExpressRoute-ot használó 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.

Sikertelen üzemelő példányok törlése

A felügyelt online végpontok virtuális gépeket használnak az üzemelő példányokhoz. Ha egy online üzembe helyezés létrehozására irányuló kérelmet küldött be, és az sikertelen volt, előfordulhat, hogy a kérelem a számítás létrehozásakor már teljesítette a szakaszt. Ebben az esetben a sikertelen üzembe helyezés díjakat von maga után. Ha befejezi a hiba hibakeresését vagy vizsgálatát, törölje a sikertelen üzembe helyezéseket a költségmegtakarítás érdekében.