Microsoft Decision Trees-Algorithmus

Der Microsoft Decision Trees-Algorithmus ist ein Klassifizierungs- und Regressionsalgorithmus, der von Microsoft SQL Server 2005 Analysis Services (SSAS) für die Vorhersagemodellierung sowohl diskreter als auch kontinuierlicher Attribute bereitgestellt wird.

Bei diskreten Attributen gründet der Algorithmus seine Vorhersagen auf die Beziehungen zwischen den Eingabespalten in einem Dataset Er verwendet die Werte oder Zustände aus diesen Spalten zur Vorhersage der Zustände einer von Ihnen als vorhersagbar bestimmten Spalte. Dabei identifiziert der Algorithmus die Eingabespalten, die von der vorhersagbaren Spalte abhängig sind. Wenn z. B. in einem Szenario zur Vorhersage der wahrscheinlichen Käufer eines Fahrrads neun von zehn jüngeren Kunden ein Fahrrad kaufen, dies jedoch nur bei zwei von zehn älteren Kunden zutrifft, folgert der Algorithmus daraus, dass das Alter ein gutes Vorhersagekriterium für den Fahrradkauf ist. Die von der Entscheidungsstruktur getroffenen Vorhersagen gründen auf dieser Tendenz hinsichtlich eines bestimmten Ergebnisses.

Bei kontinuierlichen Attributen bestimmt der Algorithmus anhand einer linearen Regression, wo sich die Entscheidungsstruktur teilt.

Wenn mehr als eine Spalte als vorhersagbar festgelegt ist, oder wenn die Eingabedaten eine als vorhersagbar festgelegte Tabelle enthalten, bildet der Algorithmus für jede vorhersagbare Spalte eine eigene Entscheidungsstruktur.

Beispiel

Die Marketingabteilung der Firma Adventure Works Cycle möchte die Merkmale früherer Kunden identifizieren, anhand derer sich die Wahrscheinlichkeit ermitteln lässt, mit der diese Kunden künftig als Käufer eines Produkts in Frage kommen. In der AdventureWorks-Datenbank sind die demografischen Daten zur Beschreibung früherer Kunden gespeichert. Mithilfe des Microsoft Decision Trees-Algorithmus zur Analyse dieser Informationen kann die Marketingabteilung ein Vorhersagemodell entwickeln. Dieses Modell besagt, ob ein bestimmter Kunde als künftiger Käufer von Produkten in Frage kommt, wobei sich das Modell auf die Zustände bekannter Spalten zu diesem Kunden, wie z. B. demografische Muster oder frühere Kaufverhaltensmuster, stützt.

Funktionsweise des Algorithmus

Der Microsoft Decision Trees-Algorithmus erstellt eine Reihe von Teilungen in der Entscheidungsstruktur, so genannte Knoten, die zusammen ein Data Mining-Modell bilden. Der Algorithmus fügt dem Modell jedes Mal einen Knoten hinzu, wenn eine Eingabespalte in erheblichem Ausmaß von der vorhersagbaren Spalte abhängig ist. Wie der Algorithmus eine Teilung bestimmt, unterscheidet sich danach, ob er eine Vorhersage zu einer kontinuierlichen Spalte oder zu einer diskreten Spalte trifft. Eine ausführlichere Erläuterung zur Funktionsweise des Microsoft Decision Trees-Algorithmus im Zusammenhang mit diskreten vorhersagbaren Spalten finden Sie unter Scalable Classification over SQL Databases und Learning Bayesian Networks: The Combination of Knowledge and Statistical Data (in Englisch). Weitere Informationen zur Funktionsweise des Microsoft Decision Trees-Algorithmus im Zusammenhang mit kontinuierlichen vorhersagbaren Spalten finden Sie im Anhang von Autoregressive Tree Models for Time-Series Analysis (in Englisch).

Vorhersagen diskreter Spalten

Auf welche Weise Microsoft Decision Trees-Algorithmus eine Struktur für eine diskrete vorhersagbare Spalte erstellt, lässt sich anhand eines Histogramms verdeutlichen. Im folgenden Diagramm ist ein Histogramm abgebildet, in dem die vorhersagbare Spalte Bike Buyers (Fahrradkäufer) mit der Eingabespalte Age (Alter) abgeglichen wird. Aus dem Histogramm geht hervor, dass das Alter einer Person Rückschlüsse darauf zulässt, ob diese Person ein Fahrrad kaufen wird.

Histogramm vom Microsoft Decision Trees-Algorithmus

Die im Diagramm veranschaulichte Korrelation würde dazu führen, dass der Microsoft Decision Trees-Algorithmus einen neuen Knoten im Modell erstellt.

Entscheidungsstrukturknoten

Durch das Hinzufügen neuer Knoten zu einem Modell bildet der Algorithmus eine Baumstruktur. Der oberste Knoten der Struktur beschreibt, wie sich die vorhersagbare Spalte für die Gesamtpopulation der Kunden unterteilt. Beim Anwachsen des Modells werden nach und nach alle Spalten vom Algorithmus einbezogen.

Vorhersagen kontinuierlicher Spalten

Bei Entscheidungsstrukturen, die der Microsoft Decision Trees-Algorithmus anhand einer kontinuierlichen vorhersagbaren Spalte erstellt, enthält jeder Knoten eine Regressionsformel. Teilungen finden an Stellen der Nichtlinearität in der Regressionsformel statt. Betrachten Sie beispielsweise das folgende Diagramm.

Mehrere Regressionsgeraden zeigen Nichtlinearität an

