A gyártás peremén lévő, végpontok közötti számítógépes látás

Azure Data Factory
Azure IoT Edge
Azure IoT Hub
Azure Machine Learning
Azure Pipelines

Ez a példaarchitektúra a dolgok internetes (IoT) számítógépes látásmódjának végpontok közötti megközelítését mutatja be a gyártásban.

Architektúra

Diagram showing the end-to-end approach to computer vision from the edge to the cloud and back.

Töltse le az architektúra Visio-fájlját.

Adatfolyam

  1. Az IoT Edge egyéni modul rögzíti az élő videóstreamet, keretekre bontja, és következtetést hajt végre a képadatokon annak megállapításához, hogy történt-e incidens.
  2. Az egyéni modul emellett Azure Storage SDK-metódusokat vagy blob API-t is használ a nyers videofájlok Azure Storage-ba való feltöltéséhez, amely nyers adathordozó-tárolóként működik.
  3. Az egyéni modul elküldi a következtetési eredményeket és a metaadatokat az Azure IoT Hubnak, amely központi üzenetközpontként szolgál mindkét irányban történő kommunikációhoz.
  4. Az Azure Logic Apps figyeli az IoT Hubot az incidenseseményekkel kapcsolatos üzenetekért. A Logic Apps az eredményeket és a metaadatokat a Microsoft Dataverse-nek irányítja a tároláshoz.
  5. Incidens esetén a Logic Apps SMS- és e-mail-értesítéseket küld a webhelymérnöknek. A webhelymérnök egy Power Apps-alapú mobilalkalmazást használ az incidens nyugtázásához és megoldásához.
  6. A Power Apps lekéri a Dataverse és a Blob Storage nyers videofájljainak eredményeit és metaadatait, hogy releváns információkat jelenítsen meg az incidensről. A Power Apps frissíti a Dataverse-t a webhelymérnök által megadott incidensmegoldással. Ez a lépés emberi ellenőrzésként működik a modell újratanítása érdekében.
  7. Az Azure Data Factory az az adatvezénylő, amely nyers videofájlokat hív le a nyers médiatárolóból, és lekéri a megfelelő következtetési eredményeket és metaadatokat a Dataverse-ből.
  8. A Data Factory a nyers videofájlokat és a metaadatokat az Azure Data Lake-ben tárolja, amely naplózási célból videóarchívumként szolgál.
  9. A Data Factory a nyers videofájlokat keretekké alakítja, a következtetési eredményeket címkékké alakítja, és feltölti az adatokat a Blob Storage-ba, amely az ML-adattárként működik.
  10. A modellkód módosításai automatikusan aktiválják az Azure Pipelines-modell vezénylőfolyamatát, amelyet az operátorok manuálisan is aktiválhatnak. A kódmódosítások az ML-modell betanítási és érvényesítési folyamatát is elindítják az Azure Machine Tanulás.
  11. Az Azure Machine Tanulás megkezdi a modell betanítását az ML-adattárból származó adatok érvényesítésével és a szükséges adathalmazok Azure Premium Blob Storage-ba másolásával. Ez a teljesítményszint adatgyorsítótárat biztosít a modell gyorsabb betanításához.
  12. Az Azure Machine Tanulás a Prémium szintű adatgyorsítótárban lévő adatkészletet használja a modell betanítása, a betanított modell teljesítményének ellenőrzése, az újonnan betanított modellhez való pontozása és a modell regisztrálása az Azure Machine Tanulás beállításjegyzékébe.
  13. Az Azure Pipelines-modell vezénylője áttekinti az újonnan betanított ML-modell teljesítményét, és megállapítja, hogy jobb-e, mint a korábbi modellek. Ha az új modell jobban teljesít, a folyamat letölti a modellt az Azure Machine Tanulás-ból, és létrehozza az ML-következtetési modul új verzióját az Azure Container Registryben való közzétételhez.
  14. Ha egy új ml-következtetési modul készen áll, az Azure Pipelines üzembe helyezi a modultárolót a Container Registryből az IoT Hub IoT Edge-moduljához.
  15. Az IoT Hub az új ML-következtetési modullal frissíti az IoT Edge-eszközt.

