J'ai regroupé mon ensemble de données de plusieurs milliers de chaînes de Markov de premier ordre en une dizaine de clusters.
Existe-t-il une méthode recommandée pour évaluer ces clusters et découvrir ce que les éléments des clusters partagent et comment ils diffèrent des autres clusters? Je peux donc faire une déclaration comme «Les processus du cluster A ont tendance à rester dans l'état Y une fois qu'ils y sont, ce qui n'est pas vrai pour les processus des autres clusters».
Les matrices de transition de ces chaînes de Markov sont trop grandes pour simplement «regarder et voir». Ils sont relativement clairsemés, si cela peut aider.
Mon idée était de prendre toutes les matrices de transition dans un cluster, de les additionner et de les tracer en intensité dans une image (sur une échelle de 0 à 255). Y a-t-il quelque chose de plus "professionnel" que je devrais essayer?
Réponses:
Pour faire une déclaration sur le comportement en régime permanent de chaque cluster, vous pouvez calculer les distributions en régime permanent de chaque matrice de transition par vecteurs propres, puis comparer les boîtes à moustaches par cluster. Vous risquez de rencontrer des problèmes dans le calcul de l'état d'équilibre sans appliquer d'abord une sorte de lissage.
Comment regroupez-vous les matrices de transition? Si c'était moi, j'appliquerais un lissage additif à chaque ligne, puis prendrais la transformation log-ratio centrée de chaque ligne, puis aplatirais les matrices.
Si vous êtes en cluster avec K-means ou une variante, vous pouvez analyser les centres de cluster normalisés. Ou choisissez simplement quelques observations de chaque groupe et analysez-les.
la source
Tout d'abord, pour vous faire une idée, vos matrices de dimension 105 x 105 correspondent-elles aux applications que vous mentionnez? Lorsque vous dites «rester dans l'état Y», cela signifie-t-il rester dans l'application Y?
Ensuite, je suppose que les résultats tels que "Les processus du cluster A ont tendance à rester dans l'état Y une fois qu'ils y sont, ce qui n'est pas vrai pour les processus des autres clusters" sont un peu trop fins avec seulement 10 clusters. Avez-vous essayé un clustering du domaine d'application - si je comprends bien, vous pouvez regrouper les 105 applications en fonction du comportement de l'utilisateur. Ensuite, avez-vous regardé la simple présence d'utilisateurs plutôt que la transition, c'est-à-dire regarder les profils d'utilisateurs à travers les 105 applications? Il semble que vous puissiez utiliser le coefficient de Pearson entre les profils d'utilisateurs; soit sur des clusters d'applications, soit sur les applications elles-mêmes. Cela pourrait peut-être être étendu aux transitions entre les applications, mais actuellement, je pense qu'il existe un énorme décalage entre le nombre de clusters et le type de résultat qui vous intéresse.
la source