Für welche Art von Merkmalsauswahl kann der Chi-Quadrat-Test verwendet werden?

11
  1. Hier frage ich, was andere üblicherweise tun, um den Chi-Quadrat-Test für die Merkmalsauswahl für das Ergebnis beim überwachten Lernen zu verwenden. Wenn ich das richtig verstehe, testen sie die Unabhängigkeit zwischen jedem Merkmal und dem Ergebnis und vergleichen die p-Werte zwischen den Tests für jedes Merkmal?

  2. In http://en.wikipedia.org/wiki/Pearson%27s_chi-squared_test ,

    Der Pearson-Chi-Quadrat-Test ist ein statistischer Test, der auf Sätze kategorialer Daten angewendet wird, um zu bewerten, wie wahrscheinlich es ist, dass ein beobachteter Unterschied zwischen den Sätzen zufällig aufgetreten ist.

    ...

    Bei einem Unabhängigkeitstest wird bewertet, ob gepaarte Beobachtungen zu zwei Variablen, die in einer Kontingenztabelle ausgedrückt werden, unabhängig voneinander sind (z. B. Umfrageantworten von Personen unterschiedlicher Nationalität, um festzustellen, ob die Nationalität mit der Antwort zusammenhängt).

    Müssen die beiden Variablen, deren Unabhängigkeit durch den Test geprüft wird, kategorisch oder diskret sein (außer kategorisch geordnet), aber nicht zusammenhängend?

  3. Von http://scikit-learn.org/stable/modules/feature_selection.html , sie

    χ2

    Im Iris-Datensatz sind alle Merkmale numerisch und fortlaufend bewertet, und das Ergebnis sind Klassenbezeichnungen (kategorial). Wie wird der Chi-Quadrat-Unabhängigkeitstest auf kontinuierliche Merkmale angewendet?

    Um den Chi-Quadrat-Unabhängigkeitstest auf den Datensatz anzuwenden, konvertieren wir zuerst die fortlaufenden Features in diskrete Features, indem wir sie gruppieren (dh zuerst die kontinuierlichen Domänen der Features in Bins diskretisieren und dann die Features durch das Auftreten der Werte der Features in den Bins ersetzen )?

    Vorkommen in mehreren Behältern bilden ein multinomiales Merkmal (entweder in jedem Behälter oder nicht), sodass der Chi-Quadrat-Unabhängigkeitstest auf sie angewendet werden kann, oder?

    Übrigens, können wir den Chi-Quadrat-Unabhängigkeitstest auf Merkmale und Ergebnisse jeglicher Art anwenden , richtig?

    Für den Ergebnisteil können wir Merkmale nicht nur für die Klassifizierung, sondern auch für die Regression auswählen, indem wir den Chi-Quadrat-Unabhängigkeitstest durchführen und das kontinuierliche Ergebnis zusammenfassen, oder?

  4. Die Scikit-Lernseite sagt auch

    Berechnen Sie Chi-Quadrat-Statistiken zwischen jedem nicht negativen Merkmal und jeder Klasse.

    Diese Bewertung kann verwendet werden, um die n_features-Merkmale mit den höchsten Werten für die Test-Chi-Quadrat-Statistik aus X auszuwählen, die nur nicht negative Merkmale wie Boolesche Werte oder Häufigkeiten (z. B. Termzahlen in der Dokumentklassifizierung) relativ zum enthalten dürfen Klassen.

    Warum erfordert der Test nicht negative Funktionen?

    Wenn die Merkmale keine Zeichen haben, aber kategorisch oder diskret sind, kann der Test trotzdem auf sie angewendet werden? (Siehe meinen Teil 1)

    Wenn die Features negativ sind, können wir ihre Domains immer ablegen und durch ihre Vorkommen ersetzen (genau wie ich denke, um den Test auf den Iris-Datensatz anzuwenden, siehe Teil 2), oder?

Hinweis: Ich denke, Scikit Learn folgt allgemeinen Prinzipien, und darum bitte ich hier. Wenn nicht, dann ist es immer noch in Ordnung.

