This Is What Actually Happens When a Computer ‘Dreams’
Neural networks can be black boxes. These scientists want to change that.
A remarkable thing happened when Google engineers took a neural network and flipped it: it produced psychedelic portraits based on what it "wanted" to see in an image, its own self-taught assumptions, as if it were dreaming. But it wasn't dreaming, of course; so what was happening inside the neural network, really?
Enter the Deep Visualization Toolbox, a program that lets you see what's happening under the hood of a neural network, neuron by neuron.
Even as we freak out over what neural networks can do—like play video games—and maybe even understand some of the basic concepts, most of us probably have no idea what's actually going on. Because although neural networks are ultimately just computers doing simple math at ultra high speed, they can often be just as inscrutable as our own brains sometimes are—black boxes.
To dispel some of the mystique around these programs, an all-star team of computer scientists, including Cornell's Jason Yosinski, the University of Wyoming's Jeff Clune, and Thomas Fuchs from NASA's Jet Propulsion Laboratory, built a visualization tool that lets you take a closer look at what each individual neuron is doing at every layer of a neural network while you send it visual information in real time.
"While there has thus been considerable improvements in our knowledge of how to create high-performing architectures and learning algorithms," the authors write in a paper summarizing their work, "our understanding of how these large neural models operate has lagged behind."
Watch more from Motherboard: Inhuman Kind
Deep Visualization Toolbox lets you feed your neural network an image or a live webcam feed and then focus on one neuron at a time to see what it's "looking" for, as well as all the neurons around it. The tool lets you start from the very bottom layer of neurons, where a neuron might respond to light or dark edges, and up through the network until it starts representing things based on abstract categories.
If you're feeling playful, you can then mess with the neural network, introducing new images on to the screen, to test out how different neurons react and process the information. If you're feeling a little more than just playful, you could always see what happens when you feed it porn.