HoloLens (1. generációs) és Azure 307: Gépi tanulás


Megjegyzés

A Mixed Reality Academy oktatóanyagait a HoloLens (1. generációs) és Mixed Reality modern headsetek szem előtt tartásával tervezték. Ezért fontosnak tartjuk, hogy ezeket az oktatóanyagokat helyben hagyjuk azoknak a fejlesztőknek, akik továbbra is útmutatást keresnek az ilyen eszközök fejlesztéséhez. Ezek az oktatóanyagok nem frissülnek az HoloLens 2 legújabb eszközkészleteivel vagy interakcióival. A támogatott eszközökön továbbra is működni fognak. A jövőben egy új oktatóanyag-sorozat jelenik meg, amely bemutatja, hogyan fejleszthet HoloLens 2. Ezt az értesítést a közzétételükkor az oktatóanyagokra mutató hivatkozással frissítjük.


final product -start

Ebben a tanfolyamban megtanulhatja, hogyan adhat hozzá Machine Learning-képességeket egy vegyes valóságú alkalmazáshoz az Azure Machine Learning Studio (klasszikus) használatával.

Az Azure Machine Learning Studio (klasszikus) egy Microsoft-szolgáltatás, amely számos gépi tanulási algoritmust biztosít a fejlesztőknek, amelyek segíthetnek az adatbevitelben, a kimenetben, az előkészítésben és a vizualizációban. Ezekből az összetevőkből ezután létrehozhat egy prediktív elemzési kísérletet, iterálhat rajta, és betaníthatja a modellt. A betanítást követően üzembe helyezheti a modellt az Azure-felhőben, hogy aztán új adatokat értékelhessenek. További információért látogasson el az Azure Machine Learning Studio (klasszikus) oldalára.

Miután elvégezte ezt a tanfolyamot, egy vegyes valósági modern headset-alkalmazással fog rendelkezni, és megtanulta, hogyan teheti meg az alábbiakat:

  1. Adjon meg egy értékesítési adatokat tartalmazó táblázatot az Azure Machine Learning Studio (klasszikus) portálján, és tervezzen meg egy algoritmust a népszerű elemek jövőbeli értékesítésének előrejelzéséhez.
  2. Hozzon létre egy Unity-projektet, amely képes fogadni és értelmezni az előrejelzési adatokat az ML-szolgáltatásból.
  3. Megjelenítheti a predikációs adatokat vizuálisan a Unity-projektben a legnépszerűbb értékesítési cikkek biztosításával egy polcon.

Az alkalmazásban ön múlik, hogyan fogja integrálni az eredményeket a tervével. Ez a tanfolyam arra szolgál, hogy megtanítsa, hogyan integrálhat egy Azure-szolgáltatást a Unity-projekttel. Az Ön feladata, hogy az ebből a tanfolyamból megszerzett tudást felhasználva továbbfejlesztse a vegyes valóság alkalmazását.

Ez a tanfolyam egy önálló oktatóanyag, amely közvetlenül nem tartalmaz semmilyen más Mixed Reality Labs-t.

Eszköztámogatás

Tanfolyam HoloLens Modern headsetek
MR és Azure 307: Gépi tanulás ✔️ ✔️

Megjegyzés

Bár ez a kurzus elsősorban Windows Mixed Reality magával ragadó (VR) headsetekre összpontosít, a tanfolyamban tanultakat alkalmazhatja a Microsoft HoloLens. Ahogy követi a tanfolyamot, jegyzeteket fog látni a HoloLens támogatásához esetleg szükséges módosításokról. A HoloLens használatakor visszhangot tapasztalhat a hangrögzítés során.

Előfeltételek

Megjegyzés

Ez az oktatóanyag olyan fejlesztőknek készült, akik alapszintű tapasztalattal rendelkeznek a Unityben és a C#-ben. Felhívjuk a figyelmét arra is, hogy a jelen dokumentumban szereplő előfeltételek és írásos utasítások az íráskor (2018. május) tesztelt és ellenőrzött adatokat jelölik. Szabadon használhatja a legújabb szoftvert, ahogy az az eszközök telepítéséről szóló cikkben szerepel, bár nem szabad feltételezni, hogy a tanfolyam információi tökéletesen megfelelnek az újabb szoftverekben található információknak, mint az alább felsoroltak.

Ehhez a tanfolyamhoz a következő hardvereket és szoftvereket javasoljuk:

Előkészületek

A projekt létrehozásával kapcsolatos problémák elkerülése érdekében javasoljuk, hogy az oktatóanyagban említett projektet gyökérszintű vagy gyökérszintű mappában hozza létre (a hosszú mappaelérési utak problémákat okozhatnak buildeléskor).

1. fejezet – Azure Storage-fiók beállítása

Az Azure Translator API használatához konfigurálnia kell a szolgáltatás egy példányát, amelyet elérhetővé kell tenni az alkalmazás számára.

  1. Jelentkezzen be az Azure Portalra.

    Megjegyzés

    Ha még nem rendelkezik Azure-fiókkal, létre kell hoznia egyet. Ha tantermi vagy laborhelyzetben követi ezt az oktatóanyagot, kérjen segítséget az oktatótól vagy az egyik szakembertől az új fiók beállításához.

  2. Miután bejelentkezett, kattintson a bal oldali menü Tárfiókok elemére.

    Képernyőkép a Microsoft Azure ablakról, amely a bal oldali navigációs menü Tárfiókok elemét mutatja.

    Megjegyzés

    Előfordulhat, hogy az Új szót az Erőforrás létrehozása kifejezésre cserélték az újabb portálokon.

  3. A Tárfiókok lapon kattintson a Hozzáadás gombra.

    Képernyőkép a Microsoft Azure ablakról, amelyen a Tárfiókok képernyő és a kiemelt Hozzáadás gomb látható.

  4. A Tárfiók létrehozása panelen:

    1. Adjon nevet a fióknak, ne feledje, hogy ez a mező csak számokat és kisbetűket fogad el.

    2. Az Üzembehelyezési modell beállításnál válassza aResource Manager lehetőséget.

    3. A Fiók típusa beállításnál válassza a Tárolás (általános célú v1) lehetőséget.

    4. A Teljesítmény mezőben válassza a Standard lehetőséget.

    5. A Replikáció beállításnál válassza az Írásvédett georedundáns tárolás (RA-GRS) lehetőséget.

    6. Hagyja letiltva a Biztonságos átvitel szükséges beállítást.

    7. Válasszon ki egy előfizetést.

    8. Válasszon egy erőforráscsoportot , vagy hozzon létre egy újat. Az erőforráscsoportokkal monitorozhat, szabályozhat hozzáférést, kiépíteni és kezelni tudja az Azure-objektumok gyűjteményének számlázását. Javasoljuk, hogy az egyetlen projekthez társított összes Azure-szolgáltatást (például ezeket a tesztkörnyezeteket) egy közös erőforráscsoport alatt tartsa.

      Ha többet szeretne megtudni az Azure-erőforráscsoportokról, látogasson el az erőforráscsoportról szóló cikkre.

    9. Határozza meg az erőforráscsoport helyét (ha új erőforráscsoportot hoz létre). A hely ideális esetben abban a régióban lenne, ahol az alkalmazás futna. Egyes Azure-eszközök csak bizonyos régiókban érhetők el.

  5. Azt is meg kell erősítenie, hogy megértette a szolgáltatásra vonatkozó feltételeket.

    Képernyőkép a Tárfiók létrehozása párbeszédpanelről, amelyen a felhasználó által a szükséges szövegmezőkbe kitöltött információk láthatók.

  6. Miután a Létrehozás gombra kattintott, meg kell várnia a szolgáltatás létrehozását, ez eltarthat egy percig.

  7. A szolgáltatáspéldány létrehozása után megjelenik egy értesítés a portálon.

    Képernyőkép a Sikeres üzembe helyezés értesítésről, amely tájékoztatja a felhasználót arról, hogy az erőforráscsoportba történő üzembe helyezés sikeres volt.

