How to think about that Google "mind reading with Stable Diffusion" paper

2023-03-03

There's a paper doing the rounds online (again) about how now you can "read minds with Stable Diffusion"; as it's often the case, it's very impressive but not what the hype (or criti-hype) headlines (and often the full articles...) say, I thought it'd be good to give a very short and informal description of what they did and didn't, and what parts of that are the really interesting ones. A quickly drafted first impression, not a formal analysis, so caveat reader.

Here's the paper. Of course, if you can read and follow a paper that's always better than reading a tweet about a post about an article about it.

Anyway, this is the short of what they did (although I'm fibbing about some of it — they didn't really do the experiments, they used an existing data set).

Then they showed them other images, and used their brain activity to get a latent vector used the small model, and used the large model to generate an image. And those images are (sometimes) quite close to the original images!

That's cool. Very cool. But what's going on?

What they aren't doing is what you would call "mind reading": they aren't showing an arbitrary random image to a random person, reading their brain activity, and then figuring out the image just from that. However, for those four people, for that sort of images, in that context... it's sort of that?

Now, the fact that you can map brain activity to latent vectors in a good image generation model and reconstruct images that way isn't, by itself, huge. An image generation model is by construction a sort of index of pretty much every reasonable image (or at least every reasonable image on the internet) plus many of their semantically reasonable interpolations, so it stands to reason that you can use it to encode pretty much every reasonable image you'd show.

What is really interesting is that you can build that map in a relatively simple way, with (comparatively) few data points and (comparatively, still huge) few degrees of freedom in the model. What's interesting is not that it can be done (with enough parameters you can map pretty much anything to anything), but that it can be done in a relatively simple way.

As analogy, what Brahe/Kepler/Newton did wasn't predicting astronomical observations, that was already in our bag of tricks: it was doing it in a simple way. They showed that if you used the right mathematics astronomy was simple, and in fact you could just put it together with Earthbound physics and the whole was still simple. Compiling large data sets isn't trivial — it takes organization, culture, engineering, resources — but building simple, consistent, and generalizable explanations out of those - that's when it gets really powerful.

So what can we suspect from what they did? Let's leave aside the fact that they did it for four people. Four isn't one but it's not a lot; the conservative assumption would be that the model is really four individual models meshed up, and that if you tried to do the same with more people and the same number of parameters you'd just get poorer results. The maximalist assumption that these four can be used for any random person, I think, is much more unlikely.

Even worst case, the fact that a lower-dimension mapping works suggests this:

On the other hand, I'm throwing around the idea of "simple" and "few" while talking actually about thousands of dimensions. This might be insanity on my part: maybe the fact that we our image spaces live in potentially absurdly high-dimensional spaces but are all encodeable in much smaller ones is making us feel that we're doing something special with that encoding, while in truth that "much smaller" space is large enough that we are actually still absurdly wasteful. In the analogy above, maybe we are still pre-Newtonian.

In technological terms... Well, the first thing to look at would be how the same model performs with random people; there's a difference between learning to reconstruct images for a single person (or a few) and for random or nearly random ones. It'd also be a nice thing to know for neuroscientists! The second thing to note is that fMRIs aren't the most portable of BCI platforms, but that doesn't worry me much, because the fact that you can get a low dimensional encoding should give us hope that it'd be possible to do the same with less-than-awesome BCI sensors, and that is awesome. We might be closer to arbitrary image reconstruction from brain data than we thought we were!

All in all, this is a cool experiment with more implications, perhaps, than just the technical proof of concept. We are ultimately learning things about the mathematical structure of our perception and language, and that's going to have a large impact not just on the applications side but also on our understanding of neuroscience and on more than one branch of philosophy.

Interesting times: the more so the less you look at the headlines and the more you focus on what the details imply.

None

None

None