Multivariater adaptiver Regressionsspline - Multivariate adaptive regression spline

In der Statistik sind multivariate adaptive Regressionssplines ( MARS ) eine Form der Regressionsanalyse, die 1991 von Jerome H. Friedman eingeführt wurde. Es handelt sich um eine nicht parametrische Regressionstechnik und kann als Erweiterung linearer Modelle angesehen werden , die automatisch Nichtlinearitäten und Wechselwirkungen zwischen Variablen.

Der Begriff "MARS" ist markenrechtlich geschützt und an Salford Systems lizenziert. Um Markenverletzungen zu vermeiden, werden viele Open-Source-Implementierungen von MARS "Earth" genannt.

Die Grundlagen

In diesem Abschnitt wird MARS anhand einiger Beispiele vorgestellt. Wir beginnen mit einem Datensatz: einer Matrix von Eingabevariablen x und einem Vektor der beobachteten Antworten y mit einer Antwort für jede Zeile in x . Die Daten können beispielsweise sein:

x ja
10,5 16.4
10.7 18.8
10.8 19,7
... ...
20,6 77,0

Hier gibt es nur eine unabhängige Variable , also ist die x- Matrix nur eine einzelne Spalte. Mit diesen Messungen möchten wir ein Modell erstellen, das das erwartete y für ein gegebenes x vorhersagt .

Ein lineares Modell

Ein lineares Modell für die obigen Daten ist

Der Hut auf dem zeigt an, dass aus den Daten geschätzt wird. Die Abbildung rechts zeigt eine grafische Darstellung dieser Funktion: eine Linie, die den vorhergesagten gegenüber x angibt , wobei die ursprünglichen Werte von y als rote Punkte angezeigt werden.

Die Daten an den Extremwerten von x weisen darauf hin, dass die Beziehung zwischen y und x möglicherweise nichtlinear ist (siehe die roten Punkte relativ zur Regressionslinie bei niedrigen und hohen Werten von x ). Wir wenden uns daher MARS zu, um automatisch ein Modell unter Berücksichtigung von Nichtlinearitäten zu erstellen. MARS-Software konstruiert ein Modell aus den gegebenen x und y wie folgt

Ein einfaches MARS-Modell der gleichen Daten

Die Abbildung rechts zeigt ein Diagramm dieser Funktion: die vorhergesagte gegen x , wobei die ursprünglichen Werte von y wieder als rote Punkte angezeigt werden. Die vorhergesagte Antwort passt jetzt besser zu den ursprünglichen y- Werten.

MARS hat automatisch einen Knick im vorhergesagten y erzeugt , um Nichtlinearität zu berücksichtigen. Der Knick wird durch Scharnierfunktionen erzeugt . Die Scharnierfunktionen sind die Ausdrücke, die mit beginnen (where is if , else ). Scharnierfunktionen werden im Folgenden ausführlicher beschrieben.

In diesem einfachen Beispiel können wir aus dem Diagramm leicht erkennen, dass y eine nichtlineare Beziehung zu x hat (und vielleicht vermuten, dass y mit dem Quadrat von x variiert ). Im Allgemeinen wird es jedoch mehrere unabhängige Variablen geben , und die Beziehung zwischen y und diesen Variablen ist unklar und durch Auftragen nicht leicht sichtbar. Wir können MARS verwenden, um diese nichtlineare Beziehung zu entdecken.

Ein Beispiel für einen MARS-Ausdruck mit mehreren Variablen ist

Variableninteraktion in einem MARS-Modell

Dieser Ausdruck modelliert die Luftverschmutzung (das Ozonniveau) als Funktion der Temperatur und einiger anderer Variablen. Beachten Sie, dass der letzte Term in der Formel (in der letzten Zeile) eine Interaktion zwischen und enthält .

Die Abbildung auf der rechten Seite zeigt die vorhergesagten Werte als und variieren, wobei die anderen Variablen auf ihren Medianwerten fixiert sind. Die Abbildung zeigt, dass Wind den Ozonwert nicht beeinflusst, es sei denn, die Sicht ist gering. Wir sehen, dass MARS durch die Kombination von Scharnierfunktionen recht flexible Regressionsflächen aufbauen kann.

Um den obigen Ausdruck zu erhalten, wählt das MARS-Modellerstellungsverfahren automatisch aus, welche Variablen verwendet werden sollen (einige Variablen sind wichtig, andere nicht), die Positionen der Knicke in den Scharnierfunktionen und wie die Scharnierfunktionen kombiniert werden.

Das MARS-Modell

MARS baut Modelle der Form

