Share via


Technische Referenz für den Microsoft Association-Algorithmus

Der Microsoft Association Rules-Algorithmus ist eine einfache Implementierung des bekannten Apriori-Algorithmus.

Sowohl der Microsoft Decision Trees-Algorithmus als auch der Microsoft Association Rules-Algorithmus können zur Analyse von Zuordnungen dienen, die jeweils erfassten Regeln können jedoch abhängig vom Algorithmus differieren. In einem Entscheidungsstrukturmodell basieren die Aufteilungen, von denen bestimmte Regeln abgeleitet werden, auf Informationen, während die Regeln in einem Zuordnungsmodell vollständig auf Vertrauen beruhen. Daher ist in einem Zuordnungsmodell eine starke Regel bzw. eine Regel, deren Vertrauen hoch ist, nicht unbedingt interessant, da sie keine neuen Informationen bietet.

Implementierung des Microsoft Association-Algorithmus

Der Apriori-Algorithmus analysiert keine Muster, sondern generiert und zählt Kandidatenitemsets. Ein Element (Item) kann ein Ereignis, ein Produkt oder der Wert eines Attributs sein. Dies hängt vom Typ der analysierten Daten ab.

Beim häufigsten Typ von Zuordnungsmodell werden den einzelnen Attributen, wie z. B. Produkt oder Ereignisname, boolesche Variablen zugeordnet, die die Werte "Ja/Nein" oder "Fehlend/Vorhanden" darstellen. Eine Warenkorbanalyse ist ein Beispiel für ein Zuordnungsregelnmodell, das mit booleschen Variablen das Vorhandensein oder Fehlen eines bestimmten Produkts im Warenkorb eines Kunden darstellt.

Für jedes Itemset erstellt der Algorithmus dann Ergebnisse, die Unterstützung und Vertrauen darstellen. Diese Ergebnisse können dazu verwendet werden, interessante Regeln zu ordnen und von den Itemsets abzuleiten.

Zuordnungsmodelle können auch für numerische Attribute verwendet werden. Wenn die Attribute fortlaufend sind, können die Zahlen diskretisiert oder in Buckets gruppiert werden. Die diskretisierten Werte können dann entweder als boolesche Werte oder Attribut/Wert-Paare behandelt werden.

Unterstützung, Wahrscheinlichkeit und Wichtigkeit

Unterstützung, mitunter auch als Frequency bezeichnet, steht für die Anzahl der Fälle, in denen das entsprechende Element oder die entsprechende Elementkombination enthalten ist. Nur Elemente, die mindestens die angegebene Menge an Unterstützung haben, können im Modell enthalten sein.

Ein häufig enthaltenes Itemset bezieht sich auf eine Auflistung von Elementen, bei denen die Elementkombination Unterstützung über dem durch den Parameter MINIMUM_SUPPORT definierten Schwellenwert besitzt. Wenn das Itemset beispielsweise {A,B,C} lautet und der Wert MINIMUM_SUPPORT 10 beträgt, muss jedes einzelne Element A, B und C in mindestens 10 Fällen vorhanden sein, um in das Modell aufgenommen zu werden. Die Elementkombination {A,B,C} muss ebenfalls in mindestens 10 Fällen enthalten sein.

Hinweis: Sie können die Anzahl der Itemsets in einem Miningmodell auch steuern, indem Sie die maximale Länge eines Itemsets angeben, wobei Länge in diesem Fall für die Anzahl der Elemente steht.

Standardmäßig stellt die Unterstützung für ein bestimmtes Element oder Itemset die Anzahl der Fälle dar, die das Element bzw. die Elemente enthalten. Sie können den Wert MINIMUM_SUPPORT auch als prozentualen Anteil der Gesamtfälle im Dataset ausdrücken, indem Sie die Zahl als eine Dezimalzahl kleiner als 1 eingeben. Wenn Sie für MINIMUM_SUPPORT einen Wert von 0,03 angeben, bedeutet dies, dass mindestens 3 Prozent der Gesamtfälle im Dataset dieses Element oder Itemset enthalten müssen, damit es in das Modell aufgenommen wird. Experimentieren Sie mit dem Modell, um festzustellen, ob die Angabe der Anzahl oder des prozentualen Anteils sinnvoller ist.

Im Gegensatz dazu wird der Schwellenwert für Regeln nicht als Anzahl oder prozentualer Anteil ausgedrückt, sondern als Wahrscheinlichkeit, mitunter auch als Vertrauen bezeichnet. Wenn das Itemset {A,B,C} beispielsweise in 50 Fällen enthalten ist, das Itemset {A,B,D} ebenfalls in 50 Fällen und das Itemset {A,B} in weiteren 50 Fällen, ist offensichtlich, dass {A,B} kein starkes Vorhersagekriterium für {C} ist. Für die Gewichtung eines bestimmten Ergebnisses gegenüber allen bekannten Ergebnissen berechnet Analysis Services daher die Wahrscheinlichkeit der einzelnen Regel (z. B. If {A,B} Then {C}), indem die Unterstützung für das Itemset {A,B,C} durch die Unterstützung für alle verknüpften Itemsets dividiert wird.

