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


Képosztályozási modell betanítása az Azure-ban a Model Builder használatával

Megtudhatja, hogyan taníthat be képosztályozási modellt az Azure-ban a Model Builder használatával a műholdas képek földhasználatának kategorizálásához.

Ez az oktatóanyag bemutatja, hogyan hozhat létre C#-osztálytárat a földhasználat kategorizálásához műholdas képek alapján a Model Builder használatával.

Ebben az oktatóanyagban ön:

  • Az adatok előkészítése és értelmezése
  • Model Builder konfigurációs fájl létrehozása
  • Forgatókönyv kiválasztása
  • Adatok betöltése
  • Kísérlet létrehozása az Azure-ban
  • A modell betanítása
  • A modell kiértékelése
  • A modell felhasználása

Előfeltételek

A Model Builder rendszerképbesorolásának áttekintése

Ez a minta olyan C#-osztálytárat hoz létre, amely kategorizálja a földhasználatot térképes műholdképekből az Azure-ban a Model Builderrel betanított mélytanulási modell használatával. Az oktatóanyag forráskódját a dotnet/machinelearning-samples GitHub-adattárban találja

C#-osztálytár létrehozása

Hozzon létre egy C#-osztálykódtárat "LandUse" néven.

Az adatok előkészítése és értelmezése

Jegyzet

Az oktatóanyag adatai a következőkből származnak:

  • Eurosat: Egy új adatkészlet és mélytanulási referencia a földhasználat és a földfedés besorolásához. Patrick Helber, Benjamin Bischke, Andreas Dengel, Damian Borth. IEEE Journal of Selected Topics in Applied Earth Observations and Remote Sensing, 2019.
  • Az EuroSAT bemutatása: Új adathalmaz és mélytanulási referencia a földhasználathoz és a földfedés besorolásához. Patrick Helber, Benjamin Bischke, Andreas Dengel. 2018. évi IEEE Nemzetközi Geotudományi és Távérzékelési Szimpózium, 2018.

Az EuroSAT-adatkészlet tíz kategóriába (vidéki, ipari, folyó stb.) osztott műholdas képeket tartalmaz. Az eredeti adatkészlet 27 000 képet tartalmaz. A kényelem érdekében ez az oktatóanyag csak 2000 ilyen képet használ.

adathalmaz

  1. Töltse le a EuroSAT-adatkészlet részhalmazát, és mentse a számítógépen bárhová.
  2. Bontsa ki.

Model Builder konfigurációs fájl létrehozása

Amikor először hozzáadja a Model Buildert a megoldáshoz, arra kéri, hogy hozzon létre egy mbconfig fájlt. A mbconfig fájl nyomon követi a Model Builderben elvégezhető összes műveletet, hogy újra megnyissa a munkamenetet.

  1. A Megoldáskezelőben kattintson a jobb gombbal a LandUse projektre, és válassza a > Machine Learning-modell hozzáadásalehetőséget.
  2. A párbeszédpanelen nevezze el a Model Builder projektet LandUse, majd kattintson a Hozzáadásgombra.

Forgatókönyv kiválasztása

Model Builder-forgatókönyv képernyő

A modell betanítása érdekében a Model Builder által biztosított elérhető gépi tanulási forgatókönyvek listájából kell választania.

Ebben a mintában a feladat képbesorolás. A Model Builder eszköz forgatókönyv-lépésében válassza ki a képbesorolási forgatókönyvet.

Környezet kiválasztása

A Model Builder a kiválasztott forgatókönyvtől függően különböző környezeteken futtathatja a betanítást.

Válassza Azure- környezetként, majd kattintson a Munkaterület beállítása gombra.

Kísérlet létrehozása az Azure-ban

Az Azure Machine Learning-kísérlet olyan erőforrás, amelyet létre kell hozni a Model Builder-képzés azure-beli futtatása előtt.

A kísérlet egy vagy több gépi tanulási betanítási futtatás konfigurációját és eredményeit foglalja magában. A kísérletek egy adott munkaterülethez tartoznak. A kísérlet első létrehozásakor a rendszer regisztrálja a nevét a munkaterületen. Az ezt követő futtatások – ha ugyanazt a kísérletnevet használják – ugyanannak a kísérletnek a részeként lesznek naplózva. Ellenkező esetben létrejön egy új kísérlet.

Az Új kísérlet létrehozása párbeszédpanelen válassza ki az előfizetést a Előfizetés legördülő listából.

Munkaterület létrehozása

