Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
gäller för:
IoT Edge 1.1
Viktigt!
IoT Edge 1.1 supportdatumet upphör var den 13 december 2022. I informationen om Microsoft-produktens livscykel hittar du fler uppgifter om vilken support som gäller för denna produkt, tjänst, teknik eller detta API. Mer information om hur du uppdaterar till den senaste versionen av IoT Edge finns i Uppdatera IoT Edge-.
I den här artikeln utför vi följande uppgifter:
- Använd Azure Machine Learning Studio för att träna en maskininlärningsmodell.
- Paketera den tränade modellen som en containeravbildning.
- Distribuera containeravbildningen som en Azure IoT Edge-modul.
Machine Learning Studio är ett grundläggande block som används för att experimentera, träna och distribuera maskininlärningsmodeller.
Stegen i den här artikeln kan vanligtvis utföras av dataexperter.
I det här avsnittet av självstudien får du lära dig att:
- Skapa Jupyter Notebooks på en Azure Machine Learning-arbetsyta för att träna en maskininlärningsmodell.
- Containerisera den tränade maskininlärningsmodellen.
- Skapa en IoT Edge-modul från den containerbaserade maskininlärningsmodellen.
Förutsättningar
Den här artikeln är en del av en serie för en självstudie om hur du använder Machine Learning på IoT Edge. Varje artikel i serien bygger på arbetet i föregående artikel. Om du har kommit direkt till den här artikeln kan du läsa den första artikeln i serien.
Konfigurera Azure Machine Learning
Vi använder Machine Learning Studio som värd för de två Jupyter-notebook-filerna och stödfilerna. Här skapar och konfigurerar vi ett Machine Learning-projekt. Om du inte har använt Jupyter eller Machine Learning Studio finns följande två inledande dokument:
- Jupyter Notebook: Arbeta med Jupyter Notebooks i Visual Studio Code
- Azure Machine Learning: Kom igång med Azure Machine Learning i Jupyter Notebooks
Anmärkning
När tjänsten har konfigurerats kan du komma åt Machine Learning från valfri dator. Under installationen bör du använda den virtuella utvecklingsdatorn, som har alla filer som du behöver.
Installera Azure Machine Learning Visual Studio Code-tillägget
Visual Studio Code på den virtuella utvecklingsdatorn bör ha det här tillägget installerat. Om du kör på en annan instans installerar du om tillägget enligt beskrivningen i Konfigurera Visual Studio Code-tillägget.
Skapa ett Azure Machine Learning-konto
Om du vill etablera resurser och köra arbetsbelastningar i Azure loggar du in med dina autentiseringsuppgifter för Azure-kontot.
Öppna kommandopaletten i Visual Studio Code genom att välja Visa>kommandopaletten från menyraden.
Ange kommandot
Azure: Sign Ini kommandopaletten för att starta inloggningsprocessen. Följ anvisningarna för att slutföra inloggningen.Skapa en Machine Learning-beräkningsinstans för att köra din arbetsbelastning. På kommandopaletten anger du kommandot
Azure ML: Create Compute.Välj din Azure-prenumeration.
Välj + Skapa ny Azure ML-arbetsytaoch ange namnet turbofandemo.
Välj den resursgrupp som du har använt för den här demonstrationen.
Du bör se förloppet för att skapa arbetsytor i det nedre högra hörnet i Visual Studio Code-fönstret: Skapa arbetsyta: turobofandemo. Det här steget kan ta en minut eller två.
Vänta tills arbetsytan har skapats framgångsrikt. Det bör stå Azure ML-arbetsytan turbofandemo skapad.
Ladda upp Jupyter Notebook-filer
Vi laddar upp notebook-exempelfiler till en ny Machine Learning-arbetsyta.
Gå till ml.azure.com och logga in.
Välj din Microsoft-katalog, Azure-prenumeration och den nyligen skapade Machine Learning-arbetsytan.
När du har loggat in på din Machine Learning-arbetsyta går du till avsnittet Notebooks med hjälp av menyn till vänster.
Välj fliken Mina filer.
Välj Ladda upp (uppåtpilikonen).
Gå till C:\source\IoTEdgeAndMlSample\AzureNotebooks. Markera alla filer i listan och välj Öppna.
Markera kryssrutan jag litar på innehållet i dessa filer.
Välj Ladda upp för att börja ladda upp. Välj sedan Klar när processen är färdig.
Jupyter Notebook-filer
Nu ska vi granska de filer som du laddade upp till din Machine Learning-arbetsyta. Aktiviteterna i den här delen av handledningen sträcker sig över två notebook-filer, som använder sig av några stödfiler.
01-turbofan_regression.ipynb: Den här notebook-filen använder Machine Learning-arbetsytan för att skapa och köra ett maskininlärningsexperiment. Generellt utför notebook följande steg:
- Laddar ned data från Azure Storage-kontot som genererades av enhetens sele.
- Utforskar och förbereder data och använder sedan data för att träna klassificerarmodellen.
- Utvärderar modellen från experimentet med hjälp av en testdatauppsättning (Test_FD003.txt).
- Publicerar den bästa klassificerarmodellen till Machine Learning-arbetsytan.
02-turbofan_deploy_model.ipynb: Den här notebook-filen tar modellen som skapades i den föregående notebook-filen och använder den för att skapa en containeravbildning som är redo att distribueras till en IoT Edge-enhet. Anteckningsblocket utför följande steg:
- Skapar ett bedömningsskript för modellen.
- Skapar en containeravbildning med hjälp av klassificerarmodellen som sparades på Machine Learning-arbetsytan.
- Distribuerar avbildningen som en webbtjänst på Azure Container Instances.
- Använder webbtjänsten för att validera att modellen och bilden fungerar som förväntat. Den verifierade avbildningen kommer att distribueras till vår IoT Edge-enhet i delen Skapa och distribuera anpassade IoT Edge-moduler av detta självinlärningsprogram.
Test_FD003.txt: Den här filen innehåller de data som vi ska använda som testuppsättning när vi verifierar vår tränade klassificerare. Vi valde att använda testdata, enligt den ursprungliga tävlingen, som vår testuppsättning för enkelhetens skull.
RUL_FD003.txt: Den här filen innehåller återstående livslängd (RUL) för den sista cykeln för varje enhet i Test_FD003.txt-filen. Utförliga förklaringar av data finns i filerna readme.txt och Damage Propagation Modeling.pdf i C:\source\IoTEdgeAndMlSample\data\Turbofan.
Utils.py: Den här filen innehåller en uppsättning Python-verktygsfunktioner för att arbeta med data. Den första notebook-filen innehåller en detaljerad förklaring av funktionerna.
README.md: Den här readme-filen beskriver användningen av anteckningsböckerna.
Kör Jupyter Notebooks
Nu när arbetsytan har skapats kan du köra notebook-filerna.
På sidan Mina filer väljer du 01-turbofan_regression.ipynb.
Om anteckningsboken visas som Inte betrodd, välj widgeten Inte betrodd i det övre högra hörnet av anteckningsboken. När dialogrutan visas väljer du Förtroende.
För bästa resultat läser du dokumentationen för varje cell och kör den individuellt. Välj Kör i verktygsfältet. Senare ser du att det är lämpligt att köra flera celler. Du kan bortse från varningar om uppgradering och utfasning.
När en cell körs visas en asterisk mellan hakparenteserna ([*]). När cellens åtgärd är klar ersätts asterisken med ett tal och relevanta utdata kan visas. Cellerna i en notebook-fil skapas sekventiellt och endast en cell kan köras i taget.
Du kan också använda körningsalternativ från menyn Cell. Välj Ctrl+Retur för att köra en cell och välj Skift+Retur för att köra en cell och gå vidare till nästa cell.
Tips
Undvik att köra samma notebook-fil från flera flikar i webbläsaren för att säkerställa konsekventa celloperationer.
I cellen som följer anvisningarna Ange globala egenskaper anger du värdena för din Azure-prenumeration, dina inställningar och resurser. Kör sedan cellen.
I cellen innan arbetsyteinformation, efter att den har körts, leta efter länken som instruerar dig att logga in för att autenticera.
Öppna länken och ange den angivna koden. Den här inloggningsproceduren autentiserar Jupyter Notebook för åtkomst till Azure-resurser med hjälp av Kommandoradsgränssnittet för Microsoft Azure Cross-Platform.
I cellen som föregår Utforska resultatetkopierar du värdet från körnings-ID:t och klistrar in det för körnings-ID:t i cellen som följer Återskapa en körning.
Kör de återstående cellerna i notebook-filen.
Spara anteckningsboken och gå tillbaka till projektsidan.
Öppna 02-turbofan_deploy_model.ipynboch kör varje cell. Du måste logga in för att autentisera i cellen som följer Konfigurera arbetsyta.
Spara anteckningsboken och gå tillbaka till projektsidan.
Kontrollera att det har lyckats
För att kontrollera att anteckningsböckerna har slutförts framgångsrikt, verifiera att några objekt har skapats.
Välj uppdaterapå fliken Dina Machine Learning-anteckningsböcker i Mina filer.
Kontrollera att följande filer har skapats.
Fil Beskrivning ./aml_config/.azureml/config.json Konfigurationsfil som används för att skapa Machine Learning-arbetsytan. ./aml_config/model_config.json Konfigurationsfil som vi behöver för att distribuera modellen i turbofanDemo Machine Learning-arbetsyta i Azure. myenv.yml Innehåller information om beroendena för den distribuerade Machine Learning-modellen. Kontrollera att följande Azure-resurser har skapats. Vissa resursnamn läggs till med slumpmässiga tecken.
Azure-resurs Namn Azure Machine Learning-arbetsyta turborfanDemo Azure Container Registry (Azure-behållarregister) turbofandemoxxxxxxxxxx Programinsikter turbofaninsightxxxxxxxx Azure Key Vault turbofankeyvaultbxxxxxxxx Azure Storage turbofanstoragexxxxxxxxxxx
Felsökning
Du kan infoga Python-instruktioner i notebook-filen för felsökning, till exempel kommandot print() för att visa värden. Om du ser variabler eller objekt som inte har definierats kör du cellerna där de först deklareras eller instansieras.
Du kan behöva ta bort tidigare skapade filer och Azure-resurser om du behöver göra om anteckningsböckerna.
Rensa resurser
Den här handledningen är en del av en serie där varje artikel bygger vidare på det arbete som gjorts i de föregående. Vänta med att rensa dina resurser tills du har slutfört den sista lektionen.
Nästa steg
I den här artikeln använde vi två Jupyter-notebook-filer som körs i Machine Learning Studio för att använda data från turbofanenheterna för att:
- Träna en RUL-klassificerare.
- Spara klassificeraren som en modell.
- Skapa en containeravbildning.
- Distribuera och testa avbildningen som en webbtjänst.
Fortsätt till nästa artikel för att skapa en IoT Edge-enhet.