J'ai une très grande chaîne de Markov absorbante. Je veux obtenir la matrice fondamentale de cette chaîne pour calculer la nombre d'étapes prévues avant l'absorption . De ce question Je sais que cela peut être calculé par l'équation suivante
(I - Q)t=1
qui peut être obtenu en utilisant le code python suivant :
def expected_steps_fast(Q):
I = numpy.identity(Q.shape[0])
o = numpy.ones(Q.shape[0])
numpy.linalg.solve(I-Q, o)
Cependant, Je voudrais le calculer en utilisant une sorte de méthode itérative similaire à la méthode de l'itération de puissance. utilisé pour calculer le PageRank . Cette méthode me permettrait de calculer une approximation du nombre attendu d'étapes avant absorption dans un système de type mapreduce.
¿Est-ce que quelque chose de similaire existe ?