A munkaterület egy Azure Machine Learning-erőforrás, amely központi helyet biztosít a betanítási futtatás részeként létrehozott összes Azure Machine Learning-erőforráshoz és összetevőhöz.

  1. Az Új kísérlet létrehozása párbeszédpanelen válassza az Új hivatkozást a Machine Learning-munkaterület neve legördülő lista mellett.

  2. Az Új munkaterület létrehozása párbeszédpanelen írja be a "landuse-wkspc" kifejezést a Machine Learning-munkaterület neve szövegmezőbe.

  3. Válassza a Kelet-USA-t a Régiók legördülő listájából. A régió annak az adatközpontnak a földrajzi helye, ahol a munkaterület és az erőforrások üzembe helyezve vannak. Javasoljuk, hogy válasszon egy olyan helyet, amely közel van Önhöz vagy ügyfeleihez.

  4. Válassza az Új hivatkozást a erőforráscsoportok legördülő lista mellett.

    1. Az Új erőforráscsoport létrehozása párbeszédpanelen írja be a "landuse-rg" kifejezést az Erőforráscsoport neve szövegmezőbe.
    2. Válassza OKlehetőséget.
  5. Válassza ki az újonnan létrehozott erőforráscsoportot a erőforráscsoportok legördülő listából.

  6. Válassza a lehetőséget, majd hozza létre a-et.

    Az előkészítési folyamat néhány percet vesz igénybe. A rendszer a következő felhőerőforrások kiépítésére kéri az Azure-t:

    • Azure Machine Learning-munkaterület
    • Azure Storage-fiók
    • Azure Application Insights
    • Azure Tárolóregisztrációs Szolgáltatás
    • Azure Key Vault
  7. A kiépítési folyamat befejezése után válassza ki az újonnan létrehozott munkaterületet a Machine Learning-munkaterület neve legördülő listából az Új kísérlet létrehozása párbeszédpanelen.

Számítás létrehozása

Az Azure Machine Learning-számítás egy felhőalapú Linux rendszerű virtuális gép, amelyet betanításhoz használnak.

  1. Az Új kísérlet létrehozása párbeszédpanelen válassza az Új hivatkozást a Számítási név legördülő lista mellett.
  2. Az Új számítás létrehozása párbeszédpanelen írja be a "landuse-cpt" kifejezést a Számítási név szövegmezőbe.
  3. Válassza a Számítási méret legördülő listából a Standard_NC24 lehetőséget. A Model Builder GPU-ra optimalizált számítási típusokat használ. A GPU-optimalizált számítási típusokkal kapcsolatos további részletekért tekintse meg az NC-sorozatú Linux rendszerű virtuális gépek dokumentációját.
  4. Válassza létrehozása lehetőséget. A számítási erőforrások kiépítése eltarthat néhány percig.
  5. A kiépítési folyamat befejezése után válassza ki az újonnan létrehozott munkaterületet a Számítási név legördülő listából az Új kísérlet létrehozása párbeszédpanelen.
  6. Válassza a Következő lépés gombot az adatok betöltéséhez.

Adatok betöltése

  1. A Model Builder eszköz adatlépésében válassza a Mappa kijelölése szövegmező melletti gombot.
  2. A Fájlkezelővel tallózhat, és kiválaszthatja a képeket tartalmazó kicsomagolt könyvtárat.
  3. A Következő lépés gombra kattintva lépjen a Modellszerkesztő eszköz következő lépésére.

A modell betanítása

Az Azure-beli oktatás csak a Model Builder rendszerkép-besorolási forgatókönyvéhez érhető el. A modellek betanítására használt algoritmus a ResNet50 architektúrán alapuló mély neurális hálózat. A modellbetanítási folyamat során a Model Builder resNet50 algoritmussal és beállításokkal tanítja be a különböző modelleket, hogy megtalálja az adathalmaz legjobban teljesítő modelljét.

Betanítás indítása

Miután konfigurálta a munkaterületet és a számítási típust, ideje befejezni a kísérlet létrehozását, és megkezdeni a betanítást.

  1. Kattintson a Képzés indítása gombra.

    A betanítási folyamat egy ideig tart, és az időtartam a kiválasztott számítás méretétől és az adatok mennyiségétől függően változhat. A modell első betanításakor valamivel hosszabb betanítási idő várható, mivel erőforrásokat kell kiépíteni. A futtatások előrehaladásának nyomon követéséhez válassza a Monitor aktuális futtatás az Azure portálon hivatkozást a Visual Studióban.

    A betanítási folyamat során a folyamatadatok a betanítási lépés Folyamat szakaszában jelennek meg.

    • Az állapot megjeleníti a betanítási folyamat befejezési állapotát.
    • A legjobb pontosság a Model Builder által eddig talált legjobban teljesítő modell pontosságát jeleníti meg. A nagyobb pontosság azt jelenti, hogy a modell helyesebben van előrejelezve a tesztadatokon.
    • Az algoritmus megjeleníti a Model Builder által eddig legjobban teljesítő algoritmus nevét.
  2. A betanítás befejezése után válassza a Következő lépés gombot a modell kiértékeléséhez.

