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:
- Datentypen (Data Mining)
- Inhaltstypen (Data Mining)
- Spaltenverteilungen
- Modellierungsflags (Data Mining)
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.
Hinweis: |
---|
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