Share via


Modellierungsflags (Data Mining)

Sie können mithilfe der Modellierungsflags in SQL Server 2008 Analysis Services (SSAS) einem Data Mining-Algorithmus zusätzliche Informationen zu den Daten zur Verfügung stellen, die in einer Falltabelle definiert sind. Der Algorithmus kann diese Informationen verwenden, um ein genaueres Data Mining-Modell zu erstellen.

Mithilfe von Data Mining-Erweiterungen (Data Mining Extensions, DMX) können Sie Modellierungsflags programmgesteuert definieren, oder Sie können sie im Data Mining-Designer in Business Intelligence Development Studio definieren. Weitere Informationen zum Definieren dieser Flags finden Sie unter Miningmodellspalten.

Einige Modellierungsflags werden auf der Ebene der Miningstruktur definiert, während andere auf der Ebene der Miningmodellspalte definiert werden. Beispielsweise wird das NOT NULL-Modellierungsflag für Miningstrukturspalten verwendet. Sie können zusätzliche Modellierungsflags in der Miningmodellspalte definieren.

In der folgenden Liste werden die Modellierungsflags beschrieben, die in Analysis Services unterstützt werden. Weitere Informationen zu den Modellierungsflags, die von bestimmten Algorithmen unterstützt werden, finden Sie unter dem Thema in der technischen Referenz, in dem der betreffende Algorithmus behandelt wird.

  • NOT NULL
    Gibt an, dass die Werte für die Attributspalte auf keinen Fall einen NULL-Wert enthalten dürfen. Es führt zu einem Fehler, wenn Analysis Services während des Modelltrainings einen NULL-Wert für diese Attributspalte findet.

  • MODEL_EXISTENCE_ONLY
    Gibt an, dass die Spalte zwei Statuswerte enthalten kann: Missing und Existing. Der Wert NULL wird wie der Wert Missing behandelt.

    HinweisHinweis

    Missing ist ein spezieller vom Algorithmus verwendeter Statuswert, der nicht mit dem Textwert "Missing" bzw. "Fehlend" einer Spalte gleichbedeutend ist. Weitere Informationen finden Sie unter Fehlende Werte (Analysis Services - Data Mining).

    Dieses Modellierungsflag wird in der Regel zur Angabe von Attributen verwendet, bei denen der NULL-Status eine implizite Bedeutung hat und der explizite Wert des NOT NULL-Status nicht so wichtig ist wie die Tatsache, dass die Spalte überhaupt einen Wert enthält. Beispielsweise kann die Spalte [DateContractSigned] den Wert NULL enthalten, wenn ein Vertrag nie unterschrieben wurde, und den Wert NOT NULL, wenn der Wert unterschrieben wurde. Wenn das Modell vorhersagen soll, ob ein Vertrag unterschrieben wird, können Sie daher das MODEL_EXISTENCE_ONLY-Flag einsetzen, um den genauen Datumswert in den NOT NULL-Fällen zu ignorieren und nur zwischen den Fällen zu unterscheiden, in denen der Wert Missing oder Existing lautet.

  • REGRESSOR
    Die Werte der Attributspalte sind weniger wichtig als das Vorhandensein des Attributs. Dieses Flag wird für eine Miningmodellspalte definiert.

HinweisHinweis

Zusätzlich zu den von Analysis Services vordefinierten Modellierungsflags können Plug-Ins eines Drittanbieters über eigene Modellierungsflags verfügen.

Anzeigen und Ändern von Modellierungsflags

Im Data Mining-Designer können Sie die Modellierungsflags, die einer Miningstruktur oder Miningspalte zugeordnet sind, betrachten und ändern, indem Sie die Eigenschaften der Struktur oder des Modells anzeigen.

So zeigen Sie das Modellierungsflag für eine Strukturspalte oder eine Modellspalte an oder ändern es

  1. Doppelklicken Sie in BI Development Studio im Projektmappen-Explorer auf die Miningstruktur.

  2. Um das NOT NULL-Modellierungsflag festzulegen, klicken Sie auf die Registerkarte Miningstruktur.

    Um das REGRESSOR-Flag oder das MODEL_EXISTENCE_ONLY-Flag festzulegen, klicken Sie auf die Registerkarte Miningmodell.

  3. Klicken Sie mit der rechten Maustaste auf die Spalte, die Sie anzeigen oder ändern möchten, und wählen Sie Eigenschaften aus.

  4. Um ein neues Modellierungsflag hinzuzufügen, klicken Sie auf das Textfeld neben der Eigenschaft ModelingFlags, und aktivieren Sie das bzw. die Kontrollkästchen für die Modellierungsflags, die Sie verwenden möchten.

    Modellierungsflags werden nur angezeigt, wenn sie für den Datentyp der Spalte geeignet sind.

    HinweisHinweis

    Nachdem ein Modellierungsflag geändert wurde, muss das Modell erneut verarbeitet werden.

