Erstellen einer neuronalen Netzwerkstruktur und eines neuronalen Netzwerkmodells (Data Mining-Lernprogramm für Fortgeschrittene)

Um ein Data Mining-Modell zu erstellen, müssen Sie zuerst mithilfe des Data Mining-Assistenten eine neue Miningstruktur auf Grundlage der neuen Datenquellensicht erstellen. In diesem Task erstellen Sie mit dem Assistenten eine Miningstruktur und zugleich ein zugehöriges Miningmodell auf Grundlage des Microsoft Neural Network-Algorithmus.

Da neuronale Netzwerke äußerst flexibel sind und viele Kombinationen von Eingaben und Ausgaben analysieren können, sollten Sie mit mehreren Methoden der Datenverarbeitung experimentieren, um optimale Ergebnisse zu erhalten. Möglicherweise möchten Sie die Methode anpassen, mit der die Daten klassifiziert oder gruppiert werden, um bestimmten Geschäftsanforderungen zu entsprechen. Hierzu fügen Sie der Miningstruktur eine neue Spalte hinzu, die numerische Daten auf eine andere Weise gruppiert, und erstellen dann ein Modell, das die neue Spalte verwendet. Mithilfe dieser Miningmodelle werden Daten durchsucht.

Wenn Sie vom neuronalen Netzwerkmodell dann gelernt haben, welche Faktoren sich am stärksten auf Ihre geschäftliche Fragestellung auswirken, erstellen Sie ein separates Modell für die Vorhersage und Bewertung. Sie verwenden den Logistic Regression-Algorithmus Microsoft, der auf dem neuronalen Netzwerkmodell basiert, aber für das Suchen nach einer Lösung auf Grundlage von bestimmten Eingaben optimiert ist.

Erstellen der Callcenter-Standardstruktur

So erstellen Sie die Standardminingstruktur und -modelle in neuronalen Netzwerken

  1. Klicken Sie im Projektmappen-Explorer von Business Intelligence Development Studio mit der rechten Maustaste auf Miningstrukturen, und wählen Sie Neue Miningstruktur aus.

  2. Klicken Sie auf der Seite Willkommen auf Weiter.

  3. Überprüfen Sie auf der Seite Definitionsmethode auswählen, ob die Option Aus vorhandener relationaler Datenbank oder vorhandenem Data Warehouse ausgewählt ist, und klicken Sie dann auf Weiter.

  4. Überprüfen Sie auf der Seite Data Mining-Struktur erstellen, ob die Option Miningstruktur mit Miningmodell erstellen ausgewählt ist.

  5. Klicken Sie neben der Dropdownliste auf die Option Welche Data Mining-Technik möchten Sie verwenden?, und wählen Sie dann die Option Microsoft Neural Networks aus.

    Da die logistischen Regressionsmodelle auf den neuronalen Netzwerken basieren, können Sie die gleiche Struktur wiederverwenden und ein neues Miningmodell hinzufügen.

  6. Klicken Sie auf Weiter.

    Die Seite Datenquellensicht auswählen wird angezeigt.

  7. Wählen Sie unter Verfügbare Datenquellensichten die Sicht Call Center aus, und klicken Sie auf Weiter.

  8. Aktivieren Sie auf der Seite Tabellentypen angeben neben der Tabelle FactCallCenter das Kontrollkästchen Fall. Klicken Sie auf Weiter.

  9. Wählen Sie auf der Seite Trainingsdaten angeben neben der Spalte FactCallCenterID die Option Schlüssel aus.

  10. Aktivieren Sie die Kontrollkästchen Vorhersagen und Eingabe.

  11. Wählen Sie die Kontrollkästchen Schlüssel, Eingabe und Vorhersagen aus, wie in der folgenden Tabelle dargestellt:

    Tabellen/Spalten

    Schlüssel/Eingabe/Vorhersagen

    AutomaticResponses

    Eingabe

    AverageTimePerIssue

    Eingabe/Vorhersagen

    Aufrufe

    Eingabe

    DateKey

    Nicht verwenden

    DayOfWeek (TagderWoche)

    Eingabespalte

    FactCallCenterID

    Schlüssel

    IssuesRaised

    Eingabe

    LevelOneOperators

    Eingabe/Vorhersagen

    LevelTwoOperators

    Eingabe

    Orders

    Eingabe/Vorhersagen

    ServiceGrade

    Eingabe/Vorhersagen

    Shift

    Eingabe

    TotalOperators

    Nicht verwenden

    WageType

    Eingabe

  12. Überprüfen Sie, ob das Raster auf der Seite Inhalt und Datentyp der Spalten angeben die in der folgenden Tabelle dargestellten Spalten, Inhaltstypen und Datentypen enthält, und klicken Sie auf Weiter.

    Spalten

    Inhaltstyp

    Datentypen

    AutomaticResponses

    Kontinuierlich

    Long

    AverageTimePerIssue

    Kontinuierlich

    Long

    Aufrufe

    Kontinuierlich

    Long

    DayOfWeek (TagderWoche)

    Diskret

    Text

    FactCallCenterID

    Schlüssel

    Long

    IssuesRaised

    Kontinuierlich

    Long

    LevelOneOperators

    Kontinuierlich

    Long

    LevelTwoOperators

    Kontinuierlich

    Long

    Orders

    Kontinuierlich

    Long

    ServiceGrade

    Kontinuierlich

    Double

    Shift

    Diskret

    Text

    WageType

    Diskret

    Text

  13. Deaktivieren Sie auf der Seite Testsatz erstellen das Kontrollkästchen für die Option Prozentsatz der zu testenden Daten. Klicken Sie auf Weiter.

  14. Geben Sie auf der Seite Assistenten abschließen unter Miningstrukturname den Namen Callcenter ein.

  15. Geben Sie für Miningmodellname den Namen Callcenterstandard NN ein, und klicken Sie dann auf Fertig stellen.

    Das Feld Drillthrough zulassen wird deaktiviert, da zu Daten mit neuronalen Netzwerkmodellen kein Drillthrough ausgeführt werden kann.

  16. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf den Namen der Data Mining-Struktur, die Sie gerade erstellt haben, und wählen Sie Verarbeiten aus.

