Microsoft Decision Trees Algorithm

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-algoritme 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. Hierbij worden de waarden, ook wel statussen genoemd, van deze kolommen gebruikt 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 een fiets kopen, maar slechts twee van de tien oudere klanten dit doen, afleiden het algoritme dat leeftijd een goede voorspeller van fietsaankoop is. 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. Door het algoritme Microsoft Decision Trees te gebruiken 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 algoritme Microsoft Decision Trees bouwt een gegevensanalysemodel door een reeks splitsingen in de structuur te maken. Deze splitsingen worden weergegeven als knooppunten. Het algoritme voegt steeds een knooppunt toe aan het model wanneer een invoerkolom 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 algoritme Microsoft Decision Trees gebruikt functieselectie om de selectie van de nuttigste kenmerken te begeleiden. Functieselectie wordt gebruikt door alle SQL Server Data Mining-algoritmen om de prestaties en de kwaliteit van de analyse te verbeteren. Functieselectie is belangrijk om te voorkomen dat onbelangrijke kenmerken processortijd gebruiken. Als u te veel invoer- of voorspelbare kenmerken gebruikt wanneer u een gegevensanalysemodel ontwerpt, kan het een zeer lange tijd duren voordat het model wordt verwerkt of zelfs onvoldoende geheugen heeft. Methoden die worden gebruikt om te bepalen of de structuur moet worden gesplitst, zijn industriestandaard metrische gegevens 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 in data mining-modellen is dat het model te gevoelig wordt voor kleine verschillen in de trainingsgegevens, in welk geval het een overfitting 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-algoritme technieken voor het beheren van de groei van de boom. Zie technische naslaginformatie over het Microsoft Decision Trees-algoritme voor een uitgebreidere uitleg over hoe het algoritme Microsoft Decision Trees werkt.

Discrete kolommen voorspellen

De manier waarop het Microsoft Decision Trees-algoritme een structuur bouwt voor een discrete voorspelbare kolom, kan worden gedemonstreerd 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.

Histogram van Microsoft Decision Trees-algoritme

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

Beslissingsstructuurknooppunt

Wanneer het algoritme nieuwe knooppunten toevoegt aan een model, wordt er een boomstructuur gevormd. 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.

Doorlopende kolommen voorspellen

Wanneer het algoritme Microsoft Decision Trees een structuur bouwt op basis van een doorlopend 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.

Meerdere regressielijnen met niet-lineariteit

In een standaardregressiemodel probeert u éé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 algoritme Microsoft Decision Trees 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 een veel betere taak hebben om de gegevens te benaderen.

Het volgende diagram vertegenwoordigt het structuurdiagram voor het model in het bovenstaande spreidingsdiagram. Om het resultaat te voorspellen, biedt het model twee verschillende formules: één 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 en is het punt waar een knooppunt in een beslissingsstructuurmodel wordt gesplitst.

Een vergelijking die een punt van niet-lineariteit vertegenwoordigt

Dit is een eenvoudig model met slechts twee lineaire vergelijkingen; daarom wordt de splitsing in de structuur direct na het knooppunt Alle uitgevoerd. Er kan echter een splitsing optreden op elk niveau van de boomstructuur. Dat betekent dat in een structuur met meerdere niveaus en knooppunten, waarbij elk knooppunt wordt gekenmerkt door een andere verzameling kenmerken, een formule kan worden gedeeld over meerdere knooppunten of alleen op één knooppunt worden toegepast. U kunt bijvoorbeeld één formule krijgen voor een knooppunt dat is gedefinieerd als 'klanten met een bepaalde leeftijd en inkomen', en een andere voor een knooppunt dat 'klanten die lange afstanden afleggen' vertegenwoordigt. Als u de formule voor een afzonderlijk knooppunt of segment wilt zien, klikt u op het knooppunt.

Gegevens die vereist zijn voor beslissingsstructuurmodellen

Wanneer u gegevens voorbereidt voor gebruik in een beslissingsstructurenmodel, moet u de vereisten voor het specifieke algoritme begrijpen, inclusief hoeveel gegevens er 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 Vereist ten minste één voorspelbare kolom. 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 echter verhogen.

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

Zie de sectie Vereisten van Microsoft Decision Trees Algorithm Technical Reference voor meer gedetailleerde informatie over de inhoudstypen en gegevenstypen die worden ondersteund voor beslissingsboommodellen.

Een Decision Trees-model weergeven

Als u het model wilt verkennen, kunt u De Microsoft Tree Viewer gebruiken. Als uw model meerdere structuren genereert, kunt u een structuur selecteren en in de viewer ziet u een uitsplitsing 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.

Als u meer informatie wilt over een vertakking of knooppunt in de structuur, kunt u ook door het model bladeren met behulp van de Algemene Inhoudsstructuurviewer van Microsoft. 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, die u kunt gebruiken om relaties te verkennen of voorspellingen te doen.

Zie Beslissingsboommodel-queryvoorbeelden voor voorbeelden van query's die u met een beslissingsboommodel 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
Analysemodelinhoud voor Decision Tree-modellen (Analysis Services - Gegevensanalyse)