Die in einem vorhandenen Miningmodell und einer Struktur mit DMX verwendeten Modellierungsflags können nicht geändert werden. Sie müssen unter Verwendung der ALTER MINING STRUCTURE….ADD MINING MODEL-Syntax ein neues Miningmodell erstellen.

Wenn Sie nicht genau wissen, welche Modellierungsflags in der aktuellen Struktur verwendet werden, können Sie mit der folgenden Syntax eine Abfrage zur Rückgabe der Modellierungsflags formulieren:

SELECT COLUMN_NAME, MODELING_FLAG
FROM $system.DMSCHEMA_MINING_STRUCTURE_COLUMNS
WHERE STRUCTURE_NAME = '<structure name>'

Verwenden des REGRESSOR-Modellierungsflags

Wenn Sie das REGRESSOR-Modellierungsflag für eine Spalte festlegen, zeigen Sie dem Algorithmus damit an, dass die Spalte potenzielle Regressoren enthält. Die tatsächlich im Modell verwendeten Regressoren werden vom Algorithmus bestimmt. Ein potenzieller Regressor kann verworfen werden, wenn er das vorhersagbare Attribut nicht modelliert.

Wenn Sie mit dem Data Mining-Assistenten ein Modell erstellen, werden alle kontinuierlichen Eingabespalten als potenzielle Regressoren gekennzeichnet. Daher kann eine Spalte im fertigen Modell auch dann als Regressor verwendet werden, wenn für diese Spalte nicht explizit das REGRESSOR-Flag festgelegt wurde.

Sie können ermitteln, welche Regressoren im endgültigen Modell tatsächlich verwendet wurden, indem Sie, wie im folgenden Beispiel gezeigt, eine Abfrage auf das Schemarowset des Miningmodells ausführen:

SELECT COLUMN_NAME, MODELING_FLAG
FROM $system.DMSCHEMA_MINING_columnS
WHERE MODEL_NAME = '<model name>'

Hinweis   Wenn Sie ein Miningmodell verändern und den Inhaltstyp einer Spalte von kontinuierlich in diskret ändern, müssen Sie das Flag für die Miningspalte von Hand ändern und das Modell dann erneut verarbeiten.

Regressoren in linearen Regressionsmodellen

Lineare Regressionsmodelle basieren auf dem Microsoft Decision Trees-Algorithmus. Auch wenn Sie den Microsoft Linear Regression-Algorithmus nicht verwenden, kann jedes Entscheidungsstrukturmodell eine Struktur oder Knoten enthalten, die eine Regression für ein kontinuierliches Attribut darstellt bzw. darstellen.

Sie müssen nicht angeben, dass eine kontinuierliche Spalte einen Regressor darstellt. Der Microsoft Decision Trees-Algorithmus unterteilt das Dataset selbst dann in Bereiche mit sinnvollen Mustern, wenn Sie das REGRESSOR-Flag nicht für die Spalte festlegen. Wenn das Modellierungsflag festgelegt wurde, versucht der Algorithmus im Unterschied dazu Regressionsgleichungen der Form a*C1 + b*C2 + ... zu finden, um die Muster den Knoten der Struktur zuzuordnen. Dann wird die Summe der Restwerte berechnet, und wenn die Abweichung zu groß ist, wird die Struktur unterteilt.

Wenn Sie beispielsweise das Kaufverhalten von Kunden mithilfe des Attributs Income vorhersagen und das Modellierungsflag REGRESSOR für die Spalte festlegen, versucht der Algorithmus zuerst, die Werte der Spalte Income mithilfe einer Standardregressionsformel zuzuordnen. Ist die Abweichung zu groß, dann wird die Regressionsformel ignoriert und die Struktur nach einem anderen Attribut unterteilt. Der Decision Tree-Algorithmus versucht nach der Unterteilung, jedem der Zweige einen Regressor für Einkommen zuzuordnen.

Sie können durch Einsatz des FORCED_REGRESSOR-Parameters gewährleisten, dass der Algorithmus einen bestimmten Regressor verwendet. Dieser Parameter kann mit dem Decision Trees-Algorithmus und dem Linear Regression-Algorithmus verwendet werden.