Sie können die Anzahl von Regeln, die ein Modell erzeugt, einschränken, indem Sie einen Wert für MINIMUM_PROBABILITY festlegen.

Für jede erstellte Regel gibt Analysis Services ein Ergebnis aus, das ihre Wichtigkeit angibt. Diese wird mitunter auch als Lift bezeichnet. Liftwichtigkeit wird für Itemsets und Regeln anders berechnet.

Die Wichtigkeit eines Itemsets wird als Wahrscheinlichkeit des Itemsets dividiert durch die zusammengesetzte Wahrscheinlichkeit der einzelnen Elemente im Itemset berechnet. Wenn ein Itemset beispielsweise {A,B} enthält, zählt Analysis Services zunächst alle Fälle, die diese Kombination aus A und B enthalten, dividiert dann die Summe durch die Gesamtzahl der Fälle und normalisiert die Wahrscheinlichkeit.

Die Wichtigkeit einer Regel wird anhand des Wahrscheinlichkeitsprotokolls der rechten Seite der Regel in Bezug auf die linke Seite der Regel berechnet. In der Regel If {A} Then {B} berechnet Analysis Services beispielsweise das Verhältnis der Fälle mit A und B gegenüber Fällen mit B, aber ohne A und normalisiert dieses Verhältnis anschließend anhand einer logarithmischen Skalierung.

Funktionsauswahl

Der Microsoft Association Rules-Algorithmus führt keine automatische Funktionsauswahl aus. Stattdessen stellt der Algorithmus Parameter bereit, die die Daten kontrollieren, die vom Algorithmus verwendet werden. Diese Parameter können Beschränkungen der Größe der einzelnen Itemsets oder die maximale und Mindestunterstützung umfassen, die erforderlich ist, um ein Itemset in das Modell aufzunehmen.

  • Um Elemente und Ereignisse herauszufiltern, die zu allgemein und daher nicht interessant sind, senken Sie den Wert für MAXIMUM_SUPPORT, um sehr häufig auftretende Itemsets aus dem Modell zu entfernen.

  • Um Elemente und Itemsets herauszufiltern, die selten sind, erhöhen Sie den Wert für MINIMUM_SUPPORT.

  • Um Regeln herauszufiltern, erhöhen Sie den Wert für MINIMUM_PROBABILITY.

Anpassen des Microsoft Association Rules-Algorithmus

Der Microsoft Association Rules-Algorithmus unterstützt mehrere Parameter, die Auswirkungen auf das Verhalten, die Leistung und die Genauigkeit des resultierenden Miningmodells haben.

Festlegen von Algorithmusparametern

Sie können die Parameter für ein Miningmodell jederzeit mit dem Data Mining-Designer in SQL Server-Datentools (SSDT) ändern. Sie können die Parameter auch programmgesteuert mit der AlgorithmParameters-Auflistung in AMO oder mit dem MiningModels-Element (ASSL) in XMLA ändern. Die einzelnen Parameter werden in der folgenden Tabelle beschrieben.

HinweisHinweis

