-
Notifications
You must be signed in to change notification settings - Fork 656
Failure Modes
You're trying to use Feature Visualization to visualize your model -- possibly with Lucid, or possibly your own implementation -- and it isn't working.
Sadly, this is a very common situation, and there's a lot of reasons why this happens. (Likely including reasons we don't know about!) This page documents some common reasons.
This is the most common reason visualizations from a new model don't work.
When you train a model, in parameters fed into it have some valid range. Unfortunately, even within vision models, this can vary a great deal! Some models allow pixels to be in (0, 1)
, (-1, 1)
(0, 255)
, (-117, 255-117)
and other ranges.
Ideally, you'd find the correct range documented somewhere. Unfortunately, it often isn't explicitly documented. One trick is to look for a script to run inference on the graph and see what that is doing.
Failing this, it can also help to do
If you're implementing feature visualization yourself, make sure to add robustness, starting with jitter. See the section of Feature Visualization on this.
If you visualize right after a max-pooling layer, this often doesn't work. Instead, of features appearing in the way they were originally organized, you'll often see them get "pulled" into clumps, making the image vaguely nonsensical.