Microsoft-algoritme voor beslissingsbomen

Van toepassing op: SQL Server 2019 en eerder Analysis Services Azure Analysis Services Fabric/Power BI Premium

Belangrijk

Data mining werd verouderd verklaard in SQL Server 2017 Analysis Services en is nu stopgezet in SQL Server 2022 Analysis Services. Documentatie wordt niet bijgewerkt voor afgeschafte en stopgezette functies. Zie Analysis Services-compatibiliteit met eerdere versies voor meer informatie.

Het Microsoft Decision Trees Algorithm is een classificatie- en regressie-algoritme voor gebruik in voorspellende modellering van zowel discrete als continue kenmerken.

Voor discrete kenmerken doet het algoritme voorspellingen op basis van de relaties tussen invoerkolommen in een gegevensset. Het algoritme gebruikt de waarden of statussen van deze kolommen om de statussen van een kolom te voorspellen die u als voorspelbaar aanwijst. Het algoritme identificeert met name de invoerkolommen die zijn gecorreleerd met de voorspelbare kolom.

In een scenario om bijvoorbeeld te voorspellen welke klanten waarschijnlijk een fiets kopen, als negen van de tien jongere klanten maar slechts twee van de tien oudere klanten een fiets kopen, wordt door het algoritme afgeleid dat leeftijd een goede voorspelling is van de fietsaankoop. De beslissingsstructuur doet voorspellingen op basis van deze tendens naar een bepaald resultaat.

Voor continue kenmerken gebruikt het algoritme lineaire regressie om te bepalen waar een beslissingsstructuur wordt gesplitst.

Als meer dan één kolom is ingesteld op voorspelbaar, of als de invoergegevens een geneste tabel bevatten die is ingesteld op voorspelbaar, bouwt het algoritme een afzonderlijke beslissingsstructuur voor elke voorspelbare kolom.

Example

De marketingafdeling van het bedrijf Adventure Works Cycles wil de kenmerken van eerdere klanten identificeren die kunnen aangeven of die klanten in de toekomst waarschijnlijk een product zullen kopen. De Database AdventureWorks2012 slaat demografische gegevens op die eerdere klanten beschrijft. Met behulp van het Microsoft Decision Trees Algorithm om deze informatie te analyseren, kan de marketingafdeling een model bouwen dat voorspelt of een bepaalde klant producten koopt, op basis van de statussen van bekende kolommen over die klant, zoals demografische gegevens of eerdere aankooppatronen.

Hoe het algoritme werkt

Het Microsoft Decision Trees Algorithm bouwt een gegevensanalysemodel door een reeks splitsingen in de structuur te maken. Deze splitsingen worden weergegeven als knooppunten. Het algoritme voegt een knooppunt toe aan het model telkens wanneer er een invoerkolom wordt gevonden die aanzienlijk is gecorreleerd met de voorspelbare kolom. De manier waarop het algoritme een splitsing bepaalt, is afhankelijk van of het een doorlopende kolom of een discrete kolom voorspelt.

Het Microsoft Decision Trees Algorithm maakt gebruik van functieselectie om de selectie van de nuttigste kenmerken te begeleiden. Alle SQL Server algoritmes voor gegevensanalyse gebruiken functieselectie om de kwaliteit van prestaties en analyse te verbeteren en te voorkomen dat onbelangrijke kenmerken processortijd gebruiken. Als u te veel invoer- of voorspelbare kenmerken gebruikt wanneer u een gegevensanalysemodel ontwerpt, kan het lang duren voordat het model wordt verwerkt of onvoldoende geheugen heeft. Methoden die worden gebruikt om te bepalen of de boom moet worden gesplitst, omvatten branchegebruikelijke maatstaven voor entropie en Bayesiaanse netwerken. Zie Functieselectie (Gegevensanalyse) voor meer informatie over de methoden die worden gebruikt voor het selecteren van zinvolle kenmerken en vervolgens scoren en rangschikken van de kenmerken.

Een veelvoorkomend probleem bij dataminingmodellen is dat het model te gevoelig wordt voor kleine verschillen in de trainingsgegevens, wat overfit of overtraind wordt genoemd. Een overgepast model kan niet worden gegeneraliseerd naar andere gegevenssets. Om overfitting op een bepaalde set gegevens te voorkomen, gebruikt het Microsoft Decision Trees Algorithm technieken voor het beheersen van de groei van de boom. Voor een uitgebreide uitleg over de werking van het Microsoft Decision Trees-algoritme, zie Technische referentie voor het Microsoft Decision Trees-algoritme.

Discrete kolommen voorspellen

Het Microsoft Decision Trees Algorithm bouwt een structuur voor een discrete voorspelbare kolom met behulp van een histogram. In het volgende diagram ziet u een histogram waarin een voorspelbare kolom, Bike Buyers, wordt uitgelezen op basis van een invoerkolom, Leeftijd. Het histogram laat zien dat de leeftijd van een persoon helpt onderscheid te maken of die persoon een fiets koopt.

Schermopname van een histogram van het Microsoft Decision Trees Algorithm.

De correlatie die in het diagram wordt weergegeven, zorgt ervoor dat het algoritme Microsoft Decision Trees een nieuw knooppunt in het model maakt.

Schermopname van een beslissingsstructuurknooppunt.

Wanneer het algoritme nieuwe knooppunten aan een model toevoegt, creëert het een boomstructuur. Het bovenste knooppunt van de structuur beschrijft de uitsplitsing van de voorspelbare kolom voor de totale populatie van klanten. Naarmate het model blijft groeien, houdt het algoritme rekening met alle kolommen.

Continue kolommen voorspellen

