explaingit

google/deepdream

13,236Audience · researcherComplexity · 2/5Setup · hard

TLDR

Google Research's original 2015 DeepDream notebook that turns any photo into a surreal, pattern-covered image by asking a neural network to amplify what it thinks it sees.

Mindmap

mindmap
  root((repo))
    What It Does
      Surreal image generation
      Neural feature amplification
      Pattern visualization
    How It Works
      Trained image network
      Gradient ascent loop
      Octave passes
    Outputs
      Transformed photos
      Repeating patterns
      Viral art style
    Audience
      AI researchers
      Digital artists
      ML learners
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Run the notebook on your own photos to generate surreal DeepDream-style images.

USE CASE 2

Study the original technique to understand how trained neural networks visualize and amplify learned features.

USE CASE 3

Use the code as a reference when learning how gradient ascent is applied to image generation.

Tech stack

PythonJupyter NotebookCaffe

Getting it running

Difficulty · hard Time to first run · 1h+

Written for Caffe, an older deep learning framework that is difficult to install on modern systems, expect significant dependency setup work.

No license is specified in the repository.

In plain English

DeepDream is a small repository from Google Research that contains a single Jupyter notebook showing how to generate trippy, surreal images by running pictures through a neural network in an unusual way. It was published in 2015 alongside a blog post that explained the technique, which Google called Inceptionism. The idea behind DeepDream is to take a trained image-recognition network and instead of using it to identify what is in a photo, feed it an image and ask it to amplify whatever patterns it thinks it sees. The network has learned to recognize features like eyes, fur, or architecture, so when it keeps reinforcing those patterns in an image, the result looks like the original photo covered in strange repeating shapes and faces. The more passes you run, the more extreme the visual distortion becomes. The repository is minimal: it is essentially one notebook file with sample code and explanations. There is no installable package or command-line tool. You clone the repository, install the dependencies listed in the notebook, and run the cells to generate your own images. The code was written to work locally or to be read directly on GitHub. This was an influential early demonstration of what neural networks had learned to see, and the images it produced went viral in 2015. The technique and the hashtag deepdream sparked a wave of community-generated artwork. The README is short and the project has not been developed further since its original release.

Copy-paste prompts

Prompt 1
I cloned google/deepdream. Walk me through installing the Caffe dependencies and running the notebook on a modern Python environment.
Prompt 2
Using the deepdream notebook, explain what the octave loop does and how increasing the number of octaves changes the output image.
Prompt 3
Help me adapt the deepdream code to use a modern PyTorch model instead of Caffe so I can run it without old dependencies.
Prompt 4
I want to generate a deepdream video from frames of a clip. Show me how to loop the notebook over a sequence of images and reassemble them.
Open on GitHub → Explain another repo

← google on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.