Jak mogę ułatwić odczyt dużych macierzy zamieszania?


9

Niedawno opublikowałem zestaw danych ( link ) z 369 klasami. Przeprowadziłem na nich kilka eksperymentów, aby dowiedzieć się, jak trudne jest zadanie klasyfikacji. Zwykle podoba mi się to, jeśli istnieją macierze nieporozumień, aby zobaczyć rodzaj popełnionego błędu. Jednak369×369 matryca nie jest praktyczna.

Czy istnieje sposób na przekazanie ważnych informacji o dużych macierzach zamieszania? Na przykład, zwykle jest wiele zer, które nie są tak interesujące. Czy jest możliwe takie sortowanie klas, aby większość niezerowych wpisów znajdowało się wokół przekątnej, aby umożliwić wyświetlanie wielu macierzy, które są częścią kompletnej macierzy pomieszania?

Oto przykład dużej macierzy zamieszania .

Przykłady na wolności

Rysunek 6 EMNIST wygląda ładnie:

wprowadź opis zdjęcia tutaj

Łatwo jest zobaczyć, gdzie jest wiele przypadków. Jednak są tylko26zajęcia Gdyby użyto całej strony zamiast tylko jednej kolumny, prawdopodobnie byłaby to 3 razy tyle, ale i tak byłoby tylko326=78zajęcia Nawet blisko 369 klas HASY lub 1000 ImageNet.

Zobacz też

Moje podobne pytanie na temat CS.stackexchange


Żal mi ciebie ;-) Możesz wypróbować macierze pomieszania jeden do wszystkich dla każdej z klas. Biorąc pod uwagę ich wygląd lub klasy, w których zachowanie nie jest typowe, i stosuj na nich pełną macierz dezorientacji.
DaL

1
Dlaczego po prostu nie zgłosić dokładności modelu dla każdej kategorii. Kto naprawdę musi zobaczyć całą matrycę?
Darrin Thomas

1
@DarrinThomas Nie chodzi tylko o zgłaszanie tego w gazecie. Chodzi także o samodzielną analizę błędów.
Martin Thoma

1
Po pierwsze, możesz znormalizować wartości w wierszach, a następnie wykreślić je jako mapę cieplną. Ponadto można sortować klasę według dokładności klasowej (znormalizowana wartość na przekątnej). Podejrzewam, że znacznie zwiększyłoby to czytelność.
Nikolas Rieble

1
Prawdopodobnie powinienem ponownie zapytać o to w math.SE / stackoverflow. Jestem prawie pewien, że istnieją algorytmy, które zmieniają kolejność wierszy / kolumn w taki sposób, że większość wartości jest bliska przekątnej.
Martin Thoma

Odpowiedzi:


4

Możesz zastosować technikę opisaną w mojej pracy magisterskiej (strona 48 i następne) i nazwać Zamawianie macierzy pomyłek (CMO):

  1. Uporządkuj kolumny / wiersze w taki sposób, aby większość błędów występowała wzdłuż przekątnej.
  2. Podziel macierz pomyłek na wiele bloków, tak aby pojedyncze bloki można było łatwo wydrukować / obejrzeć - i tak, aby można było usunąć niektóre bloki, ponieważ istnieje niewiele punktów danych.

Niezły efekt uboczny: ta metoda automatycznie grupuje podobne klasy razem. Rysunek 5.12 mojej pracy magisterskiej pokazuje, że:

wprowadź opis zdjęcia tutaj

Możesz zastosować zamawianie macierzy pomyłek za pomocą clana



1

Zamiast próbować ponownie uporządkować kolumny i wiersze, proponuję spróbować znaleźć inny sposób wizualizacji danych.

Oto jedna z możliwych alternatywnych sugestii. Możesz grupować klasy, powiedzmy w ~ 20 klastrów, gdzie każdy klaster ma ~ 20 klas, używając pewnego rodzaju algorytmu grupowania, który łączy podobne klasy w ten sam klaster (np. Jeśli dwie klasy są często mylone ze sobą, powinny częściej znajdować się w tej samej grupie). Następnie możesz pokazać gruboziarnistą macierz pomieszania, z jednym rzędem / kolumną na klaster; komórka przy(i,j) pokazuje, jak często wystąpienie jakiejś klasy w klastrze i przewiduje się, że będzie miał pewną klasę w klastrze j. Ponadto możesz mieć ~ 20 drobnoziarnistych macierzy pomieszania: dla każdej grupy możesz wyświetlić macierz nieporozumień klas, dla ~ 20 klas w każdej grupie. Oczywiście można to również rozszerzyć za pomocą hierarchicznego grupowania i mieć macierze nieporozumień przy wielu ziarnistościach.

Mogą istnieć również inne możliwe strategie wizualizacji.

Jako ogólny punkt filozoficzny: może również pomóc w wyjaśnieniu twoich celów (co chcesz uzyskać z wizualizacji). Możesz wyróżnić dwa rodzaje wizualizacji:

  • Analiza eksploracyjna: nie jesteś pewien, czego szukasz; potrzebujesz tylko wizualizacji, która może pomóc w szukaniu interesujących wzorów lub artefaktów w danych.

  • Ryciny z komunikatem: Masz konkretną wiadomość, którą czytelnik ma zabrać, i chcesz opracować wizualizację, która pomoże wesprzeć tę wiadomość lub dostarczyć dowód na wiadomość.

Może ci pomóc dowiedzieć się, do czego dążysz, a następnie opracować wizualizację mającą na celu:

  • Jeśli robisz analizę eksploracyjną, zamiast próbować wybrać jedną idealną wizualizację, często pomocne jest utworzenie tylu wizualizacji, ile tylko możesz sobie wyobrazić. Nie martw się, czy któryś z nich jest idealny; jest w porządku, jeśli każdy z nich jest wadliwy, ponieważ każdy może dać ci potencjalnie inną perspektywę na dane (prawdopodobnie będzie dobrze pod pewnymi względami, a źle pod innymi).

  • Jeśli masz konkretną wiadomość, którą próbujesz przekazać, lub motyw, który próbujesz opracować, poszukaj wizualizacji obsługującej ten motyw. Trudno jest podać konkretną sugestię, nie wiedząc, jaki może być ten motyw / wiadomość.


0

Ważne jest, aby wiedzieć, dlaczego matryca pomyłek EMNIST wygląda dobrze.

Ale wydaje mi się dziwne, że nie zachowali koloru z wyższymi liczbami, które są najciemniejsze, na przykład większość pustych brakujących klasyfikacji zawierających zera ma ciemniejszy szary kolor niż te, które zawierają liczby całkowite. Nie wydaje się spójny.

Spróbowałbym użyć stylu EMINST, z wyjątkiem tego, aby zachować spójność tam, gdzie kolor wskazuje liczbę wpisów w komórce. Białe oznacza zero, a czarne - większość wpisów.

Idealną klasyfikacją byłaby czarna przekątna z całkowicie białymi górnymi i dolnymi trójkątami. Jeśli w trójkątach znajdowały się szare łaty, oznaczałoby to problemy. Byłoby to pomocne nawet na zestawie klasy 1000. W przypadku ImageNet, w którym klasy są hierarchiczne, być może sortowanie kolumn w celu zgrupowania podklas po prawej stronie klasy nadrzędnej doprowadziłoby do kwadratowych ciemnych łat.

Również jeśli otrzymujesz 5 najlepszych odpowiedzi na zdjęcie, klasy mogą nie wykluczać się wzajemnie, tak że klasyfikacja psa dla obrazu lap_dog powinna być nadal prawdziwa, dlatego w takiej macierzy pomieszania bardziej ogólne klasy powinny być znacznie ciemniejsze niż dokładne klasyfikacje (jeśli kolory są znormalizowane). Stąd lewy górny kwadrat byłby najciemniejszy.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.