Wanneer het Microsoft Decision Trees Algorithm een structuur bouwt op basis van een continue voorspelbare kolom, bevat elk knooppunt een regressieformule. Er treedt een splitsing op op een punt van niet-lineariteit in de regressieformule. Denk bijvoorbeeld aan het volgende diagram.

Schermopname van meerdere regressielijnen met niet-lineaire lijnen.

Een standaardregressiemodel probeert één formule af te leiden die de trend en relaties voor de gegevens als geheel vertegenwoordigt. Een enkele formule kan echter slecht presteren om de discontinuïteit in complexe gegevens vast te leggen. In plaats daarvan zoekt het Microsoft Decision Trees Algorithm naar segmenten van de structuur die grotendeels lineair zijn en maakt het afzonderlijke formules voor deze segmenten. Door de gegevens in verschillende segmenten op te splitsen, kan het model de gegevens beter benaderen.

Het volgende diagram vertegenwoordigt het structuurdiagram voor het model in het voorgaande spreidingsdiagram. Om het resultaat te voorspellen, biedt het model twee verschillende formules: een voor de linkerbranch met de formule y = ,5x x 5 en één voor de rechter vertakking met de formule y = .25x + 8,75. Het punt waar de twee lijnen samenkomen in het spreidingsdiagram, is het punt van niet-lineariteit waarbij een knooppunt in een beslissingsstructuurmodel wordt gesplitst.

Schermopname van een vergelijking die een punt van niet-lineariteit vertegenwoordigt.

Dit is een eenvoudig model met slechts twee lineaire vergelijkingen, dus de splitsing in de boom vindt onmiddellijk plaats na het knooppunt Alle. Er kan echter een splitsing optreden op elk niveau van de boomstructuur. In een boomstructuur met meerdere niveaus en knooppunten waarbij elk knooppunt wordt gekenmerkt door een andere verzameling kenmerken, kan een formule worden gedeeld over meerdere knooppunten of alleen worden toegepast op één knooppunt.

U krijgt bijvoorbeeld één formule voor een knooppunt dat is gedefinieerd als 'klanten over een bepaalde leeftijd en inkomen' en een ander in een knooppunt dat staat voor 'klanten die lange afstanden pendelen'. Als u de formule voor een afzonderlijk knooppunt of segment wilt zien, selecteert u het knooppunt.

Gegevens die vereist zijn voor beslissingsstructuurmodellen

Wanneer u gegevens voorbereidt voor gebruik in een beslissingsstructuurmodel, begrijpt u de vereisten voor het specifieke algoritme, inclusief de hoeveelheid gegevens die nodig zijn en hoe de gegevens worden gebruikt.

De vereisten voor een beslissingsstructuurmodel zijn als volgt:

  • Eén sleutelkolom. Elk model moet één numerieke kolom of tekstkolom bevatten die elke record uniek identificeert. Samengestelde sleutels zijn niet toegestaan.

  • Een voorspelbare kolom. Voor het model is ten minste één voorspelbare kolom vereist. U kunt meerdere voorspelbare kenmerken in een model opnemen en de voorspelbare kenmerken kunnen van verschillende typen zijn, hetzij numeriek of discreet. Het verhogen van het aantal voorspelbare kenmerken kan de verwerkingstijd verhogen.

  • Invoerkolommen. Voor het model zijn invoerkolommen vereist, die afzonderlijk of doorlopend kunnen zijn. Het verhogen van het aantal invoerkenmerken is van invloed op de verwerkingstijd.

Zie de sectie Vereisten van de technische documentatie van het Microsoft Decision Trees Algorithm Technical Reference voor gedetailleerde informatie over de ondersteunde inhoudstypen en gegevenstypen voor beslissingsstructuurmodellen.

Een beslissingsstructuurmodel weergeven

Gebruik de Microsoft Tree Viewer om het model te verkennen. Als uw model meerdere structuren genereert, kunt u een structuur selecteren en een uitsplitsing bekijken van hoe de cases voor elk voorspelbaar kenmerk worden gecategoriseerd. U kunt ook de interactie van de bomen bekijken met behulp van de afhankelijkheidsnetwerkviewer. Zie Bladeren in een model met behulp van Microsoft Tree Viewer voor meer informatie.

Voor meer informatie over een vertakking of knooppunt in de structuur kunt u ook door het model bladeren met behulp van de Microsoft Algemene inhoudsstructuurviewer. De inhoud die voor het model is opgeslagen, bevat de verdeling voor alle waarden in elk knooppunt, waarschijnlijkheden op elk niveau van de structuur en regressieformules voor continue kenmerken. Zie De inhoud van het miningmodel voor Decision Tree Models (Analysis Services - Data Mining) voor meer informatie.

Voorspellingen maken

Nadat het model is verwerkt, worden de resultaten opgeslagen als een set patronen en statistieken. Gebruik deze resultaten om relaties te verkennen of voorspellingen te doen.

Zie Decision Trees Model-queryvoorbeelden voor voorbeelden van query's die u met een beslissingsstructuurmodel kunt gebruiken.

Zie Data Mining-query's voor algemene informatie over het maken van query's voor miningmodellen.

Opmerkingen

  • Ondersteunt het gebruik van Predictive Model Markup Language (PMML) om mijnbouwmodellen te maken.

  • Ondersteunt drillthrough.

  • Ondersteunt het gebruik van OLAP-miningmodellen en het maken van dimensies voor gegevensanalyse.

Zie ook

Algoritmen voor gegevensanalyse (Analysis Services - Gegevensanalyse)
Technische Referentie voor Microsoft Decision Trees Algorithm
Voorbeelden van query's voor decision trees-modellen
Inhoud van het miningmodel voor beslissingsboommodellen (Analysis Services - Data Mining)