Das Modell ist eine gewichtete Summe von Basisfunktionen . Jeder ist ein konstanter Koeffizient. Zum Beispiel ist jede Zeile in der obigen Formel für Ozon eine Basisfunktion multipliziert mit ihrem Koeffizienten.

Jede Basisfunktion nimmt eine der folgenden drei Formen an:

1) eine Konstante 1. Es gibt nur einen solchen Term, den Achsenabschnitt. In der obigen Ozonformel beträgt der Achsenabschnitt 5.2.

2) eine Scharnierfunktion . Eine Scharnierfunktion hat die Form oder . MARS wählt automatisch Variablen und Werte dieser Variablen für Knoten der Scharnierfunktionen aus. Beispiele für solche Basisfunktionen sind in den mittleren drei Zeilen der Ozonformel zu sehen.

3) ein Produkt von zwei oder mehr Scharnierfunktionen. Diese Basisfunktionen können die Interaktion zwischen zwei oder mehr Variablen modellieren. Ein Beispiel ist die letzte Zeile der Ozonformel.

Scharnierfunktionen

Ein gespiegeltes Scharnierfunktionenpaar mit einem Knoten bei x=3.1

Ein wesentlicher Bestandteil der MARS-Modelle sind Scharnierfunktionen in der Form

oder

wobei eine Konstante ist, die als Knoten bezeichnet wird . Die Abbildung rechts zeigt ein gespiegeltes Paar Scharnierfunktionen mit einem Knoten bei 3.1.

Eine Scharnierfunktion ist für einen Teil ihres Bereichs null und kann daher verwendet werden, um die Daten in getrennte Bereiche zu unterteilen, von denen jeder unabhängig behandelt werden kann. So zum Beispiel ein gespiegeltes Paar von Scharnierfunktionen im Ausdruck

erstellt den stückweisen linearen Graphen, der für das einfache MARS-Modell im vorherigen Abschnitt gezeigt wurde.

Man könnte annehmen, dass aus Scharnierfunktionen nur stückweise lineare Funktionen gebildet werden können, aber Scharnierfunktionen können miteinander multipliziert werden, um nichtlineare Funktionen zu bilden.

Scharnierfunktionen werden auch als Rampen- , Hockeyschläger- oder Gleichrichterfunktionen bezeichnet. Anstelle der in diesem Artikel verwendeten Notation werden Scharnierfunktionen oft dadurch dargestellt, dass die Mittel den positiven Teil einnehmen.

Der Modellbauprozess

MARS baut ein Modell in zwei Phasen auf: dem Vorwärts- und dem Rückwärtspass. Dieser zweistufige Ansatz ist derselbe, der von rekursiven Partitionierungsbäumen verwendet wird .

Der Vorwärtspass

MARS beginnt mit einem Modell, das nur aus dem Achsenabschnitt besteht (der Mittelwert der Antwortwerte).

MARS fügt dem Modell dann immer wieder paarweise Basisfunktionen hinzu. Bei jedem Schritt findet es das Paar von Basisfunktionen, das die maximale Reduzierung des Quadratsummen- Restfehlers ergibt (es ist ein Greedy-Algorithmus ). Die beiden Basisfunktionen in dem Paar sind identisch, außer dass für jede Funktion eine andere Seite einer gespiegelten Scharnierfunktion verwendet wird. Jede neue Basisfunktion besteht aus einem bereits im Modell vorhandenen Term (der vielleicht der Achsenabschnitt sein könnte) multipliziert mit einer neuen Scharnierfunktion. Eine Scharnierfunktion wird durch eine Variable und einen Knoten definiert. Um eine neue Basisfunktion hinzuzufügen, muss MARS alle Kombinationen der folgenden durchsuchen:

1) vorhandene Begriffe ( in diesem Zusammenhang Elternbegriffe genannt )

2) alle Variablen (um eine für die neue Basisfunktion auszuwählen)

3) alle Werte jeder Variablen (für den Knoten der neuen Scharnierfunktion).

Um den Koeffizienten jedes Terms zu berechnen, wendet MARS eine lineare Regression über die Terme an.

Dieser Vorgang des Hinzufügens von Termen wird fortgesetzt, bis die Änderung des Restfehlers zu klein ist, um fortzufahren, oder bis die maximale Anzahl von Termen erreicht ist. Die maximale Anzahl von Begriffen wird vom Benutzer vor Beginn der Modellerstellung festgelegt.