Das Diagramm enthält Daten, die sowohl durch eine einzelne Linie als auch durch zwei verbundene Linien dargestellt werden können. Eine einzelne Linie würde die Daten jedoch nur unzureichend wiedergeben. Wenn Sie stattdessen zwei Linien verwenden, lassen sich die Daten im Modell wesentlich besser darstellen. Die Stelle, an der die beiden Linien zusammentreffen, ist die Stelle der Nichtlinearität und damit die Stelle, an der sich ein Knoten im Entscheidungsstrukturmodell teilen würde. So könnte beispielsweise der Knoten, der der Stelle der Nichtlinearität im obigen Graphen entspricht, durch folgendes Diagramm dargestellt werden. Die beiden Gleichungen stellen die Regressionsgleichungen der beiden Linien dar.

Gleichung für einen Nichtlinearitätspunkt

Verwenden des Algorithmus

Ein Entscheidungsstrukturmodell muss eine Schlüsselspalte, Eingabespalten und eine vorhersagbare Spalte enthalten.

Der Microsoft Decision Trees-Algorithmus unterstützt bestimmte Inhaltstypen für Eingabespalten und vorhersagbare Spalten sowie Modellierungsflags. Diese sind in der nachstehenden Tabelle aufgelistet.

Inhaltstypen für Eingabespalten

Kontinuierlich, Zyklisch, Diskret, Diskretisiert, Schlüssel, Tabelle und Sortiert

Inhaltstypen für vorhersagbare Spalten

Kontinuierlich, Zyklisch, Diskret, Diskretisiert, Tabelle und Sortiert

Modellierungsflags

MODEL_EXISTENCE_ONLY, NOT NULL und REGRESSOR

Alle Microsoft-Algorithmen unterstützen eine gemeinsame Reihe von Funktionen. Der Microsoft Decision Trees-Algorithmus unterstützt jedoch zusätzliche Funktionen, die in der folgenden Tabelle aufgeführt werden.

IsDescendant

PredictNodeId

IsInNode

PredictProbability

PredictAdjustedProbability

PredictStdev

PredictAssociation

PredictSupport

PredictHistogram

PredictVariance

Eine Liste der allen Microsoft-Algorithmen gemeinsamen Funktionen finden Sie unter Data Mining-Algorithmen. Weitere Informationen zum Verwenden dieser Funktionen finden Sie unter Data Mining-Erweiterungen (DMX) - Funktionsreferenz.

Der Microsoft Decision Trees-Algorithmus unterstützt das Verwenden von PMML (Predictive Model Markup Language) zum Erstellen von Miningmodellen.

Der Microsoft Decision Trees-Algorithmus unterstützt mehrere Parameter, die sich auf die Leistung und Genauigkeit des resultierenden Miningmodells auswirken. In der folgenden Tabelle wird jeder Parameter beschrieben.

Parameter Beschreibung

MAXIMUM_INPUT_ATTRIBUTES

Definiert die Anzahl von Eingabeattributen, die der Algorithmus ohne Aufrufen der Featureauswahl verarbeiten kann. Legen Sie diesen Wert auf 0 fest, um die Featureauswahl zu deaktivieren.

Der Standardwert lautet 255.

MAXIMUM_OUTPUT_ATTRIBUTES

Definiert die Anzahl von Ausgabeattributen, die der Algorithmus ohne Aufrufen der Featureauswahl verarbeiten kann. Legen Sie diesen Wert auf 0 fest, um die Featureauswahl zu deaktivieren.

Der Standardwert lautet 255.

SCORE_METHOD

Bestimmt die zum Berechnen des Teilungsergebnisses zu verwendende Methode. Verfügbare Optionen: Entropie (1), Bayes-Methode mit K2-A-priori-Verteilung (2) oder Bayes-Dirichlet-Äquivalent (BDE) mit A-priori-Verteilung (3).

Der Standardwert lautet 3.

SPLIT_METHOD

Bestimmt die zum Teilen des Knotens zu verwendende Methode. Verfügbare Optionen: Binär (1), Vollständig (2) oder Beide (3).

Der Standardwert lautet 3.

MINIMUM_SUPPORT

Bestimmt das Minimum von Endknotenfällen, die zum Generieren einer Teilung in der Entscheidungsstruktur erforderlich sind.

Der Standardwert ist 10.

COMPLEXITY_PENALTY

Steuert das Anwachsen der Entscheidungsstruktur. Ein niedriger Wert führt zu einer größeren Anzahl von Teilungen, und ein hoher Wert führt zu einer niedrigeren Anzahl von Teilungen. Der Standardwert richtet sich nach der Anzahl von Attributen in einem bestimmten Modell und ist der nachstehenden Liste zu entnehmen:

  • Für 1 bis 9 Attribute lautet der Wert 0,5.
  • Für 10 bis 99 Attribute lautet der Wert 0,9.
  • Für 100 oder mehr Attribute lautet der Wert 0,99.

FORCED_REGRESSOR

Zwingt den Algorithmus, die angegebenen Spalten als Regressoren zu verwenden, und zwar unabhängig von ihrer durch den Algorithmus berechneten Bedeutung. Dieser Parameter wird nur für Entscheidungsstrukturen verwendet, die ein kontinuierliches Attribut vorhersagen.

Siehe auch

Konzepte

Data Mining-Algorithmen
Data Mining-Assistent
Featureauswahl beim Data Mining
Anzeigen eines Miningmodells mit dem Microsoft Struktur-Viewer

Andere Ressourcen

CREATE MINING MODEL (DMX)

Hilfe und Informationen

Informationsquellen für SQL Server 2005