Tim
quelle

Antworten:

2

Ich denke, ein Teil Ihrer Verwirrung besteht darin, welche Arten von Variablen ein Chi-Quadrat vergleichen kann. Wikipedia sagt dazu Folgendes:

Es wird eine Nullhypothese getestet, die besagt, dass die Häufigkeitsverteilung bestimmter in einer Stichprobe beobachteter Ereignisse mit einer bestimmten theoretischen Verteilung übereinstimmt.

Somit werden Häufigkeitsverteilungen verglichen , die auch als Zählungen und auch als nicht negative Zahlen bezeichnet werden. Die verschiedenen Häufigkeitsverteilungen werden durch die kategoriale Variable definiert; dh für jeden der Werte einer kategorialen Variablen muss es eine Häufigkeitsverteilung geben, die mit den anderen verglichen werden kann.

Es gibt verschiedene Möglichkeiten, die Häufigkeitsverteilung zu ermitteln. Es könnte von einer zweiten kategorialen Variablen stammen, bei der die gleichzeitigen Vorkommen mit der ersten kategorialen Variablen gezählt werden, um eine diskrete Häufigkeitsverteilung zu erhalten. Eine andere Möglichkeit besteht darin, eine (mehrfache) numerische Variable für verschiedene Werte einer kategorialen Variablen zu verwenden. Sie kann (z. B.) die Werte der numerischen Variablen summieren. Wenn kategoriale Variablen binärisiert werden, ist die erstere eine spezifische Version der späteren.

Beispiel

Schauen Sie sich als Beispiel diese Variablensätze an:

x = ['mouse', 'cat', 'mouse', 'cat']
z = ['wild', 'domesticated', 'domesticated', 'domesticated']

Die kategorialen Variablen xund ykönnen durch Zählen der Co-Vorkommen verglichen werden, und dies passiert mit einem Chi-Quadrat-Test:

                 'mouse'    'cat'
'wild'              1         0
'domesticated'      1         2

Sie können jedoch auch die Werte von 'x' binärisieren und die folgenden Variablen abrufen:

x1 = [1, 0, 1, 0]
x2 = [0, 1, 0, 1]
z = ['wild', 'domesticated', 'domesticated', 'domesticated']

Das Zählen der Werte entspricht nun dem Summieren der Werte, die dem Wert von entsprechen z.

                 x1    x2
'wild'           1     0
'domesticated'   1     2

Wie Sie sehen können, werden eine einzelne kategoriale Variable ( x) oder mehrere numerische Variablen ( x1und x2) in der Kontingenztabelle gleichermaßen dargestellt. Somit können Chi-Quadrat-Tests auf eine kategoriale Variable (die Bezeichnung in sklearn) angewendet werden, die mit einer anderen kategorialen Variablen oder mehreren numerischen Variablen (den Merkmalen in sklearn) kombiniert wird.

Pieter
quelle
Wenn die Feature-Auswahl von chi_square nur für nicht negative Features (freq, count, ect) verwendet werden kann, was bedeutet das für eine Situation, in der es ein Feature mit negativen Werten gibt? Feature transformieren oder eine andere Feature-Auswahlmethode verwenden? Angenommen, wir haben neue Untersuchungen zum Iris-Datensatz durchgeführt und hatten eine Funktion, mit der die Änderung der Kelchblattlänge jeden Tag gemessen wird. Irgendwann und es würde negative Werte geben. Die Pflanze würde verdorren und schrumpfen, was zu einer negativen Längenänderung führen würde. Vielleicht versuchen wir zu klassifizieren, um welche Pflanze es sich handelt, wie schnell sie verdorrt oder so.
Arash Howaida
1
Das Chi-Quadrat basiert auf dem Anteil der Werte (dh der Häufigkeitsverteilung). Dies wird durch Summieren der (binärisierten) Merkmalswerte implementiert. Der Teil der gesamten Summe sollte also eine Bedeutung haben. Bei negativen Werten ist dies nicht der Fall.
Pieter