Це неправда, що MCMC, що виконує детальний баланс, завжди дає стаціонарний розподіл. Вам також потрібно, щоб процес був ергодичним . Давайте розберемося, чому:
Розглянемо як стан заданих усіх можливих станів та ідентифікуємо його за допомогою індексу . У марківському процесі розвивається розподіл відповідно доxipt(i)
pt(i)=∑jΩj→ipt−1(j)
де - матриця, що позначає ймовірності переходу (ваш ).Ωj→iq(x|y)
Отже, у нас це є
pt(i)=∑j(Ωj→i)tp0(j)
Той факт, що є ймовірністю переходу, означає, що її власні значення повинні належати до інтервалу [0,1].Ωj→i
Для того, щоб будь-який початковий розподіл переходив до асимптотичного, ви повинні переконатися, щоp0(j)
- 1 Існує лише одне власне значення зі значенням 1 і має унікальний ненульовий власний вектор.Ω
Щоб переконатися, що - це асимптотичний розподіл, вам потрібно це забезпечитиπ
- 2 Власний вектор, пов'язаний із власним значенням 1, є .π
Ергодичність означає 1., детальний баланс передбачає 2., і тому обидва утворюють необхідну і достатню умову асимптотичної конвергенції.
Чому детальний баланс передбачає 2:
Починаючи з
p(i)Ωij=Ωjip(j)
і підсумовуючи в обох сторонах, отримуємоj
p(i)=∑jΩjip(j)
тому що , оскільки ти завжди кудись .∑jΩij=1
Наведене рівняння - це визначення власного значення 1, (простіше зрозуміти, чи записуєте ви його у векторній формі :)
1.v=Ω⋅v