Multiclass Neural Network-onderdeel

In dit artikel wordt een onderdeel in azure Machine Learning Designer beschreven.

Gebruik dit onderdeel om een neuraal netwerkmodel te maken dat kan worden gebruikt om een doel met meerdere waarden te voorspellen.

Dit soort neurale netwerken kunnen bijvoorbeeld worden gebruikt in complexe Computer Vision-taken, zoals cijfer- of letterherkenning, documentclassificatie en patroonherkenning.

Classificatie met behulp van neurale netwerken is een leermethode onder supervisie en vereist daarom een getagde gegevensset met een labelkolom.

U kunt het model trainen door het model en de getagde gegevensset op te geven als invoer voor Train Model. Het getrainde model kan vervolgens worden gebruikt om waarden te voorspellen voor de nieuwe invoervoorbeelden.

Over neurale netwerken

Een neuraal netwerk is een set onderling verbonden lagen. De invoer is de eerste laag en zijn verbonden met een uitvoerlaag door een acyclische grafiek die bestaat uit gewogen randen en knooppunten.

Tussen de invoer- en uitvoerlaag kunt u meerdere verborgen lagen invoegen. De meeste voorspellende taken kunnen eenvoudig worden uitgevoerd met slechts één of een paar verborgen lagen. Recent onderzoek heeft echter aangetoond dat deep neural networks (DNN) met veel lagen effectief kunnen zijn in complexe taken zoals beeld- of spraakherkenning. De opeenvolgende lagen worden gebruikt om toenemende niveaus van semantische diepte te modelleren.

De relatie tussen invoer en uitvoer wordt geleerd door het neurale netwerk te trainen op de invoergegevens. De richting van de grafiek gaat van de invoer via de verborgen laag en naar de uitvoerlaag. Alle knooppunten in een laag worden door de gewogen randen verbonden met knooppunten in de volgende laag.

Voor het berekenen van de uitvoer van het netwerk voor een bepaalde invoer wordt een waarde berekend op elk knooppunt in de verborgen lagen en in de uitvoerlaag. De waarde wordt ingesteld door de gewogen som van de waarden van de knooppunten uit de vorige laag te berekenen. Vervolgens wordt een activeringsfunctie toegepast op die gewogen som.

Neuraal netwerk met meerdere klassen configureren

  1. Voeg het onderdeel MultiClass Neural Network toe aan uw pijplijn in de ontwerpfunctie. U vindt dit onderdeel onder Machine Learning, Initialiseren, in de categorie Classificatie .

  2. Trainermodus maken: gebruik deze optie om op te geven hoe u het model wilt trainen:

    • Enkele parameter: kies deze optie als u al weet hoe u het model wilt configureren.

    • Parameterbereik: selecteer deze optie als u niet zeker bent van de beste parameters en een parameter-sweep wilt uitvoeren. Selecteer een waardenbereik dat u wilt herhalen en de Hyperparameters van model afstemmen herhaalt alle mogelijke combinaties van de instellingen die u hebt opgegeven om de hyperparameters te bepalen die de optimale resultaten produceren.

  3. Specificatie van verborgen lagen: selecteer het type netwerkarchitectuur dat u wilt maken.

    • Volledig verbonden case: selecteer deze optie om een model te maken met behulp van de standaard neurale netwerkarchitectuur. Voor neurale netwerkmodellen met meerdere klassen zijn de standaardwaarden als volgt:

      • Eén verborgen laag
      • De uitvoerlaag is volledig verbonden met de verborgen laag.
      • De verborgen laag is volledig verbonden met de invoerlaag.
      • Het aantal knooppunten in de invoerlaag wordt bepaald door het aantal functies in de trainingsgegevens.
      • Het aantal knooppunten in de verborgen laag kan door de gebruiker worden ingesteld. De standaardwaarde is 100.
      • Het aantal knooppunten in de uitvoerlaag is afhankelijk van het aantal klassen.
  4. Aantal verborgen knooppunten: met deze optie kunt u het aantal verborgen knooppunten in de standaardarchitectuur aanpassen. Typ het aantal verborgen knooppunten. De standaardwaarde is één verborgen laag met 100 knooppunten.

  5. Het leerpercentage: definieer de grootte van de stap die wordt uitgevoerd bij elke iteratie, vóór correctie. Een hogere waarde voor het leerpercentage kan ertoe leiden dat het model sneller convergeert, maar het kan de lokale minima overschrijden.

  6. Aantal leeriteraties: geef het maximum aantal keren op dat het algoritme de trainingscases moet verwerken.

  7. De diameter van de initiële leergewichten: geef de knooppuntgewichten op aan het begin van het leerproces.

  8. Het momentum: geef een gewicht op dat tijdens het leren moet worden toegepast op knooppunten uit eerdere iteraties.

  9. Voorbeelden van willekeurige volgorde: selecteer deze optie om cases te verdelen tussen iteraties.

    Als u deze optie uitschakelt, worden aanvragen in exact dezelfde volgorde verwerkt telkens wanneer u de pijplijn uitvoert.

  10. Seed voor willekeurige getallen: typ een waarde die als seed moet worden gebruikt, als u de herhaalbaarheid wilt garanderen voor uitvoeringen van dezelfde pijplijn.

  11. Het model trainen:

    • Als u de modus Trainer maken instelt op Enkele parameter, verbindt u een getagde gegevensset en het onderdeel Train Model .

    • Als u de modus Trainer maken instelt op Parameterbereik, verbindt u een getagde gegevensset en traint u het model met behulp van Hyperparameters afstemmen.

    Notitie

    Als u een parameterbereik doorgeeft aan Train Model, wordt alleen de standaardwaarde in de lijst met parameters gebruikt.

    Als u één set parameterwaarden doorgeeft aan het onderdeel Model hyperparameters afstemmen en er een reeks instellingen voor elke parameter wordt verwacht, worden de waarden genegeerd en worden de standaardwaarden voor de cursist gebruikt.

    Als u de optie Parameterbereik selecteert en één waarde invoert voor een parameter, wordt die ene waarde die u hebt opgegeven, gebruikt tijdens de sweep, zelfs als andere parameters in een bereik van waarden veranderen.

Resultaten

Nadat de training is voltooid:

  • Als u een momentopname van het getrainde model wilt opslaan, selecteert u het tabblad Uitvoer in het rechterdeelvenster van het onderdeel Model trainen . Selecteer het pictogram Gegevensset registreren om het model op te slaan als een herbruikbaar onderdeel.

Volgende stappen

Bekijk de set onderdelen die beschikbaar zijn voor Azure Machine Learning.