2. fejezet – Az Azure Machine Learning Studio (klasszikus)

Az Azure Machine Learning használatához konfigurálnia kell a Machine Learning szolgáltatás egy példányát, hogy elérhetővé legyen téve az alkalmazás számára.

  1. Az Azure Portalon kattintson a bal felső sarokban az Új elemre, és keresse meg a Machine Learning Studio-munkaterületet, és nyomja le az Enter billentyűt.

    Képernyőkép a Microsoft Azure ablakról, amely a Machine Learning Studio-munkaterületet jeleníti meg a tartalompanelen.

  2. Az új oldalon megjelenik a Machine Learning Studio Workspace szolgáltatás leírása. A parancssor bal alsó részén kattintson a Létrehozás gombra a szolgáltatással való társítás létrehozásához.

  3. Miután a Létrehozás gombra kattintott, megjelenik egy panel, ahol meg kell adnia néhány részletet az új Machine Learning Studio szolgáltatásról:

    1. Szúrja be a szolgáltatáspéldány kívánt munkaterületnevét .

    2. Válasszon ki egy előfizetést.

    3. Válasszon egy erőforráscsoportot , vagy hozzon létre egy újat. Az erőforráscsoportokkal monitorozhat, szabályozhat hozzáférést, kiépíteni és kezelni tudja az Azure-objektumok gyűjteményének számlázását. Javasoljuk, hogy az egyetlen projekthez társított összes Azure-szolgáltatást (például ezeket a tesztkörnyezeteket) egy közös erőforráscsoport alatt tartsa.

      Ha többet szeretne megtudni az Azure-erőforráscsoportokról, látogasson el az erőforráscsoportról szóló cikkre.

    4. Határozza meg az erőforráscsoport helyét (ha új erőforráscsoportot hoz létre). A hely ideális esetben abban a régióban lenne, ahol az alkalmazás futna. Egyes Azure-eszközök csak bizonyos régiókban érhetők el. Ugyanazt az erőforráscsoportot kell használnia, amelyet az előző fejezetben az Azure Storage létrehozásához használt.

    5. A Tárfiók szakaszban kattintson a Meglévő használata elemre, majd a legördülő menüre, majd onnan kattintson az előző fejezetben létrehozott tárfiókra .

    6. Válassza ki a megfelelő munkaterület tarifacsomagot a legördülő menüből.

    7. A Webszolgáltatás-csomag szakaszban kattintson az Új létrehozása elemre, majd szúrjon be egy nevet a szövegmezőbe.

    8. A Webszolgáltatás-csomag tarifacsomag szakaszában válassza ki az Ön által választott árszintet. A DEVTEST Standard nevű fejlesztési tesztelési szintnek ingyenesen elérhetőnek kell lennie.

    9. Azt is meg kell erősítenie, hogy megértette a szolgáltatásra vonatkozó feltételeket.

    10. Kattintson a Létrehozás lehetőségre.

      Képernyőkép az Azure Machine Learning Studio párbeszédpanelről, amelyen a felhasználó által a szövegmezőkbe beírt információk láthatók.

  4. Miután a Létrehozás gombra kattintott, meg kell várnia a szolgáltatás létrehozását, ez eltarthat egy percig.

  5. A szolgáltatáspéldány létrehozása után megjelenik egy értesítés a portálon.

    Képernyőkép a Microsoft Azure ablakról, amely egy olvasatlan értesítést jelenít meg a navigációs menüben.

  6. Kattintson az értesítésre az új szolgáltatáspéldány megismeréséhez.

    Képernyőkép a Sikeres üzembe helyezés értesítésről, amely tájékoztatja a felhasználót, hogy a munkaterület erőforráscsoportba való telepítése sikeres volt.

  7. Az értesítésben kattintson az Erőforrás megnyitása gombra az új szolgáltatáspéldány megismeréséhez.

  8. A megjelenő lapon, a További hivatkozások szakaszban kattintson a Machine Learning Studio indítása elemre, amely átirányítja a böngészőt a Machine Learning Studio portáljára.

    Képernyőkép a Microsoft Azure ablakról, amely a kiemelt Launch Machine Learning Studio hivatkozást jeleníti meg a tartalompanelen.

  9. Jelentkezzen be a Machine Learning Studióba (klasszikus) a jobb felső vagy középen található Bejelentkezés gombra.

    Képernyőkép a Machine Learning Studio ablakáról, amelyen a kiemelt Bejelentkezés gomb látható.

3. fejezet – A Machine Learning Studio (klasszikus): Adathalmaz beállítása

A Machine Learning-algoritmusok működésének egyik módja a meglévő adatok elemzése, majd a jövőbeli eredmények előrejelzése a meglévő adatkészlet alapján. Ez általában azt jelenti, hogy minél több meglévő adata van, annál jobb lesz az algoritmus a jövőbeli eredmények előrejelzésében.

Ehhez a tanfolyamhoz egy mintatáblát kap ProductsTableCSV néven, és innen tölthető le.

Fontos

A fenti .zip fájl tartalmazza a ProductsTableCSV és a .unitypackage fájlt is, amelyre a 6. fejezetben szüksége lesz. Ez a csomag a fejezeten belül is elérhető, bár külön a csv-fájltól.

