Beslissingsforest met meerdere klassen
Belangrijk
De ondersteuning voor Azure Machine Learning-studio (klassiek) eindigt op 31 augustus 2024. U wordt aangeraden om vóór die datum over te stappen naar Azure Machine Learning.
Vanaf 1 december 2021 kunt u geen nieuwe resources voor Azure Machine Learning-studio (klassiek) meer maken. Tot en met 31 augustus 2024 kunt u de bestaande resources van Azure Machine Learning-studio (klassiek) blijven gebruiken.
- Zie informatie over het verplaatsen machine learning van ML Studio (klassiek) naar Azure Machine Learning.
- Meer informatie over Azure Machine Learning.
De documentatie van ML-studio (klassiek) wordt buiten gebruik gesteld en wordt in de toekomst mogelijk niet meer bijgewerkt.
Hiermee maakt u een classificatiemodel met meerdere klassen met behulp van het beslissings-forestalgoritme
Categorie: Machine Learning/ Model/classificatie initialiseren
Notitie
Van toepassing op: Machine Learning Studio (klassiek)
Vergelijkbare modules voor slepen en neerzetten zijn beschikbaar in Azure Machine Learning designer.
Moduleoverzicht
In dit artikel wordt beschreven hoe u de module Beslissings forest met meerdere klasses in Machine Learning Studio (klassiek) gebruikt om een machine learning-model te maken op basis van het beslissings forestalgoritme. Een beslissings forest is een ensemblemodel dat zeer snel een reeks beslissingsgroepen bouwt, terwijl u leert van gelabelde gegevens.
Meer informatie over beslissings forests
Het beslissings-forestalgoritme is een leermethode voor het classificeringsalgoritme van het ensemble. Het algoritme werkt door meerdere beslissingsboom te bouwen en vervolgens te stemmen op de populairste uitvoerklasse. Stemmen is een vorm van aggregatie, waarbij elke boomstructuur in een beslissings forest voor classificatie een niet-genormaliseerd frequentie histogram met labels uitvoer. Het aggregatieproces somt deze histogrammen op en normaliseert het resultaat om de 'waarschijnlijkheden' voor elk label te krijgen. De bomen met een hoog voorspellingsvertrouwen hebben een groter gewicht in de uiteindelijke beslissing van het ensemble.
Beslissingsmodellen zijn in het algemeen niet-parametrische modellen, wat betekent dat ze ondersteuning bieden voor gegevens met verschillende distributies. In elke boomstructuur wordt een reeks eenvoudige tests uitgevoerd voor elke klasse, waardoor de niveaus van een structuurstructuur worden verhogen totdat een leaf-knooppunt (beslissing) wordt bereikt.
Beslissingsboomsoorten hebben veel voordelen:
- Ze kunnen niet-lineaire beslissingsgrenzen vertegenwoordigen.
- Ze zijn efficiënt in berekenings- en geheugengebruik tijdens de training en voorspelling.
- Ze voeren geïntegreerde functieselectie en -classificatie uit.
- Ze zijn robuust in de aanwezigheid van ruisfuncties.
De beslissings-forestclassificator in Machine Learning Studio (klassiek) bestaat uit een geheel van beslissingsgroepen. Over het algemeen bieden ensemblemodellen een betere dekking en nauwkeurigheid dan enkelvoudige beslissingsgroepen. Zie Decision trees (Beslissingssytemen) voor meer informatie.
Beslissings forest met meerdere klasse configureren
Tip
Als u niet zeker bent van de beste parameters, raden we u aan de module Tune Model Hyperparameters te gebruiken om meerdere modellen te trainen en te testen en de optimale parameters te vinden.
Voeg de module Beslissings forest met meerdere klasses toe aan uw experiment in Studio (klassiek). U vindt deze module onder Machine Learning, Model initialiseren en Classificatie.
Dubbelklik op de module om het deelvenster Eigenschappen te openen.
Kies voor methode Resampling de methode die wordt gebruikt om de afzonderlijke boomen te maken. U kunt kiezen uit het inpakken of repliceren.
Bagging: Bagging wordt ook wel bootstrapaggregatie genoemd. In deze methode wordt elke boomstructuur gebaseerd op een nieuwe steekproef, gemaakt door de oorspronkelijke gegevensset willekeurig te nemen met vervanging totdat u een gegevensset hebt met de grootte van het origineel. De uitvoer van de modellen wordt gecombineerd door te stemmen. Dit is een vorm van aggregatie. Zie de Wikipedia-vermelding voor Bootstrap aggregeren voor meer informatie.
Repliceren: Bij replicatie wordt elke structuur getraind op exact dezelfde invoergegevens. Het bepalen van welk splitsingspredicaat wordt gebruikt voor elk structuur-knooppunt blijft willekeurig, waardoor diverse boomen worden gemaakt.
Zie de sectie How to Configure a Multiclass Decision Forest Model (Een beslissings-forestmodel met meerdere klasses configureren) voor hulp.
Geef op hoe u het model wilt trainen door de optie Trainer-modus maken in te stellen.
Enkele parameter: selecteer deze optie als u weet hoe u het model wilt configureren en geef een set waarden op als argumenten.
Parameterbereik: gebruik deze optie als u niet zeker bent van de beste parameters en een parameter-opruiming wilt gebruiken.
Aantal beslissingsgroepen: typ het maximum aantal beslissingsgroepen dat in het ensemble kan worden gemaakt. Door meer beslissingsbereiken te maken, kunt u mogelijk een betere dekking krijgen, maar de trainingstijd kan toenemen.
Deze waarde bepaalt ook het aantal bomen dat in de resultaten wordt weergegeven bij het visualiseren van het getrainde model. Als u één boomstructuur wilt zien of afdrukken, kunt u de waarde instellen op 1; Dit betekent echter dat er slechts één structuur kan worden geproduceerd (de structuur met de eerste set parameters) en dat er geen verdere iteraties worden uitgevoerd.
Maximale diepte van de beslissingsstructuur: typ een getal om de maximale diepte van een beslissingsstructuur te beperken. Het vergroten van de diepte van de structuur kan de precisie verhogen, met het risico van overfitting en een verhoogde trainingstijd.
Aantal willekeurige splitsingen per knooppunt: typ het aantal splitsingen dat moet worden gebruikt bij het bouwen van elk knooppunt van de structuur. Een splitsing betekent dat functies op elk niveau van de structuur (knooppunt) willekeurig worden verdeeld.
Minimum aantal steekproeven per leaf-knooppunt: hiermee geeft u het minimale aantal cases aan dat nodig is om een terminal knooppunt (leaf) in een boomstructuur te maken. Door deze waarde te verhogen, verhoogt u de drempelwaarde voor het maken van nieuwe regels.
Met de standaardwaarde 1 kan bijvoorbeeld zelfs één case ertoe leiden dat er een nieuwe regel wordt gemaakt. Als u de waarde verhoogt naar 5, moeten de trainingsgegevens ten minste 5 cases bevatten die aan dezelfde voorwaarden voldoen.
Onbekende waarden voor categorische functies toestaan: selecteer deze optie om een groep te maken voor onbekende waarden in de trainings- of validatiesets. Het model is mogelijk minder nauwkeurig voor bekende waarden, maar kan betere voorspellingen geven voor nieuwe (onbekende) waarden.
Als u deze optie uitselecteert, kan het model alleen de waarden accepteren die aanwezig zijn in de trainingsgegevens.
Verbinding maken een gelabelde datset en een van de trainingsmodules:
Als u de modus Create train mode instelt op Single Parameter, gebruikt u de module Train Model .
Als u de optie Oefenmodus maken in stelt op Parameterbereik, gebruikt u de module Tune Model Hyperparameters . Met deze optie kan de oefender meerdere combinaties van de instellingen itereren en de parameterwaarden bepalen die het beste model produceren.
Notitie
Als u een parameterbereik doorgeeft aan Train Model, wordt alleen de eerste waarde in de lijst met parameterbereiken gebruikt.
Als u één set parameterwaarden doorgeeft aan de module Tune Model Hyperparameters , worden de waarden genegeerd en worden de standaardwaarden voor de learner genegeerd wanneer er een bereik van instellingen voor elke parameter wordt verwacht.
Als u de optie Parameterbereik selecteert en één waarde voor een parameter ingeeft, wordt die ene waarde die u hebt opgegeven, gebruikt tijdens het opruimen, zelfs als andere parameters binnen een bereik van waarden veranderen.
Voer het experiment uit.
Resultaten
Nadat de training is voltooid:
- Als u de structuur wilt zien die bij elke iteratie is gemaakt, klikt u met de rechtermuisknop op De module Model trainen en selecteert u Getraind model om te visualiseren. Als u Tune Model Hyperparameters gebruikt, klikt u met de rechtermuisknop op de module en selecteert u Getraind beste model om het beste model te visualiseren. Als u de regels voor elk knooppunt wilt bekijken, klikt u op elke structuur om in te zoomen op de splitsingen.
Voorbeelden
Voor voorbeelden van hoe beslissings forests worden gebruikt in machine learning, zie de Azure AI Gallery:
- Voorbeeld van classificaties met meerdere klassen vergelijken: maakt gebruik van verschillende algoritmen en bespreekt de voor- en nadelen.
Technische opmerkingen
Deze sectie bevat implementatiedetails, tips en antwoorden op veelgestelde vragen.
Implementatiegegevens
Elke boomstructuur in een classificatiebeslissings forest geeft een niet-genormaliseerd frequentie histogram van labels weer. De aggregatie is om deze histogrammen op te sommen en te normaliseren om de 'waarschijnlijkheden' voor elk label op te halen. Op deze manier hebben de bomen met een hoog voorspellingsvertrouwen een groter gewicht in de uiteindelijke beslissing van het ensemble.
Gerelateerd onderzoek
Zie voor meer informatie over het trainingsproces met de optie Repliceren:
How to Configure a Multiclass Decision Forest Model
U kunt de manier wijzigen waarop de module is geconfigureerd voor scenario's zoals te weinig gegevens of beperkte training.
Beperkte trainingtijd
Als de trainingsset een groot aantal exemplaren bevat, maar de tijd die u beschikbaar hebt voor het trainen van het model beperkt is, kunt u de volgende opties gebruiken:
- Maak een beslissings-forest dat gebruikmaakt van een kleiner aantal beslissingsboomsoorten (bijvoorbeeld 5-10).
- Gebruik de optie Repliceren om opnieuw een steekproef te maken.
- Geef een kleiner aantal willekeurige splitsingen per knooppunt op (bijvoorbeeld minder dan 100).
Beperkte trainingsset
Als de trainingsset een beperkt aantal exemplaren bevat, gebruikt u deze opties:
- Maak een beslissings forest dat gebruikmaakt van een groot aantal beslissingsboomsoorten (bijvoorbeeld meer dan 20).
- Gebruik de optie Bagging om opnieuw een steekproef te nemen.
- Geef een groot aantal willekeurige splitsingen per knooppunt op (bijvoorbeeld meer dan 1000).
Moduleparameters
Name | Bereik | Type | Standaard | Beschrijving |
---|---|---|---|---|
Methode Resampling | Alle | ResamplingMethod | Zakken | Kies een hersampling-methode: Bagging of Replicate |
Aantal beslissingssytemen | >= 1 | Geheel getal | 8 | Geef het aantal beslissingsgroepen op dat in het ensemble moet worden gemaakt |
Maximale diepte van de beslissingsstramen | >= 1 | Geheel getal | 32 | Geef de maximale diepte op van elke beslissingsstructuur die kan worden gemaakt |
Aantal willekeurige splitsingen per knooppunt | >= 1 | Geheel getal | 128 | Geef het aantal splitsingen op dat per knooppunt wordt gegenereerd, van waaruit de optimale splitsing wordt geselecteerd |
Minimum aantal steekproeven per leaf-knooppunt | >= 1 | Geheel getal | 1 | Geef het minimale aantal trainingsvoorbeelden op dat is vereist voor het genereren van een leaf-knooppunt |
Onbekende waarden voor categorische functies toestaan | Alle | Boolean-waarde | True | Aangeven of onbekende waarden van bestaande categorische functies kunnen worden toegevoegd aan een nieuwe, aanvullende functie |
Uitvoerwaarden
Naam | Type | Description |
---|---|---|
Niet-getraind model | ILearner-interface | Een ongetraind classificatiemodel met meerdere klassen |
Zie ook
Classificatie
Beslissingsforest met twee klassen
Regressie beslissingsforest
Lijst met A-Z-modules