Grundlegendes zum Diskretisieren

Wenn Sie ein neuronales Netzwerkmodell erstellen, das über ein numerisches vorhersagbares Attribut verfügt, behandelt der Microsoft Neural Network-Algorithmus das Attribut in der Standardeinstellung als kontinuierliche Zahl. Zum Beispiel ist das ServiceGrade-Attribut eine Zahl, die theoretisch zwischen 0,00 (alle Anrufe werden beantwortet) und 1,00 (alle Anrufer hängen auf) liegt. In diesem Dataset verfügen die Werte über die folgende Verteilung:

Verteilung der Werte für die Dienstqualität

Bei der Verarbeitung des Modells könnten die Ausgaben daher anders als erwartet gruppiert werden. Das Standardmodell, in dem Gruppen von Werten mithilfe von Clustering gesucht werden, unterteilt ServiceGrade in Bereiche z. B. wie folgt: 0,0748051948 bis 0,09716216215. Obwohl diese Gruppierung mathematisch korrekt ist, sind solche Bereiche für Geschäftsbenutzer möglicherweise weniger sinnvoll. Um die numerischen Werte anders zu gruppieren, können Sie eine oder mehrere Kopien der numerischen Datenspalte erstellen und festlegen, wie der Data Mining-Algorithmus die Werte verarbeiten soll. Sie können z. B. angeben, dass der Algorithmus die Werte in höchstens fünf Klassifizierungen teilt.

Analysis Services stellt eine Vielzahl von Methoden zur Klasseneinteilung oder zur Verarbeitung numerischer Daten bereit. In der folgenden Tabelle werden die Unterschiede zwischen den Ergebnissen veranschaulicht, wenn das ServiceGrade-Ausgabeattribut mit drei verschiedenen Methoden verarbeitet wurde:

  • Behandlung als kontinuierliche Zahl

  • Diskretisieren des Werts durch den Algorithmus mithilfe der optimalen Methode (in diesem Fall Clustering)

  • Angabe, dass die Zahlen durch die Equal Areas-Methode klassifiziert werden

Standardmodell (kontinuierlich)

Klassifiziert durch Clustering

Klassifiziert durch gleiche Bereiche

