Installation/Getting Started

This page will help you get started with OpenDeep. You'll be up and running in a jiffy!

What is OpenDeep?

OpenDeep is a general purpose commercial and research grade deep learning library for Python built from the ground up in Theano that brings unprecedented flexibility for both industry data scientists and cutting-edge researchers.

Use OpenDeep to:

  • Quickly prototype complex networks through a focus on complete modularity and containers similar to Torch.
  • Configure and train existing state-of-the-art models.
  • Write your own models from scratch in Theano and plug into OpenDeep for easy training and dataset integration.
  • Use visualization and debugging tools to see exactly what is happening with your neural net architecture.
  • Plug into your existing Numpy/Scipy/Pandas/Scikit-learn pipeline.
  • Run on the CPU or GPU.

This library is currently undergoing rapid development and is in its alpha stages.

Quick example usage: code an MLP in ~20 seconds

A Multilayer Perceptron is a simple feedforward network that has a classification layer. In this example, we can quickly construct a model container, add some hidden layers and an output layer, and train the network to classify images of handwritten digits (MNIST dataset).

from opendeep.models import Prototype, Dense, SoftmaxLayer
from opendeep.optimization import AdaDelta
from opendeep.data import MNIST

mlp = Prototype()
mlp.add(Dense(input_size=28*28, output_size=512, activation='rectifier', noise='dropout'))
mlp.add(Dense(output_size=512, activation='rectifier', noise='dropout'))
mlp.add(SoftmaxLayer(output_size=10))

trainer = AdaDelta(model=mlp, dataset=MNIST())
trainer.train()

Installation

Dependencies

Install from source

Because OpenDeep is still in alpha, you have to install via setup.py. Here are the steps to install:

  1. Navigate to your desired installation directory and download the github repository like so:
git clone https://github.com/vitruvianscience/opendeep.git
  1. Navigate to the top-level folder (should be named OpenDeep and contain the file setup.py) and run setup.py with develop mode like so:
cd OpenDeep
python setup.py develop

Using python setup.py develop instead of the normal python setup.py install allows you to update the repository files by pulling from git and have the whole package update! No need to reinstall.

That's it! Now you should be able to import opendeep into python modules.

Next Steps

Check out some Tutorials in the navigation bar on the left.

To learn how to use existing models, check out Tutorial: First Steps.

A good place to start writing models is Tutorial: Your First Model (DAE), where you will learn how to create a new model from scratch.