Jeśli chodzi o tytuł, chodzi o wykorzystanie wzajemnej informacji, tu i po MI, do oszacowania „korelacji” (zdefiniowanej jako „ile wiem o A, gdy znam B”) między zmienną ciągłą a zmienną kategorialną. Za chwilę opowiem o moich przemyśleniach na ten temat, ale zanim doradzę, przeczytajcie inne pytanie / odpowiedź na CrossValidated, ponieważ zawiera ona przydatne informacje.
Ponieważ nie możemy zintegrować zmiennej zmiennej kategorialnej, musimy dyskretyzować zmienną ciągłą. Można to zrobić dość łatwo w języku R, który jest językiem, w którym przeprowadziłem większość moich analiz. Wolałem korzystać z tej cut
funkcji, ponieważ alias również zawiera wartości, ale dostępne są również inne opcje. Chodzi o to, że zanim będzie można dokonać jakiejkolwiek dyskretyzacji, należy z góry ustalić liczbę „przedziałów” (stanów dyskretnych).
Główny problem jest jednak inny: MI waha się od 0 do ∞, ponieważ jest to niestandardowa miara, która jednostka jest bitem. To bardzo utrudnia wykorzystanie go jako współczynnika korelacji. Można to częściowo rozwiązać za pomocą globalnego współczynnika korelacji , tu i po GCC, który jest znormalizowaną wersją MI; GCC jest zdefiniowane następująco:
Odniesienie: wzór pochodzi z Mutual Information jako nieliniowego narzędzia do analizy globalizacji rynku akcji, autorstwa Andrei Dionísio, Rui Menezes i Diana Mendes, 2010.
GCC waha się od 0 do 1, a zatem może być łatwo wykorzystane do oszacowania korelacji między dwiema zmiennymi. Problem rozwiązany, prawda? Cóż, w pewnym sensie. Ponieważ cały ten proces zależy w dużej mierze od liczby „pojemników”, które zdecydowaliśmy się zastosować podczas dyskretyzacji. Oto wyniki moich eksperymentów:
Na osi Y masz GCC, a na osi X masz liczbę „pojemników”, które postanowiłem zastosować w celu dyskretyzacji. Dwie linie odnoszą się do dwóch różnych analiz, które przeprowadziłem na dwóch różnych (choć bardzo podobnych) zestawach danych.
Wydaje mi się, że stosowanie MI w ogóle, aw szczególności GCC, jest nadal kontrowersyjne. Jednak to zamieszanie może być wynikiem pomyłki z mojej strony. Tak czy inaczej, chciałbym usłyszeć twoją opinię w tej sprawie (czy masz alternatywne metody oszacowania korelacji między zmienną kategoryczną a zmienną ciągłą?).
źródło
Odpowiedzi:
Istnieje prostszy i lepszy sposób radzenia sobie z tym problemem. Zmienna kategoryczna jest w rzeczywistości tylko zbiorem zmiennych wskaźnikowych. Podstawową ideą teorii pomiaru jest to, że taka zmienna jest niezmienna w przypadku ponownego etykietowania kategorii, więc nie ma sensu stosowanie numerycznego oznaczania kategorii w żadnej miary związku między inną zmienną (np. „Korelacja”) . Z tego powodu pomiar zależności między zmienną ciągłą a zmienną kategorialną powinien opierać się całkowicie na zmiennych wskaźnikowych pochodzących z tej ostatniej.
Biorąc pod uwagę, że potrzebna jest miara „korelacji” między dwiema zmiennymi, warto spojrzeć na korelację między ciągłą zmienną losową a losową zmienną wskaźnikową wyprowadzoną ze zmiennej kategorialnej. Pozwalając mamy:X I ϕ≡P(I=1)
co daje:
Tak więc korelacja między ciągłą zmienną losową a losową zmienną wskaźnikową jest dość prostą funkcją prawdopodobieństwa wskaźnika i znormalizowanego przyrostu oczekiwanej wartości z warunkowania na . Zauważ, że ta korelacja nie wymaga dyskretyzacji ciągłej zmiennej losowej.X I ϕ X I=1
W przypadku ogólnej zmiennej kategorialnej z zakresem wystarczy rozszerzyć ten pomysł, aby uzyskać wektor wartości korelacji dla każdego wyniku zmiennej kategorialnej. Dla każdego wyniku możemy zdefiniować odpowiedni wskaźnik i mamy:C 1,...,m C=k Ik≡I(C=k)
Następnie możemy zdefiniować jako wektor wartości korelacji dla każda kategoria jakościowej zmiennej losowej. To naprawdę jedyny sens, w którym sensowne jest mówienie o „korelacji” dla jakościowej zmiennej losowej.Corr(C,X)≡(Corr(I1,X),...,Corr(Im,X))
( Uwaga: trywialne jest wykazanie, że a więc wektor korelacji dla zmiennej losowej podlega temu ograniczeniu. Oznacza to, że biorąc pod uwagę znajomość wektora prawdopodobieństwa dla losowa zmienna kategorialna i odchylenie standardowe można uzyskać wektor z dowolnego jego elementów.)∑kCov(Ik,X)=0 X m−1
Powyższe przedstawienie dotyczy prawdziwych wartości korelacji, ale oczywiście należy je oszacować w ramach danej analizy. Oszacowanie korelacji wskaźników na podstawie danych z próbki jest proste i można tego dokonać poprzez zastąpienie odpowiednich oszacowań dla każdej części. (Jeśli wolisz, możesz zastosować bardziej metody szacowania.) Biorąc pod uwagę przykładowe dane możemy oszacować części równania korelacji jako:(x1,c1),...,(xn,cn)
Podstawienie tych oszacowań dałoby podstawowe oszacowanie wektora korelacji. Jeśli masz informacje parametryczne na temat możesz oszacować wektor korelacji bezpośrednio na podstawie maksymalnego prawdopodobieństwa lub innej techniki.X
źródło