VALUESUPPORT
Missing0
0.09875120
VALUESUPPORT
< 0.074805194834
0.0748051948 - 0.0971621621527
0.09716216215 - 0.1329729729539
0.13297297295 - 0.16749999997510
>= 0.16749999997510
VALUESUPPORT
< 0.0726
0.07 - 0.0022
0.09 - 0.1136
>= 0.1236

In dieser Tabelle wird in der Spalte VALUE angezeigt, wie die kontinuierliche Zahl behandelt wurde. In der Spalte SUPPORT wird angezeigt, wie viele Zeilen mit diesem Wert, Bereich oder Werttyp gefunden wurden. Weitere Informationen zu Optionen für die Klasseneinteilung finden Sie unter Diskretisierungsmethoden (Data Mining).

HinweisHinweis

Diese Statistik kann nach der Verarbeitung aller Daten vom Knoten für Randstatistik des Modells abgerufen werden. Weitere Informationen zum Knoten für Randstatistik finden Sie unter Miningmodellinhalt von neuronalen Netzwerkmodellen (Analysis Services – Data Mining).

Statt die numerischen Werte zu verwenden, können Sie auch eine separate abgeleitete Spalte hinzufügen, die die Dienstqualitäten in vordefinierte Zielbereiche klassifiziert, z. B. Sehr gut (ServiceGrade <= 0,05), Befriedigend (0,10 > ServiceGrade > 0,05) und Mangelhaft (ServiceGrade >= 0,10).

Erstellen einer Spaltenkopie und Ändern der Diskretisierungsmethode

In Analysis Services Data Mining können Sie die Methode der Klassifizierung dieser numerischen Daten innerhalb einer Miningstruktur problemlos ändern, indem Sie eine Kopie der Spalte mit den Zieldaten hinzufügen und die Diskretisierungsmethode ändern.

In der folgenden Vorgehensweise wird beschrieben, wie eine Kopie der Miningspalte erstellt wird, die das ServiceGrade-Zielattribut enthält. Sie können mehrere Kopien einer Spalte in einer Miningstruktur erstellen, einschließlich des vorhersagbaren Attributs.

Sie passen dann die Gruppierung der numerischen Werte in der kopierten Spalte an, um die Komplexität der Gruppierungen zu reduzieren. Für dieses Lernprogramm verwenden Sie die Equal Areas-Methode der Diskretisierung und geben vier Buckets an. Die Gruppierungen, die sich aus dieser Methode ergeben, liegen relativ nah an den Zielwerten, die für Ihre Geschäftsbenutzer von Interesse sind.

HinweisHinweis

Während dem anfänglichen Durchsuchen von Daten können Sie auch mit verschiedenen Diskretisierungsmethoden experimentieren oder zuerst versuchen, die Daten zu gruppieren.

So erstellen Sie eine benutzerdefinierte Kopie einer Spalte in der Miningstruktur

  1. Doppelklicken Sie im Projektmappen-Explorer auf die die soeben erstellte Miningstruktur.

  2. Klicken Sie auf der Registerkarte Miningstruktur auf Miningstrukturspalte hinzufügen.

  3. Wählen Sie im Dialogfeld Spalte auswählen in der Liste Quellspalte die Option ServiceGrade aus, und klicken Sie dann auf OK.

    Der Liste der Miningstrukturspalten wird eine neue Spalte hinzugefügt. In der Standardeinstellung hat die neue Miningspalte den gleichen Namen wie die vorhandene Spalte mit einem numerischen Postfix: z. B. ServiceGrade 1. Sie können den Namen dieser Spalte in einen aussagekräftigeren Namen ändern.

    Geben Sie auch die Diskretisierungsmethode an.

  4. Klicken Sie mit der rechten Maustaste auf ServiceGrade 1, und wählen Sie Eigenschaften aus.

  5. Suchen Sie im Eigenschaftenfenster die Eigenschaft Name, und ändern Sie den Namen in Callcenterklassifizierung NN.

  6. Im angezeigten Dialogfeld können Sie auswählen, ob Sie die gleiche Änderung für die Namen aller zugehörigen Miningmodellspalten übernehmen möchten. Klicken Sie auf Nein.

  7. Suchen Sie im Fenster Eigenschaften den Abschnitt Datentyp, und erweitern Sie ihn bei Bedarf.

  8. Ändern Sie den Wert der Eigenschaft Content von Continuous auf Discretized.

    Die folgenden Eigenschaften sind nun verfügbar. Ändern Sie die Werte der Eigenschaften, wie in der folgenden Tabelle angezeigt:

    Eigenschaft

    Standardwert

    Neuer Wert

    DiscretizationMethod

    Continuous

    EqualAreas

    DiscretizationBucketCount

    Kein Wert

    4

    HinweisHinweis

    Der Standardwert von DiscretizationBucketCount ist eigentlich 0. Das bedeutet, dass der Algorithmus die optimale Anzahl der Buckets automatisch bestimmt. Geben Sie daher 0 ein, wenn Sie den Wert dieser Eigenschaft auf den Standardwert zurücksetzen möchten.

  9. Klicken Sie im Data Mining-Designer auf die Registerkarte Miningmodelle.

    Beachten Sie, dass beim Hinzufügen einer Kopie einer Miningstrukturspalte das Verwendungsflag der Kopie automatisch auf Ignore festgelegt wird. Wenn Sie einer Miningstruktur eine Spaltenkopie hinzufügen, werden Sie in der Regel nicht die Kopie zusammen mit der ursprünglichen Spalte für eine Analyse verwenden. Denn wenn der Algorithmus eine starke Korrelation zwischen den beiden Spalten feststellt, können andere Beziehungen leicht übersehen werden.

