Regressie beslissingsforest

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.

De documentatie van ML-studio (klassiek) wordt buiten gebruik gesteld en wordt in de toekomst mogelijk niet meer bijgewerkt.

Hiermee maakt u een regressiemodel met behulp van het beslissings-forestalgoritme

Categorie: Model initialiseren - Regressie

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 Decision Forest Regression in Machine Learning Studio (klassiek) gebruikt om een regressiemodel te maken op basis van een geheel van beslissingsgroepen.

Nadat u het model hebt geconfigureerd, moet u het trainen met behulp van een gelabelde gegevensset en de module Train Model . Het getrainde model kan vervolgens worden gebruikt om voorspellingen te doen. Het niet-getrainde model kan ook worden doorgegeven aan het model voor kruisvalidatie voor kruisvalidatie op een gelabelde gegevensset.

Hoe beslissings forests werken in regressietaken

Beslissingsstructuur zijn niet-parametrische modellen die een reeks eenvoudige tests uitvoeren voor elk exemplaar, die een binaire structuur van structuurgegevens doorlopen totdat een leaf-knooppunt (beslissing) is bereikt.

Beslissingsboomsoorten hebben de volgende voordelen:

  • Ze zijn efficiënt in zowel reken- als geheugengebruik tijdens de training en voorspelling.

  • Ze kunnen niet-lineaire beslissingsgrenzen vertegenwoordigen.

  • Ze voeren geïntegreerde functieselectie en -classificatie uit en zijn flexibel in de aanwezigheid van ruisfuncties.

Dit regressiemodel bestaat uit een geheel van beslissingsgroepen. Elke boomstructuur in een regressiebeslissings forest heeft een Gaussiaanse distributie als een voorspelling. Er wordt een aggregatie uitgevoerd op het ensemble van boomen om een Gaussiaanse distributie te vinden die het dichtst bij de gecombineerde distributie voor alle boomen in het model ligt.

Zie voor meer informatie over het theoretische framework voor dit algoritme en de implementatie ervan dit artikel: Beslissings forests: A Unified Framework for Classification, Regression, Density Estimation, Manifold Learning and Semi-Supervised Learning

