0

I'm new to pyro and trying to implement a simple inverse graphics problem involving estimating the coordinates of the points of a triangle rendered on a black & white 32x32 image.

So I defined a generative model that generates 3 uniformly random points, renders them into an image and observes the result. I then use SVI with an autoguide (AutoMultivariateNormal) to try and estimates the points for a fixed triangle image. SVI seems to run well and ELBO loss decreases, however when trying to sample from the posterior all I get is uniformly random points with no sign of learning.

My code in a Jupyter notebook with the results:

Screenshot #1

Screenshot #2

Screenshot #3

What am I missing here?

merv
  • 67,214
  • 13
  • 180
  • 245
Matan Tsuberi
  • 461
  • 3
  • 11
  • 1
    Please add your code in to the question instead of linking to a Google file that may later be removed and orphan the question. – Murray Foxcroft Feb 15 '19 at 18:50
  • Done. Unfortunately, Stackoverflow doesn't allow me to show images inline and instead shows them as links. – Matan Tsuberi Feb 15 '19 at 19:08
  • Thanks - if you copy your image and just paste it in to the question body, SO should take care of it for you and add it via imgur. – Murray Foxcroft Feb 15 '19 at 19:13
  • No, its because i'm a new member or something... – Matan Tsuberi Feb 15 '19 at 19:16
  • Actually, to inline the images you just needed to include a `!` in front of the link (see how I edited your question). However, it is still preferable to input the code as text rather than images. Images of code make it impossible for those who rely on screen readers to understand your question. – merv Feb 15 '19 at 19:37
  • Please post your code as text< *not* image; see [why an image of your code is not helpful](https://idownvotedbecau.se/imageofcode). – desertnaut Apr 19 '20 at 13:55

0 Answers0