← all repositories
karpathy/neuraltalk

A readable fossil of image captioning’s numpy era

An educational archive of the pure-numpy implementation that learned to describe images with recurrent networks.

5.5k stars Python Computer VisionLanguage Models
neuraltalk
Not currently ranked — collecting fresh signals.
star history

What it does

Implements two early multimodal recurrent neural network architectures—one from Google (CNN + LSTM) and one from Stanford (CNN + RNN)—that generate sentence descriptions for images. It trains on datasets like Flickr8K, Flickr30K, and MSCOCO, where each image is paired with five human-written captions, and evaluates generated sentences with BLEU score. The codebase is pure Python 2.7 and numpy, with HTML utilities for visualizing predictions and training status.

The interesting bit

The author explicitly deprecated the project in favor of NeuralTalk2, noting this version is roughly two orders of magnitude slower because it lacks batching and GPU support. What remains interesting is its status as a clean, from-scratch numpy implementation of a now-ubiquitous pipeline—image features from a VGG network fed into a language-generating RNN—making it a readable fossil of deep learning’s pre-framework era.

Key highlights

  • Implements both Vinyals et al. (CNN + LSTM) and Karpathy & Fei-Fei (CNN + RNN) captioning models
  • Ships with HTML visualization tools for monitoring training and inspecting predictions
  • Pretrained models available, though applying them to new images requires manual VGG feature extraction
  • Pure numpy/scipy implementation with no deep-learning framework dependencies
  • BSD licensed

Caveats

  • Explicitly deprecated by the author, who recommends NeuralTalk2 for any practical use
  • Requires Python 2.7 and relies on Matlab for extracting CNN features on arbitrary new images
  • Research-code structure means documentation lives inside individual Python files rather than external guides

Verdict

Worth browsing if you want to understand how early multimodal networks worked under the hood without modern framework abstraction, but avoid it if you need to train or deploy a modern image captioner. The author himself tells you to use NeuralTalk2 instead.

Frequently asked

What is karpathy/neuraltalk?
An educational archive of the pure-numpy implementation that learned to describe images with recurrent networks.
Is neuraltalk open source?
Yes — karpathy/neuraltalk is an open-source project tracked on heatdrop.
What language is neuraltalk written in?
karpathy/neuraltalk is primarily written in Python.
How popular is neuraltalk?
karpathy/neuraltalk has 5.5k stars on GitHub.
Where can I find neuraltalk?
karpathy/neuraltalk is on GitHub at https://github.com/karpathy/neuraltalk.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.