Komponent för neuralt nätverk med flera klasser

I den här artikeln beskrivs en komponent i Azure Machine Learning-designern.

Använd den här komponenten för att skapa en modell för neuralt nätverk som kan användas för att förutsäga ett mål som har flera värden.

Neurala nätverk av den här typen kan till exempel användas i komplexa uppgifter för visuellt innehåll, till exempel igenkänning av siffror eller bokstäver, dokumentklassificering och mönsterigenkänning.

Klassificering med neurala nätverk är en övervakad inlärningsmetod och kräver därför en taggad datauppsättning som innehåller en etikettkolumn.

Du kan träna modellen genom att ange modellen och den taggade datauppsättningen som indata till Träningsmodell. Den tränade modellen kan sedan användas för att förutsäga värden för de nya indataexemplen.

Om neurala nätverk

Ett neuralt nätverk är en uppsättning sammankopplade lager. Indata är det första lagret och är anslutna till ett utdatalager med en acyklisk graf som består av viktade kanter och noder.

Mellan indata- och utdataskikten kan du infoga flera dolda lager. De flesta förutsägande uppgifter kan enkelt utföras med bara ett eller några dolda lager. Ny forskning har dock visat att djupa neurala nätverk (DNN) med många lager kan vara effektiva i komplexa uppgifter som bild- eller taligenkänning. De efterföljande lagren används för att modellera ökande nivåer av semantiskt djup.

Relationen mellan indata och utdata lärs från träning av det neurala nätverket på indata. Grafens riktning fortsätter från indata genom det dolda skiktet och till utdataskiktet. Alla noder i ett lager är anslutna via de viktade kanterna till noder i nästa lager.

För att beräkna nätverkets utdata för en viss indata beräknas ett värde vid varje nod i de dolda lagren och i utdataskiktet. Värdet anges genom beräkning av den viktade summan av nodernas värden från föregående lager. En aktiveringsfunktion tillämpas sedan på den viktade summan.

Konfigurera neuralt nätverk med flera klasser

  1. Lägg till komponenten MultiClass Neural Network i din pipeline i designern. Du hittar den här komponenten under Maskininlärning, Initiera, i kategorin Klassificering .

  2. Skapa träningsläge: Använd det här alternativet för att ange hur du vill att modellen ska tränas:

    • Enskild parameter: Välj det här alternativet om du redan vet hur du vill konfigurera modellen.

    • Parameterintervall: Välj det här alternativet om du inte är säker på de bästa parametrarna och vill köra en parameterrensning. Välj ett värdeintervall att iterera över, så itererar Tune Model Hyperparameters över alla möjliga kombinationer av de inställningar som du angav för att fastställa de hyperparametrar som ger optimala resultat.

  3. Specifikation av dolt lager: Välj vilken typ av nätverksarkitektur som ska skapas.

    • Fullständigt anslutet ärende: Välj det här alternativet om du vill skapa en modell med hjälp av standardarkitekturen för neuralt nätverk. För neurala nätverksmodeller med flera klasser är standardvärdena följande:

      • Ett dolt lager
      • Utdataskiktet är helt anslutet till det dolda lagret.
      • Det dolda lagret är helt anslutet till indataskiktet.
      • Antalet noder i indataskiktet bestäms av antalet funktioner i träningsdata.
      • Antalet noder i det dolda lagret kan anges av användaren. Standardvärdet är 100.
      • Antalet noder i utdataskiktet beror på antalet klasser.
  4. Antal dolda noder: Med det här alternativet kan du anpassa antalet dolda noder i standardarkitekturen. Ange antalet dolda noder. Standardvärdet är ett dolt lager med 100 noder.

  5. Inlärningstakten: Definiera storleken på det steg som tas vid varje iteration, före korrigering. Ett större värde för inlärningsfrekvensen kan göra att modellen konvergerar snabbare, men den kan överskrida lokal minima.

  6. Antal inlärningsiterationer: Ange det maximala antalet gånger som algoritmen ska bearbeta träningsfallen.

  7. Diametern för den inledande inlärningsvikten: Ange nodvikterna i början av inlärningsprocessen.

  8. Momentum: Ange en vikt som ska tillämpas under inlärning till noder från tidigare iterationer.

  9. Shuffle-exempel: Välj det här alternativet om du vill blanda ärenden mellan iterationer.

    Om du avmarkerar det här alternativet bearbetas ärenden i exakt samma ordning varje gång du kör pipelinen.

  10. Slumptalsutsäde: Ange ett värde som ska användas som startvärde, om du vill säkerställa repeterbarhet för körningar av samma pipeline.

  11. Träna modellen:

    • Om du anger Skapa träningsläge till Enskild parameter ansluter du en taggad datauppsättning och komponenten Träna modell .

    • Om du ställer in Skapa träningslägeParameterintervall ansluter du en taggad datauppsättning och tränar modellen med hjälp av Tune Model Hyperparameters.

    Anteckning

    Om du skickar ett parameterintervall till Train Model används endast standardvärdet i listan med enskilda parametrar.

    Om du skickar en enda uppsättning parametervärden till komponenten Tune Model Hyperparameters ignoreras värdena när en uppsättning inställningar för varje parameter förväntas, och standardvärdena för learner används.

    Om du väljer alternativet Parameterintervall och anger ett enda värde för valfri parameter används det enskilda värdet som du angav under svepet, även om andra parametrar ändras över ett värdeintervall.

Resultat

När träningen är klar:

  • Om du vill spara en ögonblicksbild av den tränade modellen väljer du fliken Utdata i den högra panelen i komponenten Träna modell . Välj ikonen Registrera datauppsättning för att spara modellen som en återanvändbar komponent.

Nästa steg

Se den uppsättning komponenter som är tillgängliga för Azure Machine Learning.