Összetevők

  • Az Azure IoT Edge szolgáltatás helyileg elemzi az eszközadatokat, hogy kevesebb adatot küldjön a felhőbe, gyorsan reagáljon az eseményekre, és alacsony kapcsolati feltételek mellett működjön. Az IoT Edge ML-modul képes hasznosítható elemzéseket kinyerni a streamelt videóadatokból.
  • Az Azure IoT Hub egy felügyelt szolgáltatás, amely megbízható és biztonságos kétirányú kommunikációt tesz lehetővé több millió IoT-eszköz és egy felhőalapú háttérrendszer között. Az IoT Hub eszközalapú hitelesítést, üzenet-útválasztást, más Azure-szolgáltatásokkal való integrációt és felügyeleti funkciókat biztosít az IoT-eszközök vezérléséhez és konfigurálásához.
  • Az Azure Logic Apps egy kiszolgáló nélküli felhőszolgáltatás, amely automatizált munkafolyamatokat hoz létre és futtat, amelyek alkalmazásokat, adatokat, szolgáltatásokat és rendszereket integrálnak. A fejlesztők vizualizációtervezővel ütemezhetik és vezényelhetik a gyakori feladat-munkafolyamatokat. A Logic Apps számos népszerű felhőszolgáltatáshoz, helyszíni termékhez és más szolgáltatásként használt szoftverhez (SaaS) készült összekötőkkel rendelkezik. Ebben a megoldásban a Logic Apps futtatja az automatikus értesítési munkafolyamatot, amely SMS- és e-mail-riasztásokat küld a webhelymérnököknek.
  • A Power Apps egy adatplatform, valamint alkalmazások, szolgáltatások és összekötők csomagja. Gyors alkalmazásfejlesztési környezetként szolgál. A mögöttes adatplatform a Microsoft Dataverse.
  • A Dataverse a Power Apps felhőalapú tárolási platformja. A Dataverse támogatja az emberi használatú értesítéseket, és tárolja az MLOps-adatfolyamathoz társított metaadatokat.
  • Az Azure Blob Storage skálázható és biztonságos objektumtároló strukturálatlan adatokhoz. Használhatja archívumokhoz, adattavakhoz, nagy teljesítményű számítástechnikához, gépi tanuláshoz és natív felhőbeli számítási feladatokhoz. Ebben a megoldásban a Blob Storage egy helyi adattárat biztosít az ML-adattárhoz és egy Prémium szintű adatgyorsítótárat az ML-modell betanításához. A Blob Storage prémium szintű szintje olyan számítási feladatokhoz készült, amelyek gyors válaszidőt és magas tranzakciós arányt igényelnek, például a jelen példában szereplő emberi videócímkézéshez.
  • A Data Lake Storage egy nagymértékben skálázható és biztonságos tárolási szolgáltatás a nagy teljesítményű elemzési számítási feladatokhoz. Az adatok általában több heterogén forrásból származnak, és strukturálhatók, részben strukturálhatók vagy strukturálatlanok. Az Azure Data Lake Storage Gen2 egyesíti az Azure Data Lake Storage Gen1 képességeit a Blob Storage-ral, és fájlrendszerszemantikát, fájlszintű biztonságot és skálázást biztosít. Emellett a Blob Storage rétegzett tárolási, magas rendelkezésre állási és vészhelyreállítási képességeit is kínálja. Ebben a megoldásban a Data Lake Storage biztosítja a nyers videofájlok és metaadatok archiválási videotárolóját.
  • Az Azure Data Factory egy hibrid, teljes mértékben felügyelt, kiszolgáló nélküli megoldás adatintegrációs és átalakítási munkafolyamatokhoz. Kód nélküli felhasználói felületet és könnyen használható monitorozási panelt biztosít. Az Azure Data Factory folyamatokat használ az adatáthelyezéshez. A leképezési adatfolyamok különböző átalakítási feladatokat hajtanak végre, például kinyerést, átalakítást és betöltést (ETL), valamint kinyerést, betöltést és átalakítást (ELT). Ebben a példában a Data Factory egy ETL-folyamat adatait vezényli a következtetési adatokhoz, amelyeket újratanítási célokra tárol.
  • Az Azure Machine Tanulás egy nagyvállalati szintű gépi tanulási szolgáltatás modellek gyors létrehozásához és üzembe helyezéséhez. Minden készségszinten kínál felhasználók számára alacsony kódszámú tervezőt, automatizált gépi tanulást és egy üzemeltetett Jupyter notebook környezetet, amely támogatja a különböző azonosítókat.
  • Az Azure Pipelines, amely az Azure DevOps csapatalapú fejlesztői szolgáltatásainak része, folyamatos integrációs (CI) és folyamatos üzembe helyezési (CD) folyamatokat hoz létre. Ebben a példában az Azure Pipelines-modell vezénylője ellenőrzi az ML-kódot, elindítja a kiszolgáló nélküli feladatfolyamatokat, összehasonlítja az ML-modelleket, és létrehozza a következtetési tárolót.
  • A Tárolóregisztrációs adatbázis létrehozza és kezeli a Docker-beállításjegyzéket a Docker-tárolólemezképek, köztük a tárolóalapú ML-modellek létrehozásához, tárolásához és kezeléséhez.
  • Az Azure Monitor telemetriát gyűjt az Azure-erőforrásokból, így a csapatok proaktív módon azonosíthatják a problémákat, és maximalizálhatják a teljesítményt és a megbízhatóságot.