Ez a mintaadatkészlet a 2017-es év minden napjának minden órájában rögzíti a legkelendőbb objektumokat.

Képernyőkép a Microsoft Excel ablakról, amely a 2017-es évben minden nap minden órájában megjeleníti a legkelendőbb objektumok mintaadatkészletét.

Például 2017 1. napján 13 órakor (13 óra) a legkelendőbb termék a só és a bors volt.

Ez a mintatábla 9998 bejegyzést tartalmaz.

  1. Lépjen vissza a Machine Learning Studio (klasszikus) portáljára, és adja hozzá ezt a táblát adatkészletként az ML-hez. Ehhez kattintson a képernyő bal alsó sarkában található + Új gombra.

    Képernyőkép a Microsoft Azure Machine Learning Studio klasszikus portáljáról, amelyen a menü kiemelt Új gombja látható.

  2. A szakasz alulról jelenik meg, és ezen belül a bal oldalon található a navigációs panel. Kattintson az Adathalmaz elemre, majd az attól jobbra lévő Helyi fájlból elemre.

    Képernyőkép az Új párbeszédpanelről, amely a kiemelt adatkészletet és a Helyi fájl menüelemeket jeleníti meg.

  3. Töltse fel az új adatkészletet az alábbi lépésekkel:

    1. Megjelenik a feltöltési ablak, ahol tallózhat a merevlemezen az új adatkészlethez.

      Képernyőkép az Új adathalmaz feltöltése párbeszédpanelről, amelyen a Tallózás gomb látható, amellyel a felhasználó megkeresheti és kiválaszthatja a feltölteni kívánt adatokat.

    2. Miután kiválasztotta, majd vissza a feltöltési ablakban, hagyja a jelölőnégyzetet észrevétlenül.

    3. Az alábbi szövegmezőben adja meg ProductsTableCSV.csvaz adathalmaz neveként (bár automatikusan hozzá kell adni).

    4. A Típus legördülő menüben válassza az Általános CSV-fájl fejléccel (.csv) lehetőséget.

    5. Nyomja le az osztást a feltöltési ablak jobb alsó sarkában, és a rendszer feltölti az Adathalmazt .

4. fejezet – A Machine Learning Studio (klasszikus): A kísérlet

Mielőtt felépítené a gépi tanulási rendszert, létre kell hoznia egy kísérletet az adatokkal kapcsolatos elméletének érvényesítéséhez. Az eredmények alapján tudni fogja, hogy több adatra van-e szüksége, vagy nincs-e korreláció az adatok és a lehetséges eredmények között.

