Ocena klastrów łańcuchów Markowa pierwszego rzędu

10

Zgrupowałem mój zestaw danych kilku tysięcy łańcuchów Markowa pierwszego rzędu w około 10 klastrów.

Czy istnieje jakiś zalecany sposób, w jaki mogę ocenić te klastry i dowiedzieć się, jakie elementy mają te klastry i czym różnią się od innych klastrów? Mogę więc wypowiedzieć się w stylu: „Procesy w klastrze A mają tendencję do pozostania w stanie Y, kiedy się tam znajdą, co nie jest prawdą w przypadku procesów w innych klastrach”.

Macierze przejściowe tych łańcuchów Markowa są zbyt duże, by „tylko patrzeć i widzieć”. Są stosunkowo rzadkie, jeśli to może pomóc.

Mój pomysł polegał na zebraniu wszystkich macierzy przejścia w klastrze, zsumowaniu ich i wykreśleniu ich jako intensywności na zdjęciu (w skali od 0 do 255). Czy jest coś bardziej „profesjonalnego”, co powinienem wypróbować?

użytkownik7610
źródło
Czy wiesz, że procesy te są łańcuchami rynkowymi pierwszego rzędu (a jeśli tak, to w jaki sposób)? Zakładając, że odpowiedź na to pytanie jest twierdząca, to jakie dodatkowe informacje a priori znasz na temat struktury? Staram się przede wszystkim ustalić, dlaczego interesuje Cię klastrowanie; Podejrzewam, że wiedza o tym pomoże naszym czytelnikom poprowadzić cię bardziej efektywnie do rozwiązania.
kardynał
Pierwotnymi danymi były strumienie kliknięć generowane przez użytkowników mojej witryny. Stworzyłem procesy markowa, aby każdy proces opisywał strumień kliknięć jednego użytkownika. Wiem, że istnieją książki i gazety, które mówią, że łańcuchy Markowa są do tego nieodpowiednie, ale moje dane nie zawierają dokładnego adresu URL, o który prosił użytkownik, tylko „aplikację”, do której należy adres URL. (Moja strona to system informacyjny podzielony na 105 tak zwanych „aplikacji”, które są w większości samodzielnymi częściami witryny, połączonymi stroną główną i bocznym menu na każdej stronie)
user7610
Interesuje mnie klastrowanie, ponieważ chcę ujawnić grupy użytkowników o podobnych wzorcach korzystania z witryny. Podejrzewam, że wzorce, które wychwytuje łańcuch Markowa, wystarczają do rozróżnienia takich grup. Sprawdziłem, w jaki sposób utworzone przeze mnie klastry odpowiadają rolom, które użytkownicy mają w witrynie, i zawsze wygląda to tak, że w klastrze jest wielu użytkowników z jednej roli i tylko kilka z innych ról, więc wygląda to obiecująco. Mam nadzieję, że to pomaga
użytkownik7610
Cześć. Mam ten sam problem. Wreszcie, jak rozwiązałeś problem?
nan
@ nan nie potrzebowałem, potrzebowałem tego tylko w projekcie terminowym, więc po prostu zrobiłem coś innego. Gdybym musiał to teraz rozwiązać, spróbowałbym spojrzeć na en.wikipedia.org/wiki/... w celu uzyskania wstępnego grupowania. t-SNE jest obecnie bardzo popularny i nadaje się do IMO. Mam nadzieję, że uzyskany przeze mnie wynik będzie bardziej znaczący niż wyniki uzyskane dzięki mojemu podejściu ad hoc. A użycie stosunkowo nowej
superfajności

Odpowiedzi:

1

Aby wypowiedzieć się na temat zachowania w stanie ustalonym dla każdego skupienia, można obliczyć rozkłady stanu ustalonego dla każdej macierzy przejściowej według wektorów własnych, a następnie porównać wykresy pudełkowe według skupień. Prawdopodobnie wystąpią problemy z obliczaniem stanu ustalonego bez uprzedniego zastosowania pewnego rodzaju wygładzania.

Jak grupujesz macierze przejścia? Gdybym to był ja, zastosowałbym wygładzanie addytywne do każdego wiersza, następnie wyśrodkowałam transformację logarytmiczną każdego rzędu, a następnie spłaszczyłeś macierze.

Jeśli skupiasz się za pomocą środków typu K lub wariantu, możesz przeanalizować znormalizowane centra skupień. Lub po prostu wybierz kilka obserwacji z każdej grupy i przeanalizuj je.

Jessica Collins
źródło
0

Po pierwsze, aby uzyskać pomysł, czy macie macierze o wymiarach 105 x 105, odpowiadające zastosowanym przez Państwa aplikacjom? Kiedy mówisz „pozostań w stanie Y”, czy to oznacza trzymanie się aplikacji Y?

Następnie założyłbym, że wyniki takie jak „Procesy w klastrze A mają tendencję do pozostania w stanie Y, gdy już tam dotrą, co nie jest prawdą w przypadku procesów w innych klastrach”, są nieco zbyt drobnoziarniste przy zaledwie 10 klastrach. Czy próbowałeś klastrować domenę aplikacji - jeśli dobrze rozumiem, możesz zgrupować 105 aplikacji w oparciu o zachowanie użytkownika. Następnie, czy patrzyłeś na zwykłą obecność użytkowników, a nie na przejście, tj. Spojrzałeś na profile użytkowników w 105 aplikacjach? Brzmi, jakbyś mógł użyć współczynnika Pearsona między profilami użytkowników; albo w klastrach aplikacji, albo w samych aplikacjach. Być może można to rozszerzyć na przejścia między aplikacjami, ale obecnie uważam, że istnieje ogromne niedopasowanie między liczbą klastrów a rodzajem wyników, którymi jesteś zainteresowany.

micans
źródło