Die Suche bei jedem Schritt erfolgt auf Brute-Force- Art, aber ein wichtiger Aspekt von MARS besteht darin, dass die Suche aufgrund der Art der Scharnierfunktionen relativ schnell unter Verwendung einer schnellen Aktualisierungstechnik der kleinsten Quadrate durchgeführt werden kann. Eigentlich ist die Suche nicht ganz roh. Die Suche kann mit einer Heuristik beschleunigt werden , die die Anzahl der bei jedem Schritt zu berücksichtigenden übergeordneten Begriffe reduziert ("Fast MARS").

Der Rückwärtspass

Der Vorwärtspass erstellt normalerweise ein Overfit- Modell. (Ein Overfit-Modell passt sich gut an die zum Erstellen des Modells verwendeten Daten an, lässt sich jedoch nicht gut auf neue Daten verallgemeinern.) Um ein Modell mit besserer Generalisierungsfähigkeit zu erstellen, beschneidet der Rückwärtsdurchlauf das Modell. Es entfernt Terme nacheinander und löscht bei jedem Schritt den am wenigsten effektiven Term, bis das beste Untermodell gefunden wird. Modellteilmengen werden unter Verwendung des unten beschriebenen GCV-Kriteriums verglichen.

Der Rückwärtsdurchlauf hat gegenüber dem Vorwärtsdurchlauf einen Vorteil: Er kann in jedem Schritt einen beliebigen Begriff zum Löschen auswählen, während der Vorwärtsdurchlauf bei jedem Schritt nur das nächste Begriffspaar sehen kann.

Der Vorwärtsdurchlauf fügt Terme paarweise hinzu, aber der Rückwärtsdurchlauf verwirft normalerweise eine Seite des Paares und daher werden Terme im endgültigen Modell oft nicht paarweise angezeigt. Ein gepaartes Scharnier kann in der Gleichung für im ersten MARS-Beispiel oben gesehen werden; im Ozonbeispiel bleiben keine vollständigen Paare zurück.

Generalisierte Kreuzvalidierung

Der Rückwärtsdurchlauf verwendet eine generalisierte Kreuzvalidierung (GCV), um die Leistung von Modellteilmengen zu vergleichen, um die beste Teilmenge auszuwählen: niedrigere Werte von GCV sind besser. Die GCV ist eine Form der Regularisierung : Sie tauscht die Anpassungsgüte gegen die Modellkomplexität aus.

(Wir möchten schätzen, wie gut ein Modell bei neuen Daten abschneidet, nicht bei Trainingsdaten. Solche neuen Daten sind normalerweise zum Zeitpunkt der Modellerstellung nicht verfügbar, daher verwenden wir stattdessen GCV, um die Leistung bei neuen Daten abzuschätzen Die rohe Residualsumme der Quadrate (RSS) der Trainingsdaten ist für den Vergleich von Modellen ungeeignet, da die RSS immer ansteigt, wenn MARS-Terme fallengelassen werden das größte Modell – aber das größte Modell hat normalerweise nicht die beste Generalisierungsleistung.)

Die Formel für den GCV lautet

GCV = RSS / ( N · (1 − (effektive Parameteranzahl) / N ) 2 )

Dabei ist RSS die auf den Trainingsdaten gemessene Restquadratsumme und N die Anzahl der Beobachtungen (die Anzahl der Zeilen in der x- Matrix).

Die EffectiveNumberOfParameters ist im MARS-Kontext definiert als

(effektive Anzahl Parameter) = (Anzahl Mars-Terme) + (Strafe) · ((Anzahl Mars-Terme) − 1 ) / 2

wobei die Strafe etwa 2 oder 3 beträgt (die MARS-Software ermöglicht es dem Benutzer, die Strafe voreinzustellen).

Beachten Sie, dass

(Anzahl der Marsterme − 1 ) / 2

ist die Anzahl der Gelenkfunktionsknoten, daher bestraft die Formel das Hinzufügen von Knoten. Somit passt (dh erhöht) die GCV-Formel die Trainings-RSS an, um die Flexibilität des Modells zu berücksichtigen. Wir bestrafen Flexibilität, weil zu flexible Modelle die spezifische Realisierung von Rauschen in den Daten modellieren und nicht nur die systematische Struktur der Daten.

Die verallgemeinerte Kreuzvalidierung wird so genannt, weil sie eine Formel verwendet, um den Fehler zu approximieren, der durch die Leave-One-Out-Validierung bestimmt würde. Es ist nur eine Annäherung, funktioniert aber in der Praxis gut. GCVs wurden von Craven und Wahba eingeführt und von Friedman für MARS erweitert.

Einschränkungen