Kísérlet létrehozásának megkezdése:

  1. Kattintson ismét a lap bal alsó részén található + Új gombra, majd kattintson az Üres kísérlet kísérlet elemre>.

    Képernyőkép a Microsoft Azure Machine Learning Studio ablakról, amelyen a Kísérlet menüelem van kiválasztva.

  2. Egy új oldal jelenik meg egy üres kísérlettel:

  3. A bal oldali panelen bontsa ki a Mentett adathalmazokSaját adathalmazok> elemet, és húzza a ProductsTableCSV elemet a kísérletvászonra.

    Képernyőkép a Kísérlet ablakról, amely a menüben a kibontott My Datasets mappát és a Products Table C S V mappát jeleníti meg a Kísérletvászonon.

  4. A bal oldali panelen bontsa ki az Adatátalakítási>minta és a Felosztás elemet. Ezután húzza az Adatok felosztása elemet a kísérletvászonra. Az Adatok felosztása elem két részre osztja az adatkészletet. Az egyik rész a gépi tanulási algoritmus betanítására használható. A második rész a létrehozott algoritmus pontosságának kiértékelésére szolgál.

    Képernyőkép a Kísérlet ablakról, amely a menü Partíció és Minta és Adatok felosztása elemét jeleníti meg a vászonra alkalmazott Adatok felosztása lehetőséggel.

  5. A jobb oldali panelen (miközben a vásznon az Adatok felosztása elem van kiválasztva) szerkessze az első kimeneti adathalmaz sorainak törtrészét0,7-re. Ez két részre osztja az adatokat, az első rész az adatok 70%-a, a második pedig a fennmaradó 30%. Annak érdekében, hogy az adatok véletlenszerűen legyenek felosztva, győződjön meg arról, hogy a Véletlenszerű felosztás jelölőnégyzet be van jelölve.

    Képernyőkép a Tulajdonságok panelről, amelyen a kitöltött Véletlenszerű felosztás jelölőnégyzet látható, és a Sorok törte mező értéke 0 pont 7.

  6. Húzzon egy kapcsolatot a ProductsTableCSV elem alapjáról a vásznon az Adatok felosztása elem tetejére. Ezzel összekapcsolja az elemeket, és elküldi a ProductsTableCSV adathalmaz kimenetét (az adatokat) az Adatok felosztása bemenethez.

    Képernyőkép a Kísérletvászonról, amely a Products Table C S V pont c s v és az Adatok felosztása közötti kapcsolatot mutatja.

  7. A bal oldali Kísérletek panelen bontsa ki a Machine Learning>Train elemet. Húzza ki a Modell betanítása elemet a Kísérletvászonra. A vászonnak ugyanúgy kell kinéznie, mint az alábbinak.

    Képernyőkép a Kísérletvászonról, amely a Products Table C S V pont c s v és az Adatok felosztása között rajzolt kapcsolatot mutatja be az alábbi Betanítási modellel.

  8. Az Adatok felosztása elem bal alsó sarkából húzza a kapcsolatot a Modell betanítása elem jobb felső sarkába. Az adathalmaz első 70%-os felosztását a Modell betanítása az algoritmus betanításához fogja használni.

    Képernyőkép a Kísérletvászonról, amely a Products Table C S V pont c s v, az Adatok felosztása és a Modell betanítása közötti kapcsolatot mutatja.

  9. Válassza a Modell betanítása elemet a vásznon, majd a Tulajdonságok panelen (a böngészőablak jobb oldalán) kattintson a Launch column selector gombra.

  10. A szövegmezőbe írja be a terméket , majd nyomja le az Enter billentyűt, a termék oszlopként lesz beállítva az előrejelzések betanítása érdekében. Ezt követően kattintson a jobb alsó sarokban lévő pipára a kijelölési párbeszédpanel bezárásához.

    Képernyőkép az Egyetlen oszlop kiválasztása párbeszédpanelről, amely az oszlopok menü kiemelt termékoszlopát jeleníti meg.

  11. Egy többosztályos logisztikai regressziós algoritmust fog betaníteni, amely előrejelzi a legtöbb eladott terméket a nap órája és a dátum alapján. A jelen dokumentum hatókörén kívül esik a Azure Machine Learning stúdió által biztosított különböző algoritmusok részleteinek magyarázata, azonban többet is megtudhat a Machine Learning Algorithm Cheat Sheet-ből.

  12. A bal oldali kísérletelemek panelen bontsa ki a Machine Learning>Inicializáljaamodellbesorolást>, és húzza a többosztályos logisztikai regressziós elemet a kísérletvászonra.

  13. Csatlakoztassa a kimenetet a többosztályos logisztikai regresszió aljáról a Modell betanítása elem bal felső bemenetéhez.

    Képernyőkép a kísérletvászonról, amely a többosztályos logisztikai regresszióhoz és az adatok felosztásához csatlakoztatott modell betanítását mutatja.

  14. A bal oldali panelen található kísérletelemek listájában bontsa ki a Machine Learning Score (Gépi tanulási>pontszám) elemet, és húzza a Modell pontszáma elemet a vászonra.

  15. Csatlakoztassa a kimenetet a Modell betanítása alulról a Score Model bal felső bemenetéhez.

  16. Csatlakoztassa az Adatok felosztása elem jobb alsó kimenetét a Modell pontozása elem jobb felső bemenetéhez.

    Képernyőkép a Kísérletvászonról, amely a modell betanításához és az adatok felosztásához csatlakoztatott pontszámmodellt mutatja.

  17. A bal oldali panel kísérletelemeinek listájában bontsa ki a MachineLearning-kiértékelés> elemet, és húzza a Modell kiértékelése elemet a vászonra.

  18. Csatlakoztassa a Score Model kimenetét a Modell kiértékelése bal felső bemenetéhez.

    Képernyőkép a Kísérletvászonról, amely a Score Modelhez csatlakoztatott modell kiértékelését mutatja.

  19. Elkészítette az első Machine Learning-kísérletet. Most már mentheti és futtathatja a kísérletet. A lap alján található menüben kattintson a Mentés gombra a kísérlet mentéséhez, majd kattintson a Futtatás gombra a kísérlet elindításához.

    Képernyőkép a Kísérletvászon menüről, amelyen a kiemelt Mentés és futtatás gomb látható.

  20. A kísérlet állapotát a vászon jobb felső sarkában láthatja. Várjon néhány percet, amíg a kísérlet befejeződik.

    Ha nagy (valós) adathalmazsal rendelkezik, valószínű, hogy a kísérlet futtatása több órát is igénybe vehet.

    Képernyőkép a Kísérletvászon ablakról, amely a kísérlet állapotát mutatja a jobb felső sarokban.

  21. Kattintson a jobb gombbal a modell kiértékelése elemre a vásznon, és a helyi menüben vigye az egérmutatót a Kiértékelési eredmények fölé, majd válassza a Vizualizáció lehetőséget.

    Képernyőkép a Modell kiértékelése elem jobb oldali menüjéről, amely a kiemelt Kiértékelési eredményeket és a Vizualizáció menüelemeket jeleníti meg.

  22. A kiértékelési eredmények az előrejelzett eredményeket és a tényleges eredményeket jelenítik meg. Ez a modell kiértékeléséhez az eredeti adatkészlet 30%-át használja, amely korábban fel lett osztva. Láthatja, hogy az eredmények nem nagyszerűek, ideális esetben minden sorban a legmagasabb szám lenne az oszlopok kiemelt eleme.

    Képernyőkép az Eredmények diagramról, amely a kísérlet eredményeit jeleníti meg százalékértékeket tartalmazó mezők diagramjában.

  23. Zárja be az Eredményeket.

  24. Az újonnan betanított Machine Learning-modell használatához webszolgáltatásként kell elérhetővé tennie. Ehhez kattintson a lap alján található menü Webszolgáltatás beállítása menüpontjára, majd a Prediktív webszolgáltatás elemre.

    Képernyőkép a Kísérlet menüről, amelyen a kiemelt Webszolgáltatás beállítása menüpont látható.

  25. Létrejön egy új lap, és a betanított modell egyesítve jön létre az új webszolgáltatás létrehozásához.

  26. A lap alján lévő menüben kattintson a Mentés, majd a Futtatás elemre. Az állapot frissül a kísérletvászon jobb felső sarkában.

    Képernyőkép a Kísérlet menüről, amely a kiemelt Futtatás menügombot és a Futtatás menüelemet mutatja.

  27. Ha végzett a futtatásával, megjelenik a Webszolgáltatás üzembe helyezése gomb a lap alján. Készen áll a webszolgáltatás üzembe helyezésére. Kattintson a webszolgáltatás (klasszikus) üzembe helyezése elemre a lap alján található menüben.

    Képernyőkép a Kísérlet menüről, amely a Webszolgáltatás üzembe helyezése menügomb kiemelt Klasszikus webszolgáltatás-üzembe helyezése menüpontját jeleníti meg.

    Előfordulhat, hogy a böngésző egy előugró ablak engedélyezését kéri, amelyet engedélyeznie kell, de előfordulhat, hogy újra le kell nyomnia a Deploy Web Service (Webszolgáltatás üzembe helyezése ) gombot, ha az üzembe helyezési lap nem jelenik meg.

  28. A kísérlet létrehozása után a rendszer átirányítja egy Irányítópult lapra, ahol megjelenik az API-kulcs . Másolja egy jegyzettömbbe egyelőre, hamarosan szüksége lesz rá a kódban. Miután feljegyezte az API-kulcsot, kattintson a Kulcs alatti Alapértelmezett végpont szakaszban található REQUEST/RESPONSE gombra.

    Képernyőkép a Microsoft Azure Machine Learning Studio ablakról, amelyen az A P I billentyű és a kiemelt Perjeles válasz hivatkozás látható.

    Megjegyzés

    Ha ezen a lapon a Tesztelés gombra kattint, beírhatja a bemeneti adatokat, és megtekintheti a kimenetet. Adja meg a napot és az órát. Hagyja üresen a termékbejegyzést . Ezután kattintson a Megerősítés gombra. A lap alján látható kimenetben a JSON látható, amely azt jelzi, hogy az egyes termékek milyen valószínűséggel választanak.

  29. Ekkor megnyílik egy új weblap, amelyen megjelennek a Machine Learning Studio (klasszikus) által igényelt kérelemstruktúrára vonatkozó utasítások és példák. Másolja a jegyzettömbbe az ezen az oldalon megjelenő Kérelem URI-t .

    Képernyőkép a Kérelemre adott válasz A P I dokumentációs oldaláról, amely a kiemelt Kérelem U R I-t mutatja.

