Welche Methoden gibt es, um die Stärke beliebiger, stark nichtlinearer Beziehungen zwischen zwei gepaarten Variablen zu messen? Mit hochgradig nichtlinear meine ich Beziehungen, die durch Regression auf ein bekanntes Modell nicht sinnvoll oder zuverlässig modelliert werden können. Ich interessiere mich besonders für Zeitreihen, aber ich stelle mir vor, dass alles, was für Bi-Variate-Daten funktioniert, hier funktionieren würde (wenn wir die beiden Zeitreihen als einen Satz von Paardatenpunkten behandeln).
Zwei, die mir bekannt sind, sind der mittlere quadratische Unterschied (dh der mittlere quadratische Fehler , bei dem eine Zeitreihe als "erwarteter" Wert und eine als beobachteter Wert behandelt wird) sowie die Entfernungskovarianz . Welche anderen gibt es?
Klarstellung: Ich frage grundsätzlich nach der Abhängigkeit zwischen Reihen, bei der lineare Korrelation oder einfache nichtlineare Korrelation (nach log, exp, trig, anderen einfachen analytischen Transformationen) nicht wirklich viel bedeuten.
quelle
Antworten:
Die einfache alte lineare Regression hat eine schöne nichtparametrische Interpretation als durchschnittlicher linearer Trend über alle Beobachtungspaare; siehe Berman 1988, "Ein Satz von Jacobi und seine Verallgemeinerung". Die Daten müssen also nicht linear aussehen, um sie zu verwenden. Jeder (allgemein) monotone Trend könnte auf diese Weise zusammengefasst werden.
Sie könnten auch die Spearman-Rangkorrelation verwenden ... und wahrscheinlich noch viel mehr.
quelle
Der "Betrag der Beziehung" zwischen zwei diskreten Variablen , wird formal durch gegenseitige Information gemessen : . Während die Kovarianz / Korrelation irgendwie das Ausmaß der linearen Beziehung ist, ist die gegenseitige Information irgendwie das Ausmaß der (jeder Art von) Beziehung. Ich füge das Bild von der Wikipedia-Seite ein:Y I ( X , Y )X. Y. ich( X., Y.)
Für kontinuierliche Variablen werden die informationstheoretischen Konzepte häufig ebenfalls definiert, sind jedoch weniger überschaubar und möglicherweise weniger aussagekräftig. Ich möchte mich im Moment nicht darum kümmern. Bleiben wir bei diskreten Variablen. Auf jeden Fall ist es sinnvoll, kontinuierliche Variablen durch diskrete Variablen (unter Verwendung von Schichten) zu approximieren, insbesondere bei informationstheoretischen Ansätzen.
Das Problem bei informationstheoretischen Konzepten ist häufig ihre Unpraktikabilität. In der Lage zu sein, die gegenseitige Information zwischen und zu approximieren, ist dasselbe wie in der Lage zu sein, eine beliebige nichtlineare Beziehung zwischen ihnen zu finden: Sie benötigen eine statistische Aussagekraft (Datenmenge), die meistens weit über das Vernünftige hinausgeht: für jeden möglichen Wert für , Sie benötigen viele (sagen wir 1000) Abtastwerte, um eine Schätzung jedes zu berechnen . Dies ist bei den meisten Problemen des maschinellen Lernens oder der statistischen Analyse nicht möglich. Es ist logisch: Wenn Sie einem Modell erlauben, "jede Möglichkeit" auszudrücken, kann es nur durch eine Datenmenge trainiert werden, die eine Möglichkeit mehrmals abdeckt.Y x P ( Y = y | X = x )X. Y. x P.( Y.= y| X.= x )
Aber vielleicht ist ein solcher Ansatz für niedrigdimensionale Variablen möglich, wenn Sie eine geringe Genauigkeit erzwingen: Zerlegen Sie die Domänen von und in eine Anzahl von Slices, die klein genug sind, damit sie für Ihre Daten in Ordnung sind. Jedenfalls denke ich, dass dies einige Nachforschungen erfordert.Y.X. Y.
quelle
Schließlich ist die allgemeinste Form einer Injektionsfunktion
und Sie können eine diskretisierte Version dieser Funktion als Modell für Ihre Daten verwenden.
Dann reduziert sich das Problem auf die Bestimmung des erwarteten für separate Bereiche .a < x < by a < x < b
Die Methode ist aufgrund der hohen Freiheitsgrade im Modell nicht leistungsfähig. Dies ist jedoch auch mit dem Problem verbunden, das ein hohes Maß an Freiheit (und Allgemeinheit) bei der Art der Funktionen erfordert, die das Modell für die Daten beschreiben können.
Für spezifischere Fälle können Verbesserungen vorgenommen werden.
quelle
Die Spearman-Korrelation, die in einer anderen Antwort erwähnt wurde, passt zur Rechnung. Es wird berechnet, indem einfach die Daten in Ränge konvertiert werden und dann die Pearson-Korrelation für die Ränge ermittelt wird. Es kann jede monotone Assoziation erkennen.
quelle
Es ist nicht ganz klar, was Sie messen möchten, aber ich werde versuchen, Ihnen Informationen zu geben, die helfen könnten. Es gibt Korrelationsmaße wie Cronbacks Alpha, mit denen die interne Konsistenz / Beziehung zwischen einer Reihe von Variablen bewertet werden kann. Sie können auch allgemeine additive Modelle (GAMs) verwenden, um zu testen, ob die Funktionsschätzung konstant ist. Dies würde keine Beziehung zwischen Ihren Variablen implizieren. In der Antwort hier finden Sie eine Diskussion dazu: Wie teste ich eine nichtlineare Assoziation?
quelle
Sie können den maximalen Informationskoeffizienten ausprobieren . Es übertrifft ausgewählte Methoden in diesem Artikel und eignet sich gut zum Erkennen nichtlinearer Beziehungen zwischen zwei Zufallsvariablen.
quelle
Ich kann nicht kommentieren, daher muss ich die Antwort posten. Schauen Sie sich Dynamic Time Warping an, einen einfachen Algorithmus, mit dem Muster zwischen zwei Zeitreihen erkannt / verglichen werden können, die sogar eine unterschiedliche Granularität aufweisen können. https://en.wikipedia.org/wiki/Dynamic_time_warping
quelle