Eine Einschränkung wurde bereits erwähnt: Der Benutzer kann die maximale Anzahl von Begriffen im Vorwärtsdurchlauf festlegen.

Eine weitere Einschränkung kann dem Vorwärtsdurchlauf auferlegt werden, indem ein maximal zulässiger Interaktionsgrad angegeben wird. Normalerweise sind nur ein oder zwei Interaktionsgrade zulässig, aber höhere Grade können verwendet werden, wenn die Daten dies rechtfertigen. Der maximale Interaktionsgrad im obigen ersten MARS-Beispiel ist eins (dh keine Interaktionen oder ein additives Modell ); im Ozonbeispiel sind es zwei.

Andere Einschränkungen des Vorwärtsdurchlaufs sind möglich. Der Benutzer kann beispielsweise festlegen, dass Interaktionen nur für bestimmte Eingabevariablen zulässig sind. Solche Einschränkungen könnten aufgrund der Kenntnis des Prozesses, der die Daten generiert hat, sinnvoll sein.

Vor-und Nachteile

Keine Regressionsmodellierungstechnik ist für alle Situationen am besten. Die folgenden Richtlinien sollen eine Vorstellung von den Vor- und Nachteilen von MARS vermitteln, es wird jedoch Ausnahmen von den Richtlinien geben. Es ist nützlich, MARS mit rekursiver Partitionierung zu vergleichen, und dies wird unten getan. (Rekursive Partitionierung wird im Allgemeinen auch als Regressionsbäume , Entscheidungsbäume oder CART bezeichnet ; Einzelheiten finden Sie im Artikel über rekursive Partitionierung ).

  • MARS-Modelle sind flexibler als lineare Regressionsmodelle .
  • MARS-Modelle sind einfach zu verstehen und zu interpretieren. Vergleichen Sie die obige Gleichung für die Ozonkonzentration beispielsweise mit den Innereien eines trainierten neuronalen Netzes oder eines Random Forest .
  • MARS kann sowohl kontinuierliche als auch kategoriale Daten verarbeiten. MARS ist für numerische Daten tendenziell besser als die rekursive Partitionierung, da Scharniere für numerische Variablen besser geeignet sind als die stückweise konstante Segmentierung, die bei der rekursiven Partitionierung verwendet wird.
  • Die Erstellung von MARS-Modellen erfordert oft nur wenig oder keine Datenvorbereitung. Die Scharnierfunktionen partitionieren die Eingabedaten automatisch, sodass der Effekt von Ausreißern eingedämmt wird. In dieser Hinsicht ähnelt MARS der rekursiven Partitionierung, die die Daten ebenfalls in disjunkte Bereiche aufteilt, allerdings mit einer anderen Methode. (Dennoch sollten, wie bei den meisten statistischen Modellierungsverfahren, bekannte Ausreißer zum Entfernen in Betracht gezogen werden, bevor ein MARS-Modell trainiert wird.)
  • MARS (wie die rekursive Partitionierung) führt eine automatische Variablenauswahl durch (d.h. es schließt wichtige Variablen in das Modell ein und schließt unwichtige aus). Die Auswahl kann jedoch willkürlich sein, insbesondere wenn es korrelierte Prädiktoren gibt, und dies kann die Interpretierbarkeit beeinträchtigen
  • MARS-Modelle weisen in der Regel einen guten Bias-Varianz-Trade-off auf. Die Modelle sind flexibel genug, um Nichtlinearität und variable Wechselwirkungen zu modellieren (daher haben MARS-Modelle eine relativ geringe Verzerrung), jedoch verhindert die eingeschränkte Form der MARS-Basisfunktionen zu viel Flexibilität (somit haben MARS-Modelle eine relativ geringe Varianz).
  • MARS eignet sich für den Umgang mit relativ großen Datensätzen. Es ist eine Routineangelegenheit, ein MARS-Modell aus einer Eingabematrix mit beispielsweise 100 Prädiktoren und 10 5 Beobachtungen zu erstellen . Ein solches Modell kann auf einer 1-GHz-Maschine in etwa einer Minute aufgebaut werden, vorausgesetzt, der maximale Interaktionsgrad der MARS-Terme ist auf eins beschränkt (dh nur additive Terme). Ein Modell der Stufe 2 mit denselben Daten auf derselben 1-GHz-Maschine dauert länger – etwa 12 Minuten. Beachten Sie, dass diese Zeiten stark datenabhängig sind. Die rekursive Partitionierung ist viel schneller als MARS.
  • Bei MARS-Modellen können, wie bei jeder nicht parametrischen Regression, Parameter-Konfidenzintervalle und andere Überprüfungen des Modells nicht direkt berechnet werden (im Gegensatz zu linearen Regressionsmodellen ). Stattdessen müssen Kreuzvalidierung und verwandte Techniken zur Validierung des Modells verwendet werden.
  • MARS-Modelle passen nicht so gut wie Boosted Trees, können aber viel schneller gebaut und interpretiert werden. (Ein „interpretierbares“ Modell liegt in einer Form vor, die die Wirkung jedes Prädiktors deutlich macht.)
  • Die Implementierungen von earth, mda, und polsplineerlauben keine fehlenden Werte in Prädiktoren, aber freie Implementierungen von Regressionsbäumen (wie rpartund party) erlauben fehlende Werte unter Verwendung einer Technik namens Surrogat-Splits.
  • MARS-Modelle können schnell Vorhersagen treffen. Die Vorhersagefunktion muss lediglich die MARS-Modellformel auswerten. Vergleichen Sie das mit einer Vorhersage mit beispielsweise einer Support Vector Machine , bei der jede Variable mit dem entsprechenden Element jedes Support-Vektors multipliziert werden muss. Dies kann ein langsamer Prozess sein, wenn es viele Variablen und viele Unterstützungsvektoren gibt.
  • Die resultierende angepasste Funktion ist nicht glatt (entlang der Scharniere nicht differenzierbar).