Hinzufügen eines neuen Miningmodells zur Miningstruktur

Sie haben nun eine neue Gruppierung für das Zielattribut erstellt und müssen ein neues Miningmodell hinzufügen, das die diskretisierte Spalte verwendet. Wenn dies abgeschlossen ist, verfügt die Callcenter-Miningstruktur über zwei Miningmodelle:

  • Das Miningmodell Callcenterstandard NN behandelt die ServiceGrade-Werte als kontinuierlichen Bereich.

  • Das Miningmodell Callcenterklassifizierung NN diskretisiert die ServiceGrade-Werte in vier unterschiedliche Buckets.

So fügen Sie ein Miningmodell auf Grundlage der neuen diskretisierten Spalte hinzu

  1. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf die Miningstruktur, die Sie gerade erstellt haben, und wählen Sie Öffnen aus.

  2. Klicken Sie auf die Registerkarte Miningmodelle.

  3. Klicken Sie auf Ein verknüpftes Miningmodell erstellen.

  4. Geben Sie im Dialogfeld Neues Miningmodell im Feld Modellname den Namen Callcenterklassifizierung NN ein. Wählen Sie in der Dropdownliste Algorithmusname die Option Microsoft Neural Network aus.

  5. Suchen Sie in der Liste der Spalten des neuen Miningmodells den Eintrag ServiceGrade, und legen Sie die Verwendung von Predict auf Ignore fest.

  6. Suchen Sie analog dazu den Eintrag ServiceGrade-Klassifizierung, und legen Sie die Verwendung von Ignore auf Predict fest.

In der Regel können Sie keine Miningmodelle vergleichen, die unterschiedliche vorhersagbare Attribute verwenden. Sie können jedoch in SQL Server 2008 einen Alias für eine Miningmodellspalte erstellen. Das bedeutet, Sie können für die Spalte ServiceGrade-Klassifizierung im Miningmodell den Namen der ursprünglichen Spalte festlegen. Anschließend können Sie diese beiden Modelle trotz der unterschiedlichen Diskretisierung der Daten in einem Genauigkeitsdiagramm direkt vergleichen.