Most már létrehozott egy gépi tanulási rendszert, amely a legvalószínűbb terméket kínálja az előzményvásárlási adatok alapján, az év napjának és napjának idejével korrelálva.

A webszolgáltatás meghívásához szüksége lesz a szolgáltatásvégpont URL-címére és a szolgáltatás API-kulcsára. Kattintson a felső menü Felhasználás lapjára.

A Használati adatok lapon megjelennek a webszolgáltatás kódból való meghívásához szükséges információk. Készítsen másolatot az elsődleges kulcsról és a kérés-válasz URL-címről . Ezekre a következő fejezetben lesz szüksége.

5. fejezet – A Unity-projekt létrehozása

Állítsa be és tesztelje Mixed Reality Modern headsetet.

Megjegyzés

Ehhez a tanfolyamhoz nem lesz szükség Mozgásvezérlőkre. Ha segítségre van szüksége a Modern headset beállításához, kattintson IDE.

  1. Nyissa meg a Unityt , és hozzon létre egy új Unity-projektet MR_MachineLearning néven. Győződjön meg arról, hogy a projekttípus 3D értékre van állítva.

  2. Ha a Unity meg van nyitva, érdemes ellenőrizni, hogy az alapértelmezett SzkriptszerkesztőVisual Studióra van-e állítva. Lépjen aBeállításokszerkesztése> elemre, majd az új ablakban lépjen a Külső eszközök elemre. Módosítsa a Külső szkriptszerkesztőtVisual Studio 2017-re. Zárja be a Beállítások ablakot.

  3. Ezután lépjen a Fájl>buildelési beállításai területre, és váltson Univerzális Windows-platform platformra aPlatformváltás gombra kattintva.

  4. Győződjön meg arról is, hogy:

    1. A Céleszköz bármely eszköz értékre van állítva.

      A Microsoft HoloLens állítsa a Céleszköz beállítást HoloLens értékre.

    2. A build típusaD3D értékre van állítva.

    3. Az SDK a Legújabb telepített értékre van állítva.

    4. A Visual Studio verziója a Legújabb telepítve értékre van állítva.

    5. A Build and Run (Létrehozás és futtatás ) beállítás helyi gépre van állítva.

    6. Ne aggódjon a jelenetek beállítása miatt, mivel ezek később lesznek elérhetők.

    7. A többi beállításnak egyelőre alapértelmezettként kell maradnia.

      Képernyőkép a Build Settings (Összeállítási beállítások) párbeszédpanelről, amelyen a Univerzális Windows-platform menüpont van kiválasztva.

  5. A Build Settings (Összeállítási beállítások ) ablakban kattintson a Player Settings (Lejátszó beállításai ) gombra. Ekkor megnyílik a kapcsolódó panel azon a helyen, ahol az Inspector található.

  6. Ebben a panelen ellenőrizni kell néhány beállítást:

    1. Az Egyéb beállítások lapon:

      1. A szkriptelésifuttatókörnyezet verziójánakkísérletinek kell lennie (.NET 4.6 egyenértékű)

      2. A szkriptelési háttérrendszernek.NET-nek kell lennie

      3. Az API-kompatibilitási szintnek.NET 4.6-osnak kell lennie

        Képernyőkép az Egyéb beállítások lapról, amely azokat a beállításokat jeleníti meg, amelyek a tagolt lépéseknek megfelelően engedélyezve vannak.

    2. A Közzétételi beállítások lap Képességek területén ellenőrizze a következőket:

      • InternetClient

        Képernyőkép a Közzétételi beállítások lapról, amely azt mutatja, hogy az Internetes ügyfél funkció engedélyezve van a Képességek területen.

    3. A panelen lejjebb, az XR-beállítások területen (amely a Közzétételi beállítások alatt található) jelölje be a Virtual Reality támogatott jelölőnégyzetet, és győződjön meg arról, hogy a Windows Mixed Reality SDK hozzá van adva

      Képernyőkép az X R-beállítások lapról, amelyen az S D K Windows Mixed Reality a Virtual Reality S D K s alatt engedélyezve van.

  7. A buildbeállításokban a Unity C#-projektek már nem szürkén jelennek meg; jelölje be a mellette lévő jelölőnégyzetet.

  8. Zárja be a Build Settings (Összeállítási beállítások) ablakot.

  9. Mentse a projektet (FÁJL > MENTÉSE PROJEKT).

6. fejezet – Az MLProducts Unity csomag importálása

Ehhez a tanfolyamhoz le kell töltenie egy Azure-MR-307.unitypackage nevű Unity Asset-csomagot. Ez a csomag egy jelenettel rendelkezik, amely az előre összeállított összes objektumot tartalmaz, így az összesre összpontosíthat. A ShelfKeeper szkriptet a rendszer biztosítja, de csak a nyilvános változókat tárolja a jelenetbeállítási struktúra érdekében. Az összes többi szakaszt el kell végeznie.

A csomag importálása:

  1. A Unity irányítópultja előtt kattintson a képernyő tetején lévő menü Eszközök elemére, majd kattintson az Import Package , Custom Package (Csomag importálása, egyéni csomag) elemre.

    Képernyőkép a Unity irányítópultjáról, amelyen a kiemelt Importálási csomag és az Egyéni csomag menüelemek láthatók.

  2. A fájlválasztóval válassza ki az Azure-MR-307.unitypackage csomagot, és kattintson a Megnyitás gombra.

  3. Ekkor megjelenik az eszköz összetevőinek listája. Az Importálás gombra kattintva erősítse meg az importálást.

    Képernyőkép a Unity-csomag importálása párbeszédpanelről, amelyen az Azure Machine Learning-csomag importálása történik.

  4. Miután befejezte az importálást, láthatja, hogy néhány új mappa megjelent a Unity-projektpanelen. Ezek a 3D modellek és a megfelelő anyagok, amelyek részét képezik az előre elkészített jelenet fog dolgozni. A kód nagy részét ebben a kurzusban fogja megírni.

    Képernyőkép a Unity projektpaneljéről, amelyen az újonnan importált mappák láthatók az Eszközök mappában.

  5. A Projektpanel mappában kattintson a Jelenetek mappára, majd kattintson duplán a jelenetre (az úgynevezett MR_MachineLearningScene). Ekkor megnyílik a jelenet (lásd az alábbi képet). Ha a piros rombuszok hiányoznak, egyszerűen kattintson a Gizmos gombra a Játék panel jobb felső sarkában.

    Képernyőkép a Unity Scene ablakról, amely a kiemelt Gizmos menüelemet jeleníti meg a felső navigációs sávon.