Erweiterungen und verwandte Konzepte

  • Verallgemeinerte lineare Modelle (GLMs) können in MARS-Modelle integriert werden, indem eine Verknüpfungsfunktion angewendet wird, nachdem das MARS-Modell erstellt wurde. So können beispielsweise MARS-Modelle logistische Regression zur Vorhersage von Wahrscheinlichkeiten einbeziehen .
  • Die nichtlineare Regression wird verwendet, wenn die zugrunde liegende Form der Funktion bekannt ist und die Regression nur verwendet wird, um die Parameter dieser Funktion zu schätzen. MARS hingegen schätzt die Funktionen selbst, wenn auch mit starken Einschränkungen hinsichtlich der Art der Funktionen. (Diese Einschränkungen sind notwendig, da die Ermittlung eines Modells aus den Daten ein inverses Problem ist, das ohne Einschränkungen des Modells nicht gut gestellt ist .)
  • Rekursive Partitionierung (allgemein als CART bezeichnet). MARS kann als eine Verallgemeinerung der rekursiven Partitionierung angesehen werden, die es dem Modell ermöglicht, numerische (dh nicht kategoriale) Daten besser zu handhaben.
  • Verallgemeinerte additive Modelle . Aus Benutzersicht ähneln GAMs MARS, passen aber (a) glatte Löss- oder polynomiale Splines anstelle von MARS-Basisfunktionen an und (b) modellieren nicht automatisch Variableninteraktionen. Die intern von GAMs verwendete Anpassungsmethode unterscheidet sich stark von der von MARS. Bei Modellen, die keine automatische Erkennung variabler Interaktionen erfordern, konkurrieren GAMs oft günstig mit MARS.
  • TSMARS . Time Series Mars ist der Begriff, der verwendet wird, wenn MARS-Modelle in einem Zeitreihenkontext angewendet werden. Typischerweise sind die Prädiktoren in dieser Konfiguration die verzögerten Zeitreihenwerte, die zu autoregressiven Spline-Modellen führen. Diese Modelle und Erweiterungen, um Spline-Modelle mit gleitendem Durchschnitt einzubeziehen, werden in "Univariate Time Series Modeling and Forecasting using TSMARS: A study of threshold time series autoregressive, Season and Moving Average Models using TSMARS" beschrieben.
  • Bayesian MARS (BMARS) verwendet dieselbe Modellform, erstellt das Modell jedoch mit einem Bayesian-Ansatz. Es kann zu unterschiedlichen optimalen MARS-Modellen kommen, da der Modellbildungsansatz anders ist. Das Ergebnis von BMARS ist typischerweise ein Ensemble von posterioren Proben von MARS-Modellen, das eine probabilistische Vorhersage ermöglicht.

Siehe auch

Verweise

Weiterlesen

Externe Links

Für die Anpassung von MARS-Modellen stehen mehrere kostenlose und kommerzielle Softwarepakete zur Verfügung.

Gratis Software
Kommerzielle Software
  1. ^ Denison, DGT; Holmes, CC; Mallick, BK; Smith, AFM (2002). Bayes'sche Methoden zur nichtlinearen Klassifikation und Regression . Chichester, England: Wiley. ISBN 978-0-471-49036-4.