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.
Neurale netwerken van dit type kunnen bijvoorbeeld worden gebruikt in complexe Computer Vision-taken, zoals cijfer- of letterherkenning, documentclassificatie en patroonherkenning.
Classificatie met neurale netwerken is een leermethode onder supervisie en vereist daarom een getagde gegevensset die een labelkolom bevat.
U kunt het model trainen door het model en de gelabelde gegevensset op te geven als invoer voor Train Model. Het getrainde model kan vervolgens worden gebruikt om waarden voor de nieuwe invoervoorbeelden te voorspellen.
Over neurale netwerken
Een neuraal netwerk is een set onderling verbonden lagen. De invoer is de eerste laag en is verbonden met een uitvoerlaag door een acyclische grafiek die bestaat uit gewogen randen en knooppunten.
Tussen de invoer- en uitvoerlagen 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 neurale netwerken (DNN) met veel lagen effectief kunnen zijn in complexe taken, zoals afbeelding of spraakherkenning. De opeenvolgende lagen worden gebruikt om toenemende niveaus van semantische diepte te modelleren.
De relatie tussen invoer en uitvoer wordt geleerd van het trainen van het neurale netwerk op de invoergegevens. De richting van de grafiek gaat van de invoer door de verborgen laag en naar de uitvoerlaag. Alle knooppunten in een laag worden verbonden door de gewogen randen met knooppunten in de volgende laag.
Om de uitvoer van het netwerk voor een bepaalde invoer te berekenen, 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.
Multiclass Neural Network configureren
Voeg het multiclass neurale netwerkonderdeel toe aan uw pijplijn in de ontwerpfunctie. U vindt dit onderdeel onder Machine Learning, Initialiseren, in de categorie Classificatie .
Trainingsmodus maken: gebruik deze optie om op te geven hoe u het model wilt trainen:
Eén 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 u een parameter-sweep wilt uitvoeren. Selecteer een bereik met waarden om deze te herhalen en de Tune Model Hyperparameters herhalen alle mogelijke combinaties van de instellingen die u hebt opgegeven om de hyperparameters te bepalen die de optimale resultaten opleveren.
Specificatie van verborgen laag: 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 standaard is 100.
- Het aantal knooppunten in de uitvoerlaag is afhankelijk van het aantal klassen.
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.
Het leerpercentage: Definieer de grootte van de stap die bij elke iteratie is uitgevoerd voordat deze wordt gecorrigeerd. Een grotere waarde voor het leerpercentage kan ertoe leiden dat het model sneller convergeert, maar het kan de lokale minima overschrijden.
Aantal leeriteraties: Geef het maximum aantal keren op dat het algoritme de trainingscases moet verwerken.
De initiële diameter van de leergewichten: geef de knooppuntgewichten aan het begin van het leerproces op.
Het momentum: Geef een gewicht op dat moet worden toegepast tijdens het leren op knooppunten uit eerdere iteraties.
Voorbeelden van willekeurige volgorde: selecteer deze optie om aanvragen tussen iteraties te verdelen.
Als u deze optie uitschakelt, worden aanvragen in exact dezelfde volgorde verwerkt telkens wanneer u de pijplijn uitvoert.
Random number seed: Typ een waarde die moet worden gebruikt als de seed, als u herhaalbaarheid wilt garanderen voor uitvoeringen van dezelfde pijplijn.
Het model trainen:
Als u de modus Trainer maken instelt op Single 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 Tune Model Hyperparameters.
Notitie
Als u een parameterbereik doorgeeft aan Train Model, wordt alleen de standaardwaarde in de lijst met enkele parameters gebruikt.
Als u één set parameterwaarden doorgeeft aan het onderdeel Tune Model Hyperparameters , worden de waarden genegeerd en worden de standaardwaarden voor de cursist gebruikt wanneer er een reeks instellingen voor elke parameter wordt verwacht.
Als u de optie Parameterbereik selecteert en één waarde invoert voor een parameter, wordt die ene waarde die u hebt opgegeven tijdens de opruimen gebruikt, zelfs als andere parameters in een bereik met 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.