7. fejezet – A DLL-ek ellenőrzése a Unityben

A (szerializáláshoz és deszerializáláshoz használt) JSON-kódtárak használatának kihasználásához egy Newtonsoft DLL-t implementáltunk a behozott csomaggal. A kódtárnak megfelelő konfigurációval kell rendelkeznie, de érdemes ellenőrizni (különösen akkor, ha a kód nem működik).

Ehhez tegye a következőket:

  • Kattintson a Bal gombbal a Newtonsoft fájlra a Beépülő modulok mappában, és tekintse meg az Inspector panelt. Győződjön meg arról, hogy az Any Platform (Bármely platform ) jelölőnégyzet be van jelölve. Lépjen az UWP lapra , és győződjön meg arról, hogy a Folyamat mellőzése jelölőnégyzet be van jelölve.

    A DLL-ek importálása a Unityben

8. fejezet – A ShelfKeeper osztály létrehozása

A ShelfKeeper osztály olyan metódusokat üzemeltet, amelyek a jelenetben ívelt felhasználói felületet és termékeket szabályozzák.

Az importált csomag részeként megkapja ezt az osztályt, bár az nem teljes. Itt az ideje, hogy befejezze az osztályt:

  1. Kattintson duplán a ShelfKeeper szkriptre a Szkriptek mappában a Visual Studio 2017-ben való megnyitásához.

  2. Cserélje le a szkriptben meglévő összes kódot a következő kódra, amely beállítja az időpontot és a dátumot, és rendelkezik egy termék megjelenítésére szolgáló metódussal.

    using UnityEngine;
    
    public class ShelfKeeper : MonoBehaviour
    {
        /// <summary>
        /// Provides this class Singleton-like behavior
        /// </summary>
        public static ShelfKeeper instance;
    
        /// <summary>
        /// Unity Inspector accessible Reference to the Text Mesh object needed for data
        /// </summary>
        public TextMesh dateText;
    
        /// <summary>
        /// Unity Inspector accessible Reference to the Text Mesh object needed for time
        /// </summary>
        public TextMesh timeText;
    
        /// <summary>
        /// Provides references to the spawn locations for the products prefabs
        /// </summary>
        public Transform[] spawnPoint;
    
        private void Awake()
        {
            instance = this;
        }
    
        /// <summary>
        /// Set the text of the date in the scene
        /// </summary>
        public void SetDate(string day, string month)
        {
            dateText.text = day + " " + month;
        }
    
        /// <summary>
        /// Set the text of the time in the scene
        /// </summary>
        public void SetTime(string hour)
        {
            timeText.text = hour + ":00";
        }
    
        /// <summary>
        /// Spawn a product on the shelf by providing the name and selling grade
        /// </summary>
        /// <param name="name"></param>
        /// <param name="sellingGrade">0 being the best seller</param>
        public void SpawnProduct(string name, int sellingGrade)
        {
            Instantiate(Resources.Load(name),
                spawnPoint[sellingGrade].transform.position, spawnPoint[sellingGrade].transform.rotation);
        }
    }
    
  3. Mielőtt visszatér a Unitybe, mentse a módosításokat a Visual Studióban.

  4. A Unity-szerkesztőben ellenőrizze, hogy a ShelfKeeper osztály az alábbihoz hasonlóan néz-e ki:

    Képernyőkép a Polcőr osztályról, amely azt mutatja, hogy a referenciacélok Dátumszöveg-háló és Időszöveg-háló értékre vannak állítva.

    Fontos

    Ha a szkript nem rendelkezik hivatkozási célokkal (pl. Date (Text Mesh)), egyszerűen húzza a megfelelő objektumokat a Hierarchia panelről a célmezőkbe. Ha szükséges, az alábbiakban talál magyarázatot:

    1. Nyissa meg a Spawn Point tömböt a ShelfKeeper összetevőszkriptben a bal gombbal kattintva. Ekkor megjelenik egy Méret nevű alszakasz, amely a tömb méretét jelzi. Írja be a 3-at a Méret melletti szövegmezőbe, és nyomja le az Enter billentyűt, és alatta három tárolóhely jön létre.

    2. A Hierarchia területén bontsa ki az Időmegjelenítés objektumot (a mellette lévő nyílra kattintva). Ezután kattintson a Fő kamerára a hierarchián belül, hogy az Inspector megnyissa az adatait.

    3. Válassza ki a Fő kamerát a Hierarchia panelen. Húzza a Dátum és idő objektumokat a Hierarchia panelről a ShelfKeeper összetevő fő kamerájánakFelügyelőjénekDátumszöveg és Időszöveg tárolóhelyeire.

    4. Húzza az ívási pontokat a Hierarchia panelről (a Polc objektum alatt) a Ívási pont tömb alatti 3elem referenciapéldányára, ahogy az a képen látható.

      Képernyőkép a Hierarchia panelről, amely azt mutatja, hogy a Dátum, az Idő és a Három Ívási pont menüelem a Polcőr osztályban található.

9. fejezet – A ProductPrediction osztály létrehozása

A következő létrehozandó osztály a ProductPrediction osztály.

Ez az osztály felel a következőért:

  • A Machine Learning Service-példány lekérdezése az aktuális dátum és idő megadásával.

  • A JSON-válasz deszerializálása használható adatokba.

  • Az adatok értelmezése, a 3 ajánlott termék lekérése.

  • A ShelfKeeper osztály metódusainak meghívásával megjelenítheti az adatokat a Jelenetben.

