Pyro: простой пример обратной графики с использованием SVI не работает
Я новичок в пиро и пытаюсь реализовать простую задачу обратной графики, включающую в себя оценку координат точек треугольника, представленных на черно-белом изображении 32x32.
Поэтому я определил порождающую модель, которая генерирует 3 равномерно случайных точки, отображает их в изображение и наблюдает за результатом. Я тогда использую SVI
с автогидом (AutoMultivariateNormal
) попытаться оценить точки для изображения с фиксированным треугольником.SVI
кажется, работает хорошо и ELBO
потеря уменьшается, однако, когда я пытаюсь сделать выборку сзади, все, что я получаю, это равномерно случайные точки без признаков обучения.
Мой код в блокноте Jupyter с результатами:
Что мне здесь не хватает?