Mehrschichtiges Perzeptron

Die Prozedur "Mehrschichtiges Perzeptron" (Multilayer Perceptron, MLP) erstellt ein Vorhersagemodell für mindestens eine abhängige Variable (Zielvariable), das auf den Werten der Prädiktorvariablen beruht.

Beispiele. Im Folgenden finden Sie zwei Szenarios, die die Prozedur MLP verwenden:

Eine Kreditsachbearbeiterin in einer Bank muss in der Lage sein, Merkmale zu ermitteln, die auf Personen hindeuten, die mit hoher Wahrscheinlichkeit ihre Kredite nicht zurückzahlen, und diese Merkmale zur Feststellung eines guten bzw. schlechten Kreditrisikos einzusetzen. Mithilfe einer Stichprobe von früheren Kunden kann sie ein mehrschichtiges Perzeptron trainieren, die Analysen anhand einer Holdout-Stichprobe früherer Kunden validieren und anschließend mit dem Netz das Kreditrisiko potenzieller Kunden als gering oder hoch einstufen.

Ein Krankenhaussystem möchte die Kosten und die Aufenthaltsdauer für Patienten aufzeichnen, die zur Behandlung eines Herzinfarkts aufgenommen wurden. Durch genaue Schätzungen dieser Messwerte kann die Krankenhausverwaltung die verfügbare Bettenkapazität während der Behandlung der Patienten besser verwalten. Mithilfe der Behandlungsakten einer Stichprobe von Patienten, die wegen eines Herzinfarkts behandelt wurden, kann die Verwaltung ein Netz trainieren, mit dem sich die Kosten und die Dauer des Aufenthalts vorhersagen lassen.

Erläuterung der Daten

Abhängige Variablen. Die abhängigen Variablen können wie folgt gestaltet sein:

Messniveau und Datentyp sind durch ein Symbol neben der jeweiligen Variablen in der Variablenliste gekennzeichnet:

Tabelle 1. Messniveausymbole
  Numerisch Zeichenfolge Datum Zeit
Metrisch (stetig)
Symbol für "metrisch"
entfällt
Symbol für metrisches Datum
Symbol für metrische Zeit
Ordinal
Symbol für "ordinal"
Symbol für ordinale Zeichenfolge
Symbol für ordinales Datum
Symbol für ordinale Zeit
Nominal
Symbol für "nominal"
Symbol für nominale Zeichenfolge
Symbol für nominales Datum
Symbol für nominale Zeit

Prädiktorvariablen. Prädiktoren können als Faktoren (kategorial) oder als Kovariaten (metrisch) angegeben werden.

Codierung für kategoriale Variablen. Die Prozedur codiert vorübergehend für die Dauer ihrer Ausführung kategoriale Prädiktoren und abhängige Variablen mithilfe der "Eins-aus-c"-Codierung neu. Wenn es c Kategorien für eine Variable gibt, wird die Variable als c Vektoren gespeichert. Dabei wird die erste Kategorie als (1,0,...,0) angegeben, die zweite Kategorie als (0,1,0,...,0),... und die letzte Kategorie als (0,0,...,0,1).

Dieses Codierungsschema erhöht die Anzahl der synaptischen Gewichtungen und kann zu einer Verlangsamung des Trainings führen, "kompaktere" Codierungsmethoden führen jedoch in der Regel zu neuronalen Netzen mit geringer Anpassungsgüte. Wenn das Training des Netzes sehr langsam vorangeht, können Sie versuchen, die Anzahl der Kategorien der kategorialen Prädiktoren zu verringern, indem Sie ähnliche Kategorien zusammenfassen oder Fälle ausschließen, die extrem seltene Kategorien aufweisen. Weitere Informationen zum Neucodieren von Variablen finden Sie in Umcodieren in dieselben Variablen oder Umcodieren in andere Variablen.