Regressiemodel voor beslissings forest configureren

  1. Voeg de module Decision Forest Regression toe aan het experiment. U vindt de module in Studio (klassiek) onder Machine Learning, Model initialiseren en Regressie.

  2. Open de module-eigenschappen en kies voor methode Resampling de methode die wordt gebruikt om de afzonderlijke boomen te maken. U kunt kiezen uit Inpakken of Repliceren.

    • Bagging: Bagging wordt ook wel bootstrapaggregatie genoemd. Elke boomstructuur in een regressiebeslissings forest heeft een Gaussiaanse distributie als voorspelling. De aggregatie is om een Gaussian te vinden waarvan de eerste twee momenten overeenkomen met de momenten van de combinatie van Gaussians die worden gegeven door alle Gaussians te combineren die worden geretourneerd door afzonderlijke boomsoorten.

      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 en de structuur zal divers zijn.

      Zie Decision Forests for Computer Vision and Medical Image Analysis (Beslissings forests voor replicatie en analyse van medische afbeeldingen) voor meer informatie over het trainingsproces met de optie Repliceren. Criminisi en J. Shotton. Springer 2013..

  3. Geef op hoe u het model wilt trainen door de optie Trainer-modus maken in te stellen.

    • Eén parameter

      Als u weet hoe u het model wilt configureren, kunt u een specifieke set waarden als argumenten verstrekken. Mogelijk hebt u deze waarden geleerd door te experimenteren of ontvangen als richtlijn.

    • Parameterbereik

      Als u niet zeker bent van de beste parameters, kunt u de optimale parameters vinden door meerdere waarden op te geven en een parameteropruiming te gebruiken om de optimale configuratie te vinden.

      Met Tune Model Hyperparameters worden alle mogelijke combinaties van de instellingen die u hebt opgegeven, aangepast en wordt de combinatie van instellingen bepaald die de optimale resultaten oplevert.

  4. Geef bij Aantal beslissingsgroepen het totale aantal beslissingsgroepen aan dat in het ensemble moet worden gemaakt. Door meer beslissingsbereiken te maken, kunt u mogelijk een betere dekking krijgen, maar de trainingstijd neemt toe.

    Tip

    Deze waarde bepaalt ook het aantal bomen dat 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 boomstructuur wordt geproduceerd (de structuur met de eerste set parameters) en dat er geen verdere iteraties worden uitgevoerd.

  5. Voor Maximale diepte van de beslissingsstructuur typt u 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.

  6. Bij Aantal willekeurige splitsingen per knooppunt typt u 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.

  7. Geef voor Minimum aantal steekproeven per leaf-knooppunt 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.

  8. Selecteer de optie Onbekende waarden toestaan voor categorische functies om een groep te maken voor onbekende waarden in de trainings- of validatiesets.

    Als u de selectie ervan ongedaan maakt, kan het model alleen de waarden accepteren die zijn opgenomen in de trainingsgegevens. In het eerste geval is het model mogelijk minder nauwkeurig voor bekende waarden, maar het kan betere voorspellingen geven voor nieuwe (onbekende) waarden.

  9. Verbinding maken een gelabelde gegevensset, selecteert u één labelkolom met niet meer dan twee resultaten en verbindt u Train Model of Tune Model Hyperparameters.

  10. 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 uitvoer van de trainingsmodule en selecteert u Visualiseren.

  • Als u de regels voor elk knooppunt wilt zien, klikt u op elke structuur en zoomt u in op de splitsingen.

  • Als u een momentopname van het getrainde model wilt opslaan, klikt u met de rechtermuisknop op de uitvoer van de trainingsmodule en selecteert u Opslaan als getraind model. Deze kopie van het model wordt niet bijgewerkt bij opeenvolgende uitvoeringen van het experiment.

Voorbeelden

Zie deze voorbeeldexperimenten in de Cortana Intelligence Gallery voor voorbeelden van regressiemodellen:

Technische opmerkingen

Deze sectie bevat implementatiedetails, tips en antwoorden op veelgestelde vragen.

  • 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, gedurende de hele wisseling gebruikt, zelfs als andere parameters binnen een bereik van waarden veranderen.

Gebruikstips

Als u beperkte gegevens hebt of de tijd die u nodig hebt om het model te trainen wilt minimaliseren, probeert u de volgende instellingen:

Beperkte trainingsset. Als de trainingsset een beperkt aantal exemplaren bevat:

  • Het beslissings forest maken met behulp 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)

Beperkte trainingtijd. Als de trainingsset een groot aantal instanties bevat en de training tijd beperkt is:

  • Het beslissings forest maken met minder beslissingsboomsoorten (bijvoorbeeld 5-10)

  • Gebruik de optie Repliceren om opnieuw een steekproef te maken

  • Geef een klein aantal willekeurige splitsingen per knooppunt op (bijvoorbeeld minder dan 100)

Moduleparameters

Name Bereik Type Standaard Beschrijving
Methode Resampling alle ResamplingMethod Zakken Een hersampling-methode kiezen
Aantal beslissingsboomsoorten >= 1 Geheel getal 8 Geef het aantal beslissingsgroepen op dat in het ensemble moet worden gemaakt
Maximale diepte van de beslissingsboom >= 1 Geheel getal 32 Geef de maximale diepte op van een beslissingsstructuur die in het ensemble 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 minimum aantal trainingsvoorbeelden op dat is vereist voor het genereren van een leaf-knooppunt
Onbekende waarden voor categorische functies toestaan alle Booleaans true Aangeven of onbekende waarden van bestaande categorische functies kunnen worden toegevoegd aan een nieuwe, extra functie

Uitvoerwaarden

Naam Type Description
Niet-getraind model ILearner-interface Een ongetraind regressiemodel

Zie ook

Regressie

Lijst met A-Z-modules