Welcome to neon! The typical workflow for a deep learning model is as follows:

  1. Generate a backend

    The backend defines where computations are executed in neon. We support CPU, MKL, and GPU (Pascal, Maxwell or Kepler architectures) backends.

    See neon backend

  2. Load data

    Neon supports loading of both common and custom datasets. Data should be loaded as a python iterator, providing one minibatch of data at a time during training.

    See Datasets, Data loaders,

  3. Specify model architecture (layers, activation functions, weight initializers)

    Create your model by providing a list of layers. For layers with weights, provide a function to initialize the weights prior to training.

    See Layers, Layer containers, Activations, Initializers.

  4. Train model

    To train a model, provide the training data (as an iterator), cost function, and an optimization algorithm for updating the model’s weights. To modify the learning rate over the training time, provide a learning schedule.

    See Datasets, Costs and metrics, Optimizers, and Learning schedules

  5. Evaluate

    Evaluate a trained model based on a validation dataset and a provided Metric.

    See Models, Costs and metrics

Neon Features

Neon currently supports the following: