Klasteryzacja widma
Mam tabelę pand, która zawiera dane o różnych obserwacjach, z których każda była mierzona na innej długości fali. Te obserwacje różnią się od siebie pod względem leczenia, które otrzymali. Tabela wygląda mniej więcej tak:
>>>name treatment 410.1 423.2 445.6 477.1 485.2 ....
0 A1 0 0.01 0.02 0.04 0.05 0.87
1 A2 1 0.04 0.05 0.05 0.06 0.04
2 A3 2 0.03 0.02 0.03 0.01 0.03
3 A4 0 0.02 0.02 0.04 0.05 0.91
4 A5 1 0.05 0.06 0.04 0.05 0.02
...
Chciałbym sklasyfikować różne obserwacje na podstawie ich widma (kolumny liczbowe).
Próbowałem uruchomić PCA i pomalować go zgodnie z obróbką otrzymaną przez obserwacje i porównać to z wynikami klasyfikacji, takich jak k-średnie i klasteryzacja widmowa, ale nie jestem pewien, czy wybrałem właściwe metody, ponieważ wydaje się przez cały czas gromady są zbyt podobne do odległości euklidesowej i nie jestem pewien, czy uwzględniają widmo (użyłem wszystkich kolumn liczbowych do przewidywania).
To jest na przykład porównanie między PCA + Kolory w porównaniu z klasyfikacją spektralną:
PCA:
klasyfikacja (punkty zlokalizowane zgodnie z PCA1 PCA2, ale kolory są zgodne z klasyfikacją:
jak widać tutaj, wygląda na to, że klasyfikacja jest oparta na rzeczywistej odległości i chciałbym czegoś, co uwzględni wszystkie wartości liczbowe.
Dlatego szukam spostrzeżeń dotyczących innych metod klasyfikacji, które mogłyby dać mi lepsze wyniki, lub może innych pomysłów, jak mogę sprawdzić, czy w moich danych znajdują się klastry na podstawie pomiarów w różnych kolumnach, na przykład gdybym mógł przewidzieć leczenie z klastrów
Odpowiedzi
To brzmi jak normalne nadzorowane zadanie klasyfikacyjne.
Czy wypróbowałeś również inne standardowe metody, takie jak Support Vector Machines, RandomForests, Gradient Boosting, kNN, sieci neuronowe itp., Czy też istnieje szczególny powód, dla którego próbowałeś tylko metod klastrowych?
Metody grupowania, takie jak kmeans lub grupowanie spektralne, są zwykle używane w środowisku nienadzorowanym, w którym członkostwo w klasach nie jest dostępne. Często przyjmują pewne założenia dotyczące danych, które mogą zostać naruszone, np. Kmeans zakłada sferyczne klastry, co oczywiście nie ma miejsca w przypadku Twoich danych.