Alternatívák

Ahelyett, hogy az adatfolyamot képkockákra bontanák, üzembe helyezhet egy Azure Blob Storage-modult az IoT Edge-eszközön. A következtetési modul ezután feltölti a következtetést tartalmazó képkereteket a peremeszköz tárolómoduljára. A tárolási modul határozza meg, hogy mikor töltse fel a kereteket közvetlenül az ML-adattárba. Ennek a megközelítésnek az az előnye, hogy eltávolít egy lépést az adatfolyamból. A kompromisszum az, hogy a peremeszköz szorosan kapcsolódik az Azure Blob Storage-hoz.

A modell vezényléséhez használhatja az Azure Pipelinest vagy az Azure Data Factoryt.

  • Az Azure Pipelines előnye, hogy szoros kapcsolatban áll az ML-modell kódjával. A betanítási folyamatot egyszerűen aktiválhatja kódmódosításokkal a CI/CD-n keresztül.
  • A Data Factory előnye, hogy minden folyamat kiépítheti a szükséges számítási erőforrásokat. A Data Factory nem ragaszkodik az Azure Pipelines-ügynökökhöz az ML-betanítás futtatásához, ami túlterhelheti a szokásos CI/CD-folyamatot.

Forgatókönyv részletei

A teljesen automatizált intelligens gyárak mesterséges intelligenciát (AI) és gépi tanulást (ML) használnak az adatok elemzésére, rendszerek futtatására és folyamatok fejlesztésére.

Ebben a példában a kamerák képeket küldenek egy ml-modellt futtató Azure IoT Edge-eszközre. A modell kiszámítja a következtetéseket, és végrehajtható kimenetet küld a felhőbe további feldolgozás céljából. Az emberi beavatkozások az ML-modell által rögzített intelligencia részét képezik. Az ML-folyamat az ML-algoritmusok betanításának, tesztelésének, finomhangolásának és érvényesítésének folyamatos ciklusa.

Lehetséges használati esetek

A gyártási folyamatok az IoT számítógépes látásmódot használják a biztonsági és minőségbiztosítási alkalmazásokban. Az IoT számítógépes látási rendszerek a következő műveleteket végezhetik el:

  • Segít biztosítani a gyártási irányelveknek való megfelelést, például a megfelelő címkézést.
  • Azonosítsa a gyártási hibákat, például a felület egyenetlenségét.
  • Növelje a biztonságot az épület vagy a terület bejáratainak figyelésével.
  • A munkavállalók biztonságának fenntartása az egyéni védőeszközök (PPE) használatának és egyéb biztonsági eljárásoknak a észlelésével.

Megfontolandó szempontok

