Delen via


Regressieonderdeel neurale netwerk

Hiermee maakt u een regressiemodel met behulp van een neuraal netwerkalgoritmen

Categorie: Machine Learning/Model initialiseren/Regressie

Overzicht van onderdelen

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

Gebruik dit onderdeel om een regressiemodel te maken met behulp van een aanpasbaar neuraal netwerkalgoritmen.

Hoewel neurale netwerken algemeen bekend zijn voor gebruik in deep learning en het modelleren van complexe problemen zoals beeldherkenning, zijn ze eenvoudig aangepast aan regressieproblemen. Elke klasse statistische modellen kan een neuraal netwerk worden aangeduid als ze adaptieve gewichten gebruiken en niet-lineaire functies van hun invoer kunnen benaderen. Neurale netwerkregressie is dus geschikt voor problemen waarbij een meer traditioneel regressiemodel geen oplossing kan vinden.

Regressie van neurale netwerken is een leermethode onder supervisie en vereist daarom een gelabelde gegevensset, die een labelkolom bevat. Omdat een regressiemodel een numerieke waarde voorspelt, moet de labelkolom een numeriek gegevenstype zijn.

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.

Regressie van neuraal netwerk configureren

Neurale netwerken kunnen uitgebreid worden aangepast. In deze sectie wordt beschreven hoe u een model maakt met behulp van twee methoden:

  • Een neuraal netwerkmodel maken met behulp van de standaardarchitectuur

    Als u de standaardarchitectuur voor neurale netwerken accepteert, gebruikt u het deelvenster Eigenschappen om parameters in te stellen waarmee het gedrag van het neurale netwerk wordt bepaald, zoals het aantal knooppunten in de verborgen laag, de leersnelheid en normalisatie.

    Begin hier als u geen kennis hebt met neurale netwerken. Het onderdeel ondersteunt veel aanpassingen, evenals modelafstemming, zonder diepgaande kennis van neurale netwerken.

  • Een aangepaste architectuur definiëren voor een neuraal netwerk

    Gebruik deze optie als u extra verborgen lagen wilt toevoegen of de netwerkarchitectuur, de bijbehorende verbindingen en activeringsfuncties volledig wilt aanpassen.

    Deze optie is het beste als u al enigszins bekend bent met neurale netwerken. U gebruikt de Net#-taal om de netwerkarchitectuur te definiëren.

Een neuraal netwerkmodel maken met behulp van de standaardarchitectuur

  1. Voeg het neurale netwerkregressieonderdeel toe aan uw pijplijn in de ontwerpfunctie. U vindt dit onderdeel onder Machine Learning, Initialiseren, in de categorie Regressie .

  2. Geef aan hoe u het model wilt trainen door de optie Trainer maken in te stellen.

    • 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.

  3. Selecteer in verborgen laagspecificatie de optie Volledig verbonden case. Met deze optie maakt u een model met behulp van de standaardarchitectuur voor neurale netwerken, die voor een regressiemodel voor neurale netwerken de volgende kenmerken heeft:

    • Het netwerk heeft precies één verborgen laag.
    • De uitvoerlaag is volledig verbonden met de verborgen laag en de verborgen laag is volledig verbonden met de invoerlaag.
    • Het aantal knooppunten in de verborgen laag kan worden ingesteld door de gebruiker (de standaardwaarde is 100).

    Omdat het aantal knooppunten in de invoerlaag wordt bepaald door het aantal functies in de trainingsgegevens, kan er in een regressiemodel slechts één knooppunt in de uitvoerlaag zijn.

  4. Bij Het aantal verborgen knooppunten typt u het aantal verborgen knooppunten. De standaardwaarde is één verborgen laag met 100 knooppunten. (Deze optie is niet beschikbaar als u een aangepaste architectuur definieert met Net#.)

  5. Voor leersnelheid typt u een waarde die de stap definieert die bij elke iteratie wordt uitgevoerd, vóór correctie. Een grotere waarde voor het leerpercentage kan ertoe leiden dat het model sneller convergeert, maar het kan de lokale minima overschrijden.

  6. Geef voor het aantal leeriteraties het maximum aantal keren op dat het algoritme de trainingscases verwerkt.

  7. Voor het momentum typt u een waarde die u tijdens het leren wilt toepassen als gewicht op knooppunten uit eerdere iteraties.

  8. Selecteer de optie Shuffle-voorbeelden om de volgorde van zaken tussen iteraties te wijzigen. Als u deze optie uitschakelt, worden aanvragen in exact dezelfde volgorde verwerkt telkens wanneer u de pijplijn uitvoert.

  9. Voor willekeurig getalzaad kunt u desgewenst een waarde typen die u als seed wilt gebruiken. Het opgeven van een seed-waarde is handig als u herhaalbaarheid wilt garanderen voor uitvoeringen van dezelfde pijplijn.

  10. Een trainingsgegevensset verbinden en 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.

  11. Verzend de pijplijn.

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.