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

Modell (model)

Ein eindeutiger Name für das Modell.

column definition list

Eine durch Kommas getrennte Liste mit Spaltendefinitionen.

algorithm

Der vom Anbieter definierte Name eines Data Mining-Anbieters.

parameter list

Optional. Eine durch Kommas 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.

Hinweise

Die SESSION-Klausel ermöglicht es Ihnen, ein Miningmodell zu erstellen, das automatisch vom Server entfernt wird, wenn die Verbindung getrennt oder die Sitzung wegen eines Timeouts beendet wurde. SESSION-Miningmodelle sind hilfreich, weil sie nicht erfordern, dass der Benutzer Datenbankadministrator ist, und weil sie den Speicherplatz nur solange verwenden, wie die Verbindung besteht.

Die WITH DRILLTHROUGH-Klausel aktiviert Drillthrough für das neue Miningmodell. Drillthrough kann nur aktiviert werden, wenn das Modell erstellt wird.

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. Einzige Ausnahme hiervon sind 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.

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 geändert, indem die Parameter Minimum_Probability und Minimum_Support verwendet werden.

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. Order Number gibt die einzelnen Bestellungen an. Line Number 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 ein neues Miningmodell zu erstellen. Da ein Times Series-Modell (Zeitreihenmodell) mehrere Schlüssel enthalten kann, sind TimeIndex und ModelRegion als Schlüsselspalten gekennzeichnet. Für dieses Beispiel wird angenommen, dass die Daten eine Periodizität von 12 Monaten haben. Daher ist der PERIODICITY_HINT-Parameter auf 12 festgelegt.

ms131986.note(de-de,SQL.90).gifHinweis:
Sie müssen den PERIODICITY_HINT-Parameter mithilfe von geschweiften Klammern ("{}") angeben.
CREATE MINING MODEL SalesForcast (
        TimeIndex LONG KEY TIME,
        ModelRegion TEXT KEY,
        Amount LONG CONTINUOUS PREDICT,
        Quantity LONG CONTINUOUS PREDICT
)
Using Microsoft_Time_Series (PERIODICITY_HINT = '{12}')

Siehe auch

Verweis

Data Mining-Erweiterungen (DMX) - Datendefinitionsanweisungen
Data Mining-Erweiterungen (DMX) - Datenbearbeitungsanweisungen
Data Mining-Erweiterungen (DMX) - Anweisungsreferenz

Hilfe und Informationen

Informationsquellen für SQL Server 2005