Képbesorolás ML.NET és Windows Machine Learning használatával

Képbesorolási folyamat

Ez az útmutató bemutatja, hogyan taníthat be neurális hálózati modellt az élelmiszerképek osztályozására ML.NET Model Builder használatával, exportálhatja a modellt ONNX formátumba, és hogyan helyezheti üzembe a modellt egy Helyileg futó Windows Machine Learning-alkalmazásban Egy Windows-eszközön. A gépi tanuláshoz nincs szükség korábbi szakértelemre, és lépésről lépésre végigvezetjük a folyamaton.

Ha szeretné megtudni, hogyan hozhat létre és taníthat be modelleket ML.NET Modellkészítővel, folytathatja a modell betanítása műveletet.

Ha rendelkezik modellel, és meg szeretné tanulni, hogyan hozhat létre winML-alkalmazást az alapoktól kezdve, lépjen a teljes WinML-alkalmazás oktatóanyagra.

Ha egy WinML-alkalmazás előre definiált megoldását szeretné beszerezni, klónozhatja a megoldásfájlt , és azonnal tesztelheti.

Forgatókönyv

Ebben az oktatóanyagban létrehozunk egy gépi tanulási élelmiszerbesorolási alkalmazást, amely Windows-eszközökön fut. A modell be lesz tanítva bizonyos típusú minták felismerésére az élelmiszerek képének besorolásához, és ha képet ad, egy besorolási címkét és a besoroláshoz tartozó százalékos megbízhatósági értéket ad vissza.

A modell betanításának előfeltételei

A modell létrehozásához és betanítása a ML.NET Model Buidert fogja használni a Visual Studióban.

  • A ML.NET Model Builder használatához a Visual Studio 2019 16.6.1 vagy újabb verziójára lesz szüksége. A Visual Studio itt érhető el.
  • Szüksége lesz egy Azure-fiókra, hogy betaníthassa a modellt ML.NET Model Builderrel az Azure ML-munkaterületen. Ha még nem rendelkezik azure-beli fiókkal, regisztrálhat ingyenes Azure-fiókra.

Megjegyzés:

Szeretne többet megtudni az Azure regisztrációs lehetőségeiről és az ingyenes Azure-fiókokról? Tekintse meg Azure-fiók létrehozása-t.

ML.NET Model Builder egy intuitív grafikus Visual Studio-bővítmény, amely egyéni gépi tanulási modellek létrehozására, betanítására és üzembe helyezésére szolgál. Automatizált gépi tanulást (AutoML) használ a különböző gépi tanulási algoritmusok és beállítások megismeréséhez, hogy segítsen megtalálni a forgatókönyvnek leginkább megfelelőt.

ML.NET Model Builder a Visual Studio 16.6.1-es vagy újabb verzióját használja az egyik .NET-számítási feladat telepítésekor. A Visual Studio letöltésekor vagy módosításakor győződjön meg arról, hogy a ML.NET Model Builder összetevő be van jelölve a telepítőben. Ha ellenőrizni szeretné, hogy a VS rendelkezik-e a ML.NET Model Builder-összetevőkkel, lépjen a Bővítmények elemre, és válassza a Bővítmények kezelése lehetőséget. Írja be a Model Buildert a keresősávba a bővítmény eredményeinek áttekintéséhez.

Modellkészítő bővítmény

ML.NET Model Builder jelenleg előzetes verziójú funkció. Az eszköz használatához a Visual Studióban az Eszközök > Beállítások > Környezet > Előzetes funkciók menüpontra kell navigálni, és engedélyeznie kell az ML.NET Model Buildert.

A modellkészítő bővítmény engedélyezése

Megjegyzés:

Szeretne többet megtudni ML.NET Model Builderről és az általa támogatott különböző forgatókönyvekről? Tekintse át a Model Builder dokumentációját.

A Windows ML-alkalmazás üzembe helyezésének előfeltételei

A Widows ML-alkalmazás létrehozásához és üzembe helyezéséhez a következőkre lesz szüksége:

  • Windows 10 1809-es (17763-es build) vagy újabb verzió. A build verziószámát winver a Futtatás paranccsal (Windows logo key + R)ellenőrizheti.
  • Windows SDK az 17763-os vagy újabb buildhez. Itt szerezheti be az SDK-t.
  • A Visual Studio 2019 16.6.1-es vagy újabb verziója. A Visual Studio itt érhető el.
  • Windows ML Code Generator (mlgen) Visual Studio-bővítmény. Letöltés a VS 2019-hez.
  • Ha úgy dönt, hogy létrehoz egy UWP-alkalmazást, engedélyeznie kell az univerzális Windows platform fejlesztési számítási feladatait a Visual Studióban.
  • A fejlesztői módot is engedélyeznie kell a pc-n

Megjegyzés:

A Windows ML API-k a Windows 10 (1809 vagy újabb) és a Windows Server 2019 legújabb verzióiba vannak beépítve. Ha a célplatform a Windows régebbi verziói, akkor a WinML-alkalmazást az terjeszthető NuGet-csomagba (Windows 8.1 vagy újabb) portolhatja.

Az adatok előkészítése

A gépi tanulási modelleket be kell tanítani meglévő adatokkal. Ebben az útmutatóban a Kaggle Open Datasets élelmiszerképeinek adatkészletét fogja használni. Ez az adatkészlet a nyilvános tartomány licence alatt van elosztva.

Fontos

Az adatkészlet használatához be kell tartania a Kaggle-webhely használati feltételeit és magát a Food-11 adatkészletet kísérő liscence kifejezéseket. A Microsoft nem vállal garanciát vagy képviseletet a webhelyre vagy az adatkészletre vonatkozóan.

Az adatkészlet három felosztást tartalmaz – értékelés, képzés és ellenőrzés –, és 16643 élelmiszerképet tartalmaz, 11 fő élelmiszerkategóriába csoportosítva. Az egyes élelmiszerkategóriák adathalmazában lévő képek külön mappába kerülnek, ami kényelmesebbé teszi a modell betanítási folyamatát.

Töltse le az adathalmazt itt. Vegye figyelembe, hogy az adathalmaz mérete körülbelül 1 gb, és előfordulhat, hogy az adatok letöltéséhez létre kell hoznia egy fiókot a Kaggle webhelyén.

Élelmiszerkép-adatkészlet

Ha szeretné, bármilyen más adathalmazt is használhat a releváns képekhez. Minimálisan azt javasoljuk, hogy címkénként legalább 30 képet használjon az első betanítási csoportban. Emellett érdemes néhány további képet is összegyűjteni, hogy tesztelje a modellt a betanítása után.

Emellett győződjön meg arról, hogy az összes betanítási rendszerkép megfelel a következő feltételeknek:

  • .jpg, .png, .bmpvagy .gif formátumot.
  • legfeljebb 6 MB méretű (előrejelzési képek esetén 4 MB).
  • legalább 256 képpont a legrövidebb élen; az ennél rövidebb képeket a Custom Vision Service automatikusan felskálázza.

Következő lépések

Most, hogy elrendezte az előfeltételeit, és előkészítette az adathalmazt, folytathatja a WinML-modell létrehozását. A következő részben a ML.NET Model Builder használatával hozza létre és tanítja be a besorolási modellt.