Sie können die Parameter in einem vorhandenen Modell nicht mit einer DMX-Anweisung ändern. Sie müssen die Parameter beim Erstellen des Modells in DMX CREATE MODEL oder ALTER STRUCTURE… ADD MODEL festlegen.

  • MAXIMUM_ITEMSET_COUNT
    Gibt die maximal zu produzierende Anzahl von Itemsets an. Wird keine Anzahl angegeben, wird der Standardwert verwendet.

    Der Standardwert ist 200000.

    HinweisHinweis

    Itemsets werden nach Unterstützung geordnet. Bei Itemsets, die die gleiche Unterstützung haben, ist die Anordnung willkürlich.

  • MAXIMUM_ITEMSET_SIZE
    Gibt die maximale Anzahl von Elementen an, die in einem Itemset zulässig sind. Wenn Sie diesen Wert auf 0 festlegen, geben Sie an, dass es für die Größe des Itemsets keine Begrenzung gibt.

    Der Standardwert ist 3.

    HinweisHinweis

    Durch Senken dieses Werts kann die zum Erstellen des Modells erforderliche Zeit möglicherweise reduziert werden, da die Verarbeitung des Modells angehalten wird, sobald die Begrenzung erreicht wird.

  • MAXIMUM_SUPPORT
    Gibt die maximale Anzahl von Fällen an, in denen ein Itemset unterstützt werden kann. Dieser Parameter kann verwendet werden, um Elemente auszuschließen, die häufig auftreten und daher potenziell wenig Bedeutung haben.

    Wenn dieser Wert kleiner als 1 ist, entspricht er einem prozentualen Anteil an der Gesamtzahl von Fällen. Werte, die größer als 1 sind, entsprechen der absoluten Anzahl von Fällen, die das Itemset enthalten können.

    Die Standardeinstellung ist 1.

  • MINIMUM_ITEMSET_SIZE
    Gibt die Mindestanzahl von Elementen an, die in einem Itemset zulässig sind. Wenn Sie diese Zahl erhöhen, enthält das Modell möglicherweise weniger Itemsets. Dies kann nützlich sein, wenn Sie beispielsweise aus einem einzelnen Element bestehende Itemsets ignorieren möchten.

    Die Standardeinstellung ist 1.

    HinweisHinweis

    Die Modellverarbeitungszeit kann nicht durch Erhöhen des Mindestwerts reduziert werden, da Analysis Services im Rahmen der Verarbeitung ohnehin Wahrscheinlichkeiten für einzelne Elemente berechnen muss. Durch Erhöhen des Werts können Sie jedoch kleinere Itemsets herausfiltern.

  • MINIMUM_PROBABILITY
    Gibt die Mindestwahrscheinlichkeit dafür an, dass eine Regel wahr ist.

    Wenn Sie diesen Wert beispielsweise auf 0,5 festlegen, kann keine Regel mit einer Wahrscheinlichkeit von weniger als 50 Prozent generiert werden.

    Die Standardeinstellung ist 0,4.

  • MINIMUM_SUPPORT
    Gibt an, in wie vielen Fällen das Itemset mindestens enthalten sein muss, damit der Algorithmus eine Regel generiert.

    Wenn dieser Wert auf unter 1 festgelegt wird, wird die Mindestanzahl von Fällen als prozentualer Anteil an der Gesamtzahl von Fällen berechnet.

    Wird dieser Wert auf eine Ganzzahl über 1 festgelegt, so wird die Mindestanzahl von Fällen als Anzahl von Fällen, die das Itemset enthalten müssen, berechnet. Der Algorithmus setzt den Wert dieses Parameters möglicherweise automatisch herauf, wenn der Speicherplatz knapp ist.

    Die Standardeinstellung ist 0,03. Dies bedeutet, dass ein Itemset in mindestens 3 Prozent der Fälle enthalten sein muss, um in das Modell aufgenommen zu werden.

  • OPTIMIZED_PREDICTION_COUNT
    Definiert die Anzahl von Elementen, die zum Optimieren einer Vorhersage zwischengespeichert werden.

    Der Standardwert ist 0. Wenn der Standard verwendet wird, werden so viele Vorhersagen vom Algorithmus erzeugt, wie in der Abfrage angefordert werden.

    Wenn Sie für OPTIMIZED_PREDICTION_COUNT, einen Wert ungleich null angeben, können Vorhersageabfragen höchstens die angegebene Anzahl an Elementen zurückgeben, selbst wenn Sie weitere Vorhersagen anfordern. Durch Festlegen eines Werts kann jedoch die Vorhersageleistung gesteigert werden.

    Wenn der Wert beispielsweise auf 3 festgelegt wird, werden vom Algorithmus nur drei Elemente für die Vorhersage zwischengespeichert. Es werden keine zusätzlichen Vorhersagen angezeigt, die möglicherweise gleich wahrscheinlich zu den drei zurückgegebenen Elementen sind.

Modellierungsflags

Die folgenden Modellierungsflags werden zur Verwendung mit dem Microsoft Association Rules-Algorithmus unterstützt.

  • NOT NULL
    Gibt an, dass die Spalte keinen NULL-Wert enthalten kann. Ein Fehler tritt auf, wenn Analysis Services während des Modelltrainings einen NULL-Wert erkennt.

    Gilt für die Miningstrukturspalte.

  • MODEL_EXISTENCE_ONLY
    Dies bedeutet, dass die Spalte zwei mögliche Statuswerte haben kann: Missing und Existing. Ein NULL-Wert ist ein fehlender Wert.

    Gilt für die Miningmodellspalte.

Anforderungen

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

Eingabespalten und vorhersagbare Spalten

Der Microsoft Association Rules-Algorithmus unterstützt bestimmte Eingabespalten und vorhersagbare Spalten. Diese sind in der nachstehenden Tabelle aufgelistet. Weitere Informationen zur Bedeutung der Inhaltstypen in einem Miningmodell finden Sie unter Inhaltstypen (Data Mining).

Spalte

Inhaltstypen

Eingabeattribut

Cyclical, Discrete, Discretized, Key, Table, Ordered

Vorhersagbares Attribut

Zyklisch, Diskret, Diskretisiert, Tabelle und Sortiert

HinweisHinweis

Zyklische und sortierte Inhaltstypen werden unterstützt, der Algorithmus behandelt sie jedoch als diskrete Werte und führt keine spezielle Verarbeitung durch.

Siehe auch

Verweis

Miningmodellinhalt von Zuordnungsmodellen (Analysis Services – Data Mining)

Konzepte

Microsoft Association-Algorithmus

Beispiele für Zuordnungsmodellabfragen