So fügen Sie einen Alias für eine Miningstrukturspalte in einem Miningmodell hinzu

  1. Wählen Sie auf der Registerkarte Miningmodelle unter Struktur den Eintrag ServiceGrade-Klassifizierung aus.

    Beachten Sie, dass im Fenster Eigenschaften die Eigenschaften des ScalarMiningStructureColumn-Objekts angezeigt werden.

  2. Klicken Sie unter der Spalte ServiceGrade-Klassifizierung NN für das Miningmodell auf die Zelle, die der Spalte ServiceGrade-Klassifizierung entspricht.

    Beachten Sie, dass im Fenster Eigenschaften jetzt die Eigenschaften des MiningModelColumn-Objekts angezeigt werden.

  3. Suchen Sie die Eigenschaft Name, und ändern Sie den Wert zu ServiceGrade.

  4. Suchen Sie die Eigenschaft Beschreibung, und geben Sie Temporärer Spaltenalias ein.

    Im Fenster Eigenschaften sollten folgende Informationen angezeigt werden:

    Eigenschaft

    Wert

    Beschreibung

    Temporärer Spaltenalias

    ID

    ServiceGrade-Klassifizierung

    Modellierungsflags

      

    Name

    Service Grade

    SourceColumn-ID

    Service Grade 1

    Verwendung

    Vorhersagen

  5. Klicken Sie auf eine beliebige Stelle der Registerkarte Miningmodell.

    Das Raster wird aktualisiert, und es wird der neue temporäre Spaltenalias ServiceGrade neben der Spaltenverwendung angezeigt. Das Raster mit der Miningstruktur und zwei Miningmodellen sollte wie folgt aussehen:

    Struktur

    Call Center Default NN

    Callcenterklassifizierung NN

      

    Microsoft Neural Network

    Microsoft Neural Network

    AutomaticResponses

    Eingabespalte

    Eingabespalte

    AverageTimePerIssue

    Vorhersagen

    Vorhersagen

    Aufrufe

    Eingabespalte

    Eingabespalte

    DayOfWeek (TagderWoche)

    Eingabespalte

    Eingabespalte

    FactCallCenterID

    Schlüssel

    Schlüssel

    IssuesRaised

    Eingabespalte

    Eingabespalte

    LevelOneOperators

    Eingabespalte

    Eingabespalte

    LevelTwoOperators

    Eingabespalte

    Eingabe

    Orders

    Eingabespalte

    Eingabespalte

    ServiceGrade-Klassifizierung

    Ignore

    Vorhersagen (ServiceGrade)

    ServiceGrade

    Vorhersagen

    Ignore

    Shift

    Eingabespalte

    Eingabespalte

    Gesamtzahl Telefonisten

    Eingabespalte

    Eingabespalte

    WageType

    Eingabespalte

    Eingabespalte

Verarbeiten des Modells

Um abschließend sicherzustellen, dass die erstellten Modelle vergleichbar sind, legen Sie den Parameter für den Zurückhaltungsausgangswert für den Standard und die klassifizierten Modelle fest. Durch das Festlegen eines Ausgangswerts wird sichergestellt, dass in allen Modellen die Verarbeitung der Daten von der gleichen Position aus gestartet wird.

HinweisHinweis

Wenn Sie keinen bestimmten numerischen Wert für den Ausgangswert angeben, wird dieser in SQL Server Analysis Services anhand des Modellnamens generiert. Da das neuronale Netzwerkmodell und das logistische Regressionsmodell unterschiedliche Namen haben, muss durch Festlegen eines Ausgangswerts sichergestellt werden, dass die Datenverarbeitung in derselben Reihenfolge beginnt.

So geben Sie den Ausgangswert an und verarbeiten die Modelle

  1. Klicken Sie auf der Registerkarte Miningmodell mit der rechten Maustaste auf die Spalte für das Modell "Callcenter - LR", und wählen Sie Algorithmusparameter festlegen aus.

  2. Klicken Sie in der Zeile für den HOLDOUT_SEED-Parameter unter Wert auf die leere Zelle, und geben Sie 1 ein. Klicken Sie auf OK. Wiederholen Sie diesen Schritt für jedes der Struktur zugeordnete Modell.

    HinweisHinweis

    Welchen Wert Sie als Ausgangswert auswählen, ist gleichgültig, solange für alle verwandten Modelle der gleiche Ausgangswert verwendet wird.

  3. Klicken Sie im Menü Miningmodelle auf Miningstruktur und alle Modelle verarbeiten. Klicken Sie auf Ja, um das aktualisierte Data Mining-Projekt auf dem Server bereitzustellen.

  4. Klicken Sie im Dialogfeld Miningmodell verarbeiten auf Ausführen.

  5. Klicken Sie auf Schließen, um das Dialogfeld Verarbeitungsstatus zu schließen, und klicken Sie im Dialogfeld Miningmodell verarbeiten erneut auf Schließen.

Nachdem Sie nun die zwei zugehörigen Miningmodelle erstellt haben, durchsuchen Sie die Daten auf ihre Beziehungen.