A modell kiértékelése

A betanítási lépés eredménye egy olyan modell, amely a legjobb teljesítményt nyújtotta. A Model Builder eszköz kiértékelési lépésében a kimeneti szakaszban a Részletek lap a Algoritmus bejegyzésben a legjobb teljesítményt nyújtó modell által használt algoritmust, valamint a Pontosság bejegyzés metrikáit tartalmazza a Legjobb modell részletei között.

Ha nem elégedett a pontossági metrikákkal, a modell pontosságának néhány egyszerű módja az, ha több adatot használ, vagy kibővíti a meglévő adatokat. Ellenkező esetben a Következő lépés gombra kattintva lépjen a Model Builder eszköz utolsó lépésére.

(Nem kötelező) A modell felhasználása

Ebben a lépésben projektsablonok lesznek, amelyekkel felhasználhatja a modellt. Ez a lépés nem kötelező, és kiválaszthatja az igényeinek leginkább megfelelő módszert a modell kiszolgálásához.

  • Konzolalkalmazás
  • Webes API

Konzolalkalmazás

Amikor konzolalkalmazást ad hozzá a megoldáshoz, a rendszer kérni fogja, hogy nevezze el a projektet.

  1. Nevezze el a konzolprojektet LandUse_Console.

  2. Kattintson a Hozzáadás a megoldáshoz elemre, hogy a projektet hozzáadja az aktuális megoldásához.

  3. Futtassa az alkalmazást.

    A program által generált kimenetnek az alábbi kódrészlethez hasonlóan kell kinéznie:

    Predicted Label value: AnnualCrop
    
    Predicted Label scores: [0.9941197,3.3146807E-06,4.4344174E-06,0.000101028825,7.763133E-06,0.0015898133,0.0040994748,1.6308518E-06,6.265567E-05,1.0236401E-05]
    

Webes API

Amikor webes API-t ad hozzá a megoldáshoz, a rendszer kérni fogja, hogy nevezze el a projektet.

  1. Nevezze el a Webes API-projektet LandUse_API.

  2. Kattintson a Hozzáadás a megoldáshoz elemre, hogy a projektet hozzáadja a jelenlegi megoldáshoz.

  3. Futtassa az alkalmazást.

  4. Nyissa meg a PowerShellt, és írja be a következő kódot, amelyben az alkalmazás által figyelt PORT portot adja meg.

    $body = @{
         ImageSource = <Image location on your local machine>
    }
    
     Invoke-RestMethod "https://localhost:<PORT>/predict" -Method Post -Body ($body | ConvertTo-Json) -ContentType "application/json"
    
  5. Ha sikeres, a kimenetnek az alábbi szöveghez hasonlóan kell kinéznie.

    output1                                           prediction score
    -------                                           ---------- -----
    {9.508701, -3.1025503, -2.8115153, 0.31449434...} AnnualCrop {0.9941197, 3.3146807E-06, 4.4344174E-06, 0.00010102882...
    

Erőforrások törlése

Ha már nem tervezi használni a létrehozott Azure-erőforrásokat, törölje őket. Ez megakadályozza, hogy a továbbra is futó kihasználatlan erőforrásokért díjat számítsunk fel.

  1. Lépjen a Azure Portalra, és válassza a erőforráscsoportokat a portál menüjében.
  2. Az erőforráscsoportok listájában válassza ki a létrehozott erőforráscsoportot. Ebben az esetben ez "landuse-rg".
  3. Válassza a(z) Erőforráscsoport törléselehetőséget.
  4. Írja be a "landuse-rg" erőforráscsoport nevét a szövegmezőbe, majd válassza az Enterlehetőséget.

Következő lépések

Ebben az oktatóanyagban megtanulta, hogyan:

  • Az adatok előkészítése és értelmezése
  • Model Builder konfigurációs fájl létrehozása
  • Forgatókönyv kiválasztása
  • Adatok betöltése
  • Kísérlet létrehozása az Azure-ban
  • A modell betanítása
  • A modell kiértékelése
  • A modell felhasználása

Próbálja ki a Model Builder-forgatókönyvek egyikét: