Freigeben über


CREATE MINING MODEL (DMX)

Erstellt sowohl ein neues Miningmodell als auch eine Miningstruktur in der Datenbank. Sie können ein Modell erstellen, indem Sie entweder das neue Modell in der Anweisung definieren oder PMML (Predictive Model Markup Language) verwenden. Diese zweite Möglichkeit empfiehlt sich nur für fortgeschrittene Benutzer.

Der Name der Miningstruktur ergibt sich, indem "_structure" an den Modellnamen angefügt wird. Dadurch ist sichergestellt, dass sich der Strukturname vom Modellnamen unterscheidet.

Wenn Sie ein Miningmodell für eine vorhandene Miningstruktur erstellen möchten, verwenden Sie die ALTER MINING STRUCTURE (DMX)-Anweisung.

Syntax

CREATE [SESSION] MINING MODEL <model>
(
    [(<column definition list>)]
)
USING <algorithm> [(<parameter list>)] [WITH DRILLTHROUGH]
CREATE MINING MODEL <model> FROM PMML <xml string>

Argumente

  • model
    Ein eindeutiger Name für das Modell.

  • column definition list
    Eine durch Trennzeichen getrennte Liste mit Spaltendefinitionen.

  • algorithm
    Der Name eines Data Mining-Algorithmus, der vom aktuellen Anbieter definiert wurde.

    HinweisHinweis

    Eine Liste der Algorithmen, die vom aktuellen Anbieter unterstützt werden, kann mit DMSCHEMA_MINING_SERVICES-Rowset abgerufen werden. Informationen zum Anzeigen der in der aktuellen Instanz von Analysis Services unterstützten Algorithmen finden Sie unter Data Mining-Eigenschaften.

  • parameter list
    Optional. Eine durch Trennzeichen getrennte Liste mit anbieterdefinierten Parametern für den Algorithmus.

  • XML string
    (Nur für fortgeschrittene Benutzer.) Ein XML-codiertes Modell (PMML). Die Zeichenfolge muss in einfache Anführungszeichen (') eingeschlossen werden.

Mit der SESSION-Klausel können Sie ein Miningmodell erstellen, das automatisch vom Server entfernt wird, wenn die Verbindung beendet oder das Timeout einer Sitzung erreicht wird. SESSION-Miningmodelle sind nützlich, da der Benutzer kein Datenbankadministrator sein muss. Sie belegen außerdem nur Speicherplatz, solange die Verbindung besteht.

Die WITH DRILLTHROUGH-Klausel aktiviert Drillthrough für das neue Miningmodell. Drillthrough kann nur aktiviert werden, wenn das Modell erstellt wird. Für einige Modelltypen ist Drillthrough erforderlich, um das Modell im benutzerdefinierten Viewer durchsuchen zu können. Für Vorhersagen oder zum Durchsuchen des Modells im Microsoft Generic Content Tree Viewer ist Drillthrough nicht erforderlich.

Die CREATE MINING MODEL-Anweisung erstellt ein neues Miningmodell, das auf der Spaltendefinitionsliste, dem Algorithmus und der Algorithmusparameterliste basiert.

Spaltendefinitionsliste (Column Definition List)

Sie definieren die Struktur eines Modells, für das die Spaltendefinitionsliste verwendet wird, indem Sie für jede Spalte die folgenden Informationen einschließen:

  • Name (obligatorisch)

  • Datentyp (obligatorisch)

  • Verteilung

  • Liste der Modellierungsflags

  • Inhaltstyp (obligatorisch)

  • Vorhersageanforderung, die für den Algorithmus anzeigt, dass diese Spalte vorhergesagt werden soll. Die Angabe erfolgt durch die PREDICT- oder PREDICT_ONLY-Klausel

  • Beziehung zu einer Attributspalte (nur obligatorisch, wenn zutreffend), angegeben durch die RELATED TO-Klausel

Verwenden Sie die folgende Syntax für die Spaltendefinitionsliste, wenn Sie eine einzelne Spalte definieren möchten:

<column name>    <data type>    [<Distribution>]    [<Modeling Flags>]    <Content Type>    [<prediction>]    [<column relationship>] 

Verwenden Sie die folgende Syntax für die Spaltendefinitionsliste, wenn Sie eine Spalte einer geschachtelten Tabelle definieren möchten:

<column name>    TABLE    [<prediction>] ( <non-table column definition list> )

Zum Definieren einer Spalte können Sie jeweils nur eine Klausel aus einer bestimmten Gruppe verwenden. Die einzige Ausnahme bilden Modellierungsflags. Sie können mehrere Modellierungsflags für eine Spalte definieren.

Eine Liste der Datentypen, Inhaltstypen, Spaltendistributionen und Modellierungsflags, mit denen Sie eine Spalte definieren können, finden Sie in den folgenden Themen:

Sie können der Anweisung eine Klausel hinzufügen, um die Beziehung zwischen zwei Spalten zu beschreiben. In Analysis Services kann die folgende <column relationship>-Klausel (Spaltenbeziehungsklausel) verwendet werden.

  • RELATED TO
    Diese Form kennzeichnet eine Wertehierarchie. Das Ziel einer RELATED TO-Spalte kann eine Schlüsselspalte einer geschachtelten Tabelle, eine Spalte mit diskreten Werten in der Fallzeile oder eine andere Spalte mit einer RELATED TO-Klausel sein, wodurch eine tiefere Hierarchie gekennzeichnet ist.

Mit einer Vorhersageklausel können Sie beschreiben, wie die Vorhersagespalte verwendet wird. In der folgenden Tabelle sind die beiden möglichen Klauseln beschrieben.

<prediction>-Klausel (Vorhersageklausel)

Beschreibung

PREDICT

Diese Spalte kann vom Modell vorhergesagt werden, und sie kann in Eingabefällen bereitgestellt werden, um den Wert anderer vorhersagbarer Spalten vorherzusagen.

PREDICT_ONLY

Diese Spalte kann vom Modell vorhergesagt werden, aber ihre Werte können in Eingabefällen nicht dazu verwendet werden, den Wert anderer vorhersagbarer Spalten vorherzusagen.

Parameterdefinitionsliste (Parameter Definition List)

Mit der Parameterliste können Sie die Leistung und die Funktionsweise eines Miningmodells anpassen. Die Syntax der Parameterliste sieht wie folgt aus:

[<parameter> = <value>, <parameter> = <value>,…]

Eine Liste der Parameter, die jedem Algorithmus zugeordnet sind, finden Sie unter Data Mining-Algorithmen (Analysis Services - Data Mining).

Hinweise

Wenn Sie ein Modell mit integriertem Testdataset erstellen möchten, sollten Sie die Anweisung CREATE MINING STRUCTURE, gefolgt von ALTER MINING STRUCTURE verwenden. Zurückgehaltene Datasets werden jedoch nicht von allen Modelltypen unterstützt. Weitere Informationen finden Sie unter CREATE MINING STRUCTURE (DMX).

Eine exemplarische Vorgehensweise zum Erstellen eines Miningmodells mit der CREATEMODEL-Anweisung finden Sie unter DMX-Lernprogramm für Zeitreihenvorhersagen.

Beispiel für Naive Bayes-Algorithmus

Im folgenden Beispiel wird der Microsoft Naive Bayes-Algorithmus verwendet, um ein neues Miningmodell zu erstellen. Die Bike Buyer-Spalte ist als das vorhersagbare Attribut definiert.

CREATE MINING MODEL [NBSample]
(
    CustomerKey LONG KEY, 
    Gender TEXT DISCRETE,
    [Number Cars Owned] LONG DISCRETE,
    [Bike Buyer] LONG DISCRETE PREDICT
)
USING Microsoft_Naive_Bayes

Beispiel für Association-Algorithmus

Im folgenden Beispiel wird der Microsoft Association-Algorithmus verwendet, um ein neues Miningmodell zu erstellen. Für die Anweisung wird die Möglichkeit genutzt, eine Tabelle in einer Modelldefinition zu schachteln, indem eine Tabellenspalte verwendet wird. Das Modell wird mit dem MINIMUM_PROBABILITY-Parameter und dem MINIMUM_SUPPORT-Parameter geändert.

CREATE MINING MODEL MyAssociationModel (
    OrderNumber TEXT KEY,
    [Products] TABLE PREDICT (
        [Model] TEXT KEY
    )
)
USING Microsoft_Association_Rules (Minimum_Probability = 0.1, MINIMUM_SUPPORT = 0.01)

Beispiel für den Sequence Clustering-Algorithmus

Im folgenden Beispiel wird der Microsoft Sequence Clustering-Algorithmus verwendet, um ein neues Miningmodell zu erstellen. Das Modell wird mit zwei Schlüsseln definiert. Die Spalte OrderNumber wird als Fallschlüssel verwendet und gibt einzelne Reihenfolgen an. Die Spalte LineNumber wird als Schlüssel der geschachtelten Tabelle verwendet und gibt die Reihenfolge an, in der einer Bestellung Positionen hinzugefügt wurden.

CREATE MINING MODEL BuyingSequence (
    [Order Number] TEXT KEY,
    [Products] TABLE 
     (
        [Line Number] LONG KEY SEQUENCE,
        [Model] TEXT DISCRETE PREDICT
    )
)
USING Microsoft_Sequence_Clustering

Beispiel für den Time Series-Algorithmus

Im folgenden Beispiel wird der Microsoft Times Series-Algorithmus verwendet, um mit dem ARTxp-Algorithmus ein neues Miningmodell zu erstellen. ReportingDate bezeichnet die Schlüsselspalte für die Zeitreihe, ModelRegion bezeichnet die Schlüsselspalte für die Datenreihe. In diesem Beispiel wird davon ausgegangen, dass die Periodizität der Daten alle 12 Monate ist. Daher wird der PERIODICITY_HINT-Parameter auf 12 festgelegt.

HinweisHinweis

Sie müssen den PERIODICITY_HINT-Parameter mit geschweiften Klammern angeben. Da es sich bei dem Wert um eine Zeichenfolge handelt, muss er darüber hinaus in einfache Anführungszeichen gesetzt werden: "{<numerischer Wert>}".

CREATE MINING MODEL SalesForecast (
        ReportingDate DATE KEY TIME,
        ModelRegion TEXT KEY,
        Amount LONG CONTINUOUS PREDICT,
        Quantity LONG CONTINUOUS PREDICT
)
USING Microsoft_Time_Series (PERIODICITY_HINT = '{12}', FORECAST_METHOD = 'ARTXP')