Jede "Eins-aus-c"-Codierung beruht auf den Trainingsdaten, selbst wenn eine Test- oder Holdout-Stichprobe definiert wurde (siehe Partitionen (mehrschichtiges Perzeptron)). Wenn also die Test- oder Holdout-Stichproben Fälle mit Prädiktorkategorien enthalten, die in den Trainingsdaten nicht vorhanden sind, werden diese Fälle nicht in der Prozedur oder beim Scoring verwendet. Wenn die Test- oder Holdout-Stichproben Fälle mit Kategorien abhängiger Variablen enthalten, die in den Trainingsdaten nicht vorhanden sind, werden diese Fälle zwar nicht in der Prozedur, jedoch möglicherweise beim Scoring verwendet.

Neuskalierung. Metrische abhängige Variablen und Kovariaten werden standardmäßig neu skaliert, um das Training des Netzes zu verbessern. Jede Neuskalierung beruht auf den Trainingsdaten, selbst wenn eine Test- oder Holdout-Stichprobe definiert wurde (siehe Partitionen (mehrschichtiges Perzeptron)). Das bedeutet, dass je nach Neuskalierungstyp Mittelwert, Standardabweichung, Mindestwert oder Maximalwert einer Kovariaten oder abhängigen Variablen ausschließlich anhand der Trainingsdaten berechnet wird. Wenn Sie eine Variable zur Festlegung von Partitionen angeben, müssen diese Kovariaten oder abhängigen Variablen in der Trainings-, Test- und Holdout-Stichprobe ähnliche Verteilungen aufweisen. Verwenden Sie beispielsweise die Prozedur Explorative Datenanalyse, um die Verteilungen in den verschiedenen Partitionen zu untersuchen.

Häufigkeitsgewichtungen. Häufigkeitsgewichtungen werden von dieser Prozedur ignoriert.

Reproduzieren der Ergebnisse. Wenn Sie Ihre Ergebnisse exakt reproduzieren möchten, müssen Sie nicht nur dieselben Einstellungen für die Prozedur, sondern auch denselben Initialisierungswert für den Zufallszahlengenerator, dieselbe Datenreihenfolge und dieselbe Variablenreihenfolge verwenden. Weitere Details zu diesem Problem folgen:

Erstellen eines Netzes mit mehrschichtigen Perzeptronen

Für diese Funktion ist SPSS Statistics Premium Edition oder die Option "Neural Network" erforderlich.

Wählen Sie in den Menüs Folgendes aus:

Analysieren > Neuronale Netze > Mehrschichtiges Perzeptron...

  1. Wählen Sie mindestens eine abhängige Variable aus.
  2. Wählen Sie mindestens einen Faktor oder eine Kovariate aus.

Optional können Sie auf der Registerkarte "Variablen" die Methode zur Neuskalierung der Kovariaten ändern. Folgende Optionen stehen zur Auswahl:

Felder mit unbekanntem Messniveau

Der Messniveau-Alert wird angezeigt, wenn das Messniveau für mindestens eine Variable (ein Feld) im Dataset unbekannt ist. Da sich das Messniveau auf die Berechnung der Ergebnisse für diese Prozedur auswirkt, müssen alle Variablen ein definiertes Messniveau aufweisen.

Daten durchsuchen. Liest die Daten im aktiven Dataset und weist allen Feldern, deren Messniveau zurzeit nicht bekannt ist, das Standardmessniveau zu. Bei großen Datasets kann dieser Vorgang einige Zeit in Anspruch nehmen.

Manuell zuweisen. Öffnet ein Dialogfeld, in dem alle Felder mit unbekanntem Messniveau aufgeführt werden. Mit diesem Dialogfeld können Sie diesen Feldern ein Messniveau zuweisen. Außerdem können Sie in der Variablenansicht des Dateneditors ein Messniveau zuweisen.

Da das Messniveau für diese Prozedur bedeutsam ist, können Sie erst dann auf das Dialogfeld zur Ausführung dieser Prozedur zugreifen, wenn für alle Felder ein Messniveau definiert wurde.

Mit dieser Prozedur wird Syntax des Befehls MLP eingefügt.