Az osztály létrehozása:

  1. Nyissa meg a Szkriptek mappát a Projekt panelen.

  2. Kattintson a jobb gombbal a mappába, és hozza létre> aC# szkriptet. Hívja meg a ProductPrediction szkriptet.

  3. Kattintson duplán az új ProductPrediction szkriptre a Visual Studio 2017-ben való megnyitásához.

  4. Ha megjelenik a Fájlmódosítás észlelve párbeszédpanel, kattintson a *Megoldás betöltése elemre.

  5. Adja hozzá a következő névtereket a ProductPrediction osztály elejéhez:

    using System;
    using System.Collections.Generic;
    using UnityEngine;
    using System.Linq;
    using Newtonsoft.Json;
    using UnityEngine.Networking;
    using System.Runtime.Serialization;
    using System.Collections;
    
  6. A ProductPrediction osztályba szúrja be a következő két objektumot, amelyek több beágyazott osztályból állnak. Ezek az osztályok a Machine Learning Service JSON-jának szerializálására és deszerializálására szolgálnak.

        /// <summary>
        /// This object represents the Prediction request
        /// It host the day of the year and hour of the day
        /// The product must be left blank when serialising
        /// </summary>
        public class RootObject
        {
            public Inputs Inputs { get; set; }
        }
    
        public class Inputs
        {
            public Input1 input1 { get; set; }
        }
    
        public class Input1
        {
            public List<string> ColumnNames { get; set; }
            public List<List<string>> Values { get; set; }
        }
    
        /// <summary>
        /// This object containing the deserialised Prediction result
        /// It host the list of the products
        /// and the likelihood of them being sold at current date and time
        /// </summary>
        public class Prediction
        {
            public Results Results { get; set; }
        }
    
        public class Results
        {
            public Output1 output1;
        }
    
        public class Output1
        {
            public string type;
            public Value value;
        }
    
        public class Value
        {
            public List<string> ColumnNames { get; set; }
            public List<List<string>> Values { get; set; }
        }
    
  7. Ezután adja hozzá a következő változókat az előző kód fölé (hogy a JSON-hez kapcsolódó kód a szkript alján, az összes többi kód alatt legyen, és ne legyen útban):

        /// <summary>
        /// The 'Primary Key' from your Machine Learning Portal
        /// </summary>
        private string authKey = "-- Insert your service authentication key here --";
    
        /// <summary>
        /// The 'Request-Response' Service Endpoint from your Machine Learning Portal
        /// </summary>
        private string serviceEndpoint = "-- Insert your service endpoint here --";
    
        /// <summary>
        /// The Hour as set in Windows
        /// </summary>
        private string thisHour;
    
        /// <summary>
        /// The Day, as set in Windows
        /// </summary>
        private string thisDay;
    
        /// <summary>
        /// The Month, as set in Windows
        /// </summary>
        private string thisMonth;
    
        /// <summary>
        /// The Numeric Day from current Date Conversion
        /// </summary>
        private string dayOfTheYear;
    
        /// <summary>
        /// Dictionary for holding the first (or default) provided prediction 
        /// from the Machine Learning Experiment
        /// </summary>    
        private Dictionary<string, string> predictionDictionary;
    
        /// <summary>
        /// List for holding product prediction with name and scores
        /// </summary>
        private List<KeyValuePair<string, double>> keyValueList;
    

    Fontos

    Mindenképpen szúrja be az elsődleges kulcsot és a kérés-válasz végpontot a Machine Learning Portalról az itt található változókba. Az alábbi képeken látható, hogy honnan származik a kulcs és a végpont.

    Képernyőkép a Microsoft Azure Machine Learning Studióról, amelyen a Kérelem perjeles válasz hivatkozás látható az A P I súgólapja alatt.

    Képernyőkép a Kérelemre adott válasz A P I dokumentációs oldaláról, amely a kiemelt POST kérelem U R I-t jeleníti meg.

  8. Szúrja be ezt a kódot a Start() metódusba. A Rendszer meghívja a Start() metódust a osztály inicializálásakor:

        void Start()
        {
            // Call to get the current date and time as set in Windows
            GetTodayDateAndTime();
    
            // Call to set the HOUR in the UI
            ShelfKeeper.instance.SetTime(thisHour);
    
            // Call to set the DATE in the UI
            ShelfKeeper.instance.SetDate(thisDay, thisMonth);
    
            // Run the method to Get Predication from Azure Machine Learning
            StartCoroutine(GetPrediction(thisHour, dayOfTheYear));
        }
    
  9. Az alábbi módszer gyűjti össze a windowsos dátumot és időt, és olyan formátummá alakítja, amelyet a Machine Learning-kísérlet a táblázatban tárolt adatok összehasonlítására használhat.

        /// <summary>
        /// Get current date and hour
        /// </summary>
        private void GetTodayDateAndTime()
        {
            // Get today date and time
            DateTime todayDate = DateTime.Now;
    
            // Extrapolate the HOUR
            thisHour = todayDate.Hour.ToString();
    
            // Extrapolate the DATE
            thisDay = todayDate.Day.ToString();
            thisMonth = todayDate.ToString("MMM");
    
            // Extrapolate the day of the year
            dayOfTheYear = todayDate.DayOfYear.ToString();
        }
    
  10. Törölheti az Update() metódust, mivel ez a osztály nem fogja használni.

  11. Adja hozzá a következő metódust, amely közli az aktuális dátumot és időt a Machine Learning-végpontgal, és JSON formátumban kap választ.

        private IEnumerator GetPrediction(string timeOfDay, string dayOfYear)
        {
            // Populate the request object 
            // Using current day of the year and hour of the day
            RootObject ro = new RootObject
            {
                Inputs = new Inputs
                {
                    input1 = new Input1
                    {
                        ColumnNames = new List<string>
                        {
                            "day",
                            "hour",
                        "product"
                        },
                        Values = new List<List<string>>()
                    }
                }
            };
    
            List<string> l = new List<string>
            {
                dayOfYear,
                timeOfDay,
                ""
            };
    
            ro.Inputs.input1.Values.Add(l);
    
            Debug.LogFormat("Score request built");
    
            // Serialize the request
            string json = JsonConvert.SerializeObject(ro);
    
            using (UnityWebRequest www = UnityWebRequest.Post(serviceEndpoint, "POST"))
            {
                byte[] jsonToSend = new System.Text.UTF8Encoding().GetBytes(json);
                www.uploadHandler = new UploadHandlerRaw(jsonToSend);
    
                www.downloadHandler = new DownloadHandlerBuffer();
                www.SetRequestHeader("Authorization", "Bearer " + authKey);
                www.SetRequestHeader("Content-Type", "application/json");
                www.SetRequestHeader("Accept", "application/json");
    
                yield return www.SendWebRequest();
                string response = www.downloadHandler.text;
    
                // Deserialize the response
                DataContractSerializer serializer;
                serializer = new DataContractSerializer(typeof(string));
                DeserialiseJsonResponse(response);
            }
        }
    
  12. Adja hozzá a következő metódust, amely a JSON-válasz deszerializálásáért felelős, és a deszerializálás eredményét a ShelfKeeper osztálynak adja meg. Ez az eredmény annak a három elemnek a neve lesz, amely az aktuális dátum és időpont szerint a legjobban értékesíthető. Szúrja be az alábbi kódot a ProductPrediction osztályba az előző metódus alá.

        /// <summary>
        /// Deserialize the response received from the Machine Learning portal
        /// </summary>
        public void DeserialiseJsonResponse(string jsonResponse)
        {
            // Deserialize JSON
            Prediction prediction = JsonConvert.DeserializeObject<Prediction>(jsonResponse);
            predictionDictionary = new Dictionary<string, string>();
    
            for (int i = 0; i < prediction.Results.output1.value.ColumnNames.Count; i++)
            {
                if (prediction.Results.output1.value.Values[0][i] != null)
                {
                    predictionDictionary.Add(prediction.Results.output1.value.ColumnNames[i], prediction.Results.output1.value.Values[0][i]);
                }
            }
    
            keyValueList = new List<KeyValuePair<string, double>>();
    
            // Strip all non-results, by adding only items of interest to the scoreList
            for (int i = 0; i < predictionDictionary.Count; i++)
            {
                KeyValuePair<string, string> pair = predictionDictionary.ElementAt(i);
                if (pair.Key.StartsWith("Scored Probabilities"))
                {
                    // Parse string as double then simplify the string key so to only have the item name
                    double scorefloat = 0f;
                    double.TryParse(pair.Value, out scorefloat);
                    string simplifiedName =
                        pair.Key.Replace("\"", "").Replace("Scored Probabilities for Class", "").Trim();
                    keyValueList.Add(new KeyValuePair<string, double>(simplifiedName, scorefloat));
                }
            }
    
            // Sort Predictions (results will be lowest to highest)
            keyValueList.Sort((x, y) => y.Value.CompareTo(x.Value));
    
            // Spawn the top three items, from the keyValueList, which we have sorted
            for (int i = 0; i < 3; i++)
            {
                ShelfKeeper.instance.SpawnProduct(keyValueList[i].Key, i);
            }
    
            // Clear lists in case of reuse
            keyValueList.Clear();
            predictionDictionary.Clear();
        }
    
  13. Mentse a Visual Studiót , és térjen vissza a Unitybe.

  14. Húzza a ProductPrediction osztály szkriptet a Szkript mappából a Fő kamera objektumra.

  15. Mentse a jelenetet és a projektet : Fájl>mentése jelenet/Fájl>mentése projekt.

