Telegram: @ninachely
Наша задача: найти максимум правдоподобия. А мы решили вместо этого, если есть какие-то кластеры (а они, как правило, есть в реальных задачах), использовать какую-то скрытую переменную, которая может помочь упростить оптимизацию правдоподобия. Иными словами, мы заменили прямую максимизацию правдоподобия
$z_i \in \{1 , \dots, n_{clust}\} \Rightarrow$ задача может быть переформулирована
Классический ЕМ-алгоритм:
E.
Мы можем найти вероятность того, что $z$ принимает тот или иной кластер, при условии, что у нас есть $y$ и некий предварительно посчитанный вектор параметров $\theta_{old}$: $p(z \, | \, y, \theta_{old})$ — таблица чисел размера $n_{obs} \times n_{clust}$.
С помощью этой функции мы определяем функцию $Q(\theta \, | \, \theta_{old}) = \mathbb{E} [\ln{p(y, z \, | \, \theta)} \, | \, y, \theta_{old}]$
М.
$\underset{\theta}{\max} \,Q(\theta \, | \, \theta_{old})$
$\ln{p(y \, | \, \theta)} = g(\theta \, | \, \theta_{old})$ в точке $\theta = \theta_{old}$
<aside> 💡 $\mathbb{E}(\ln{🐘}) \leqslant \ln{\mathbb{E}(🐘)}$
</aside>
$\square$
$$ \ell(y \, | \, \theta_{old}) = \dots = \ln{\mathbb{E}[\frac{p(y, z \, | \, \theta)}{p(z \, | \, y, \theta_{old})} \, | \, y, \theta_{old}]} \geqslant \mathbb{E} \ln{[\dots]} $$
$$ \theta = \theta_{old} \Rightarrow \frac{p(y, z \, | \, \theta)}{p(z \, | \, y, \theta_{old})} = \frac{p(y, z \, | \, \theta)}{\frac{p(y, z \, | \, \theta_{old})}{p(y \, | \, \theta_{old})}} = {p(y \, | \, \theta_{old})} $$
В точке $\theta = \theta_{old}$ надо считать ($\Rightarrow$ функция не случайна):
$$ \ln{\mathbb{E}[p(y \, | \, \theta_{old}) \, | \, y, \theta_{old}]} = \ln{p(y \, | \, \theta_{old})} $$
$\blacksquare$