Ezek a szempontok implementálják az Azure Well-Architected Framework alappilléreit, amely a számítási feladatok minőségének javítására használható vezérelvek halmaza. További információ: Microsoft Azure Well-Architected Framework.

Elérhetőség

Az ML-alapú alkalmazások általában egy erőforráskészletet igényelnek a betanításhoz, egy másikat pedig a kiszolgáláshoz. A betanítási erőforrásoknak általában nincs szükségük magas rendelkezésre állásra, mivel az élő éles kérelmek nem használják közvetlenül ezeket az erőforrásokat. A kérelmek kiszolgálásához szükséges erőforrásoknak magas rendelkezésre állással kell rendelkezniük.

Üzemeltetés

Ez a megoldás három működési területre oszlik:

  • Az IoT-műveletekben a peremeszköz ml-modellje valós idejű képeket használ a csatlakoztatott kamerákból a videokeretek következtetéséhez. A peremeszköz gyorsítótárazott videostreameket is küld a felhőbeli tárolóba naplózáshoz és modell újratanításhoz. Az ml-újratanítás után az Azure IoT Hub frissíti a peremeszközt az új ML-következtetési modullal.

  • Az MLOps DevOps-eljárásokat használ a modell betanítási, tesztelési és üzembehelyezési műveleteinek vezénylésére. Az MLOps életciklus-kezelése automatizálja az ML-modellek összetett döntéshozatalhoz vagy a modellek előállításához való használatát. Az MLOps kulcsa az ml-modelleket összeállító, betanító, kiértékelő és üzembe helyező csapatok közötti szoros koordináció.

  • A human-in-the-loop műveletek értesítik az embereket, hogy beavatkozzanak az automatizálás bizonyos lépéseibe. A human-in-the-loop tranzakciókban a feldolgozók ellenőrzik és értékelik a gépi tanulási előrejelzések eredményeit. Az emberi beavatkozások az ML-modell által rögzített intelligencia részévé válnak, és segítenek a modell ellenőrzésében.

    A megoldáshoz a következő emberi szerepkörök tartoznak:

    • A helymérnökök megkapják a Logic Apps által küldött incidensértesítéseket, és manuálisan ellenőrzik az ML-modell eredményeit vagy előrejelzéseit. A helymérnök például megvizsgálhat egy szelepet, amelyet a modell előrejelzett meghiúsult.

    • Az adatfeliratozók az újratanításhoz címkéznek adatkészleteket a végpontok közötti megoldás ciklusának befejezéséhez. Az adatfeliratozási folyamat különösen fontos a képadatok esetében, mivel ez az első lépés egy megbízható modell algoritmusokon keresztüli betanításában. Ebben a példában az Azure Data Factory pozitív és hamis pozitív csoportosításokba rendezi a videoképeket, ami megkönnyíti az adatcímkéző munkáját.

    • Az adattudósok a címkézett adatkészletekkel tanítják be az algoritmusokat, hogy valós előrejelzéseket készítsenek. Az adattudósok AZ MLOps és a GitHub Actions vagy az Azure Pipelines használatával egy CI-folyamat során automatikusan betanítanak és érvényesítenek egy modellt. A betanítás manuálisan vagy automatikusan aktiválható új betanítási szkriptek vagy adatok beadásával. Az adattudósok egy Azure Machine Tanulás-munkaterületen dolgoznak, amely automatikusan regisztrálhat, üzembe helyezhet és kezelhet modelleket.

    • Az IoT-mérnökök az Azure Pipelines használatával teszik közzé az IoT Edge-modulokat tárolókban a Container Registryben. A mérnökök igény szerint üzembe helyezhetik és skálázhatják az infrastruktúrát EGY CD-folyamat használatával.

    • Széf auditorok áttekintik az archivált videóstreameket, hogy észleljék az anomáliákat, értékeljék a megfelelőséget, és megerősíthessék az eredményeket, amikor kérdések merülnek fel a modell előrejelzéseivel kapcsolatban.

    Ebben a megoldásban az IoT Hub betölti a telemetriát a kamerákból, és elküldi a metrikákat az Azure Monitornak, hogy a helymérnökök kivizsgálhassák és elháríthassák a hibákat. Az Azure Machine Tanulás megfigyelhetőségi metrikákat és modell telemetriát küld az Azure Monitornak, segítve az IoT mérnökeit és adattudósait a műveletek optimalizálásában.

Teljesítmény

Az IoT-eszközök memóriája és feldolgozási teljesítménye korlátozott, ezért fontos korlátozni az eszközre küldött modelltároló méretét. Ügyeljen arra, hogy olyan IoT-eszközt használjon, amely képes modellkövetkeztetést végezni, és elfogadható mennyiségű eredményt eredményez.

A betanítási modellek teljesítményének optimalizálásához ez a példaarchitektúra az Azure Premium Blob Storage-t használja. Ez a teljesítményszint olyan számítási feladatokhoz lett kialakítva, amelyek gyors válaszidőt és magas tranzakciós arányt igényelnek, például az emberi ciklusban lévő videocímkézési forgatókönyvhöz.

A teljesítményre vonatkozó szempontok az adatbetöltési folyamatra is vonatkoznak. A Data Factory nagy teljesítményű, költséghatékony megoldással maximalizálja az adatáthelyezést.

Méretezhetőség

A megoldásban használt összetevők többsége automatikusan skálázható felügyelt szolgáltatások.

Az IoT-alkalmazás méretezhetősége az IoT Hub kvótáitól és szabályozásától függ. Megfontolandó tényezők:

  • Az IoT Hubba naponta maximálisan küldhető üzenetek kvótája.
  • Az egyes IoT Hub-példányokon csatlakoztatott eszközök kvótája.
  • Betöltési és feldolgozási átviteli sebesség.

Az ML-ben a méretezhetőség a modellek nagy adathalmazokra való betanítása érdekében használt horizontális felskálázási fürtökre vonatkozik. A méretezhetőség lehetővé teszi, hogy az ML-modell megfeleljen az azt használó alkalmazások igényeinek. Ezeknek az igényeknek való megfeleléshez az ML-fürtnek felskálázást kell biztosítania a processzorokon és a grafikus feldolgozási egységen (GPU)-kompatibilis csomópontokon.

A méretezhető megoldások tervezésével kapcsolatos általános útmutatásért tekintse meg az Azure Architecture Center teljesítményhatékonysági ellenőrzőlistát .

Biztonság

A biztonság biztosítékokat nyújt a szándékos támadások és az értékes adatokkal és rendszerekkel való visszaélés ellen. További információ: A biztonsági pillér áttekintése.

A Dataverse és más Azure-szolgáltatások hozzáférés-kezelése segít biztosítani, hogy csak a jogosult felhasználók férhessenek hozzá a környezethez, az adatokhoz és a jelentésekhez. Ez a megoldás az Azure Key Vault használatával kezeli a jelszavakat és titkos kulcsokat. A tárterület ügyfél által felügyelt kulcsokkal van titkosítva.

A biztonságos IoT-megoldások tervezésével kapcsolatos általános útmutatásért tekintse meg az Azure biztonsági dokumentációját és az Azure IoT referenciaarchitektúráját.

Költségoptimalizálás

A költségoptimalizálás a szükségtelen kiadások csökkentésének és a működési hatékonyság javításának módjairól szól. További információ: A költségoptimalizálási pillér áttekintése.

A legtöbb esetben az Azure-díjkalkulátorral megbecsülheti költségeit. További szempontokat a Költségoptimalizálás című témakörben talál.

Az Azure Machine Tanulás a Container Registry, az Azure Storage és az Azure Key Vault szolgáltatásait is üzembe helyezi, amelyek többletköltséggel járnak. További információ: Az Azure Machine Tanulás működése: Architektúra és fogalmak.

Az Azure Machine Tanulás díjszabása a modell felhőben való betanításához használt virtuális gépek (virtuális gépek) díjait tartalmazza. Az Azure Machine Tanulás és a virtuális gépek Azure-régiónkénti elérhetőségéről további információt a régiónként elérhető termékek című témakörben talál.

Közreműködők

Ezt a cikket a Microsoft tartja karban. Eredetileg a következő közreműködők írták.

Fő szerző:

További lépések