10. fejezet – Az UWP-megoldás létrehozása

Itt az ideje, hogy a projektet UWP-megoldásként hozza létre, hogy önálló alkalmazásként fusson.

Buildelés:

  1. Mentse az aktuális jelenetet aFájlmentési> jelenetek elemre kattintva.

  2. Nyissa meg a Fájl>buildelési beállításait

  3. Jelölje be a Unity C#-projektek nevű jelölőnégyzetet (ez azért fontos, mert lehetővé teszi az osztályok szerkesztését a buildelés befejezése után).

  4. Kattintson a Nyitott jelenetek hozzáadása elemre,

  5. Kattintson a Build (Build) gombra.

    Képernyőkép a Build Settings (Létrehozási beállítások) párbeszédpanelről, amelyen a Univerzális Windows-platform menüelem van kiemelve.

  6. A rendszer kérni fogja, hogy válassza ki azt a mappát, amelyben létre szeretné készíteni a megoldást.

  7. Hozzon létre egy BUILDS mappát, és ebben a mappában hozzon létre egy másik mappát, amelynek a neve megfelelő.

  8. Kattintson az új mappára, majd a Mappa kiválasztása elemre a build ezen a helyen való megkezdéséhez.

    Képernyőkép a Fájlkezelő ablakról, amely a kiemelt Builds mappát jeleníti meg.

    Képernyőkép a Fájlkezelő ablakról, amely a Builds mappa tartalmát és a kiemelt Mappa kiválasztása gombot jeleníti meg.

  9. Miután a Unity befejezte az építést (ez eltarthat egy ideig), megnyit egy Fájlkezelő ablakot a build helyén (ellenőrizze a tálcát, mivel előfordulhat, hogy nem mindig jelenik meg az ablakok felett, de értesítést küld az új ablak hozzáadásáról).

11. fejezet – Az alkalmazás üzembe helyezése

Az alkalmazás üzembe helyezése:

  1. Lépjen az új Unity-buildre (az Alkalmazás mappára), és nyissa meg a megoldásfájlt a Visual Studióval.

  2. A Visual Studio megnyitásakor vissza kell állítania a NuGet-csomagokat, amelyeket a jobb gombbal a MachineLearningLab_Build megoldásra kattintva végezhet el a Megoldáskezelő (a Visual Studio jobb oldalán található), majd kattintson a NuGet-csomagok visszaállítása elemre:

    Képernyőkép a Visual Studio ablakáról, amely a Kiemelt Nu Get Packages visszaállítási menüelemét mutatja.

  3. A Megoldáskonfiguráció területen válassza a Hibakeresés lehetőséget.

  4. A Megoldásplatformon válassza az x86, Helyi gép lehetőséget.

    A Microsoft HoloLens egyszerűbb lehet a Távoli gép beállítás, hogy ne legyen a számítógéphez kötve. Azonban a következőket is el kell végeznie:

    • Ismerje a HoloLens IP-címét , amely a Beállítások > hálózat & Internet > Wi-Fi > Speciális beállítások területen található; az IPv4 a használni kívánt cím.
    • Győződjön meg arról, hogy a fejlesztői módbe van kapcsolva; a Beállítások > frissítési & Fejlesztőknek című témakörben >található.

    Képernyőkép a Microsoft Visual Studio menüjéről, amely azt mutatja, hogy a Megoldásplatformon a Helyi gép lehetőség van kiválasztva.

  5. Nyissa meg a Build (Build) menüt , és kattintson a Megoldás telepítése elemre az alkalmazás pc-hez való közvetlen telepítéséhez.

  6. Az alkalmazásnak most már meg kell jelennie a telepített alkalmazások listájában, készen áll az indításra.

A Mixed Reality alkalmazás futtatásakor megjelenik a Unity-jelenetben beállított pad, és az inicializálástól kezdve lekéri az Azure-ban beállított adatokat. Az adatok deszerializálva lesznek az alkalmazásban, és az aktuális dátum és idő három legfontosabb eredménye vizuálisan, három modellként jelenik meg a padon.

A kész Machine Learning-alkalmazás

Gratulálunk, olyan vegyes valósági alkalmazást készített, amely az Azure Machine Learning használatával készít adat-előrejelzéseket, és megjeleníti azt a jelenetben.

Képernyőkép a Microsoft Visual Studio ablakáról, amely egy három objektumból álló polcot és egy kártyát jelenít meg a február 23-i 15 óra szöveggel.

Gyakorlat

1. gyakorlat

Kísérletezzen az alkalmazás rendezési sorrendjével, és jelenik meg a polcon a három alsó előrejelzés, mivel ezek az adatok szintén hasznosak lehetnek.

2. gyakorlat

Az Azure Tables használatával feltölthet egy új táblát az időjárási adatokkal, és új kísérletet hozhat létre az adatok használatával.