Neural Network wrapper for pylearn2 compatible with scikit-learn.
Project description
Deep neural network implementation without the learning cliff! This library implements multi-layer perceptrons as a wrapper for the powerful pylearn2 library that’s compatible with scikit-learn for a more user-friendly and Pythonic interface.
NOTE: This project is possible thanks to the nucl.ai Conference on July 20-22. Join us in Vienna!
Features
Thanks to the underlying pylearn2 implementation, this library supports the following neural network features, which are exposed in an intuitive and well documented API:
- Activation Types —
Nonlinear: Sigmoid, Tanh, Rectifier, Maxout.
Linear: Linear, Gaussian, Softmax.
Layer Types — Convolution (greyscale and color, 2D), Dense (standard, 1D).
Learning Rules — sgd, momentum, nesterov, adadelta, adagrad, rmsprop.
Regularization — L1, L2 and dropout.
Dataset Types — numpy.ndarray, scipy.sparse, coming soon: iterators.
If a feature you need is missing, consider opening a GitHub Issue with a detailed explanation about the use case and we’ll see what we can do.
Installation & Testing
To download and setup the latest official release, you do so from PYPI directly:
> pip install scikit-neuralnetwork
This contains its own packaged version of pylearn2 from the date of the release (and tag) but will use any globally installed version if available.
Then, you can run the samples and benchmarks available in the examples/ folder.
Getting Started
The library supports both regressors (to estimate continuous outputs from inputs) and classifiers (to predict labels from features). This is the sklearn-compatible API:
from sknn.mlp import Classifier, Layer
nn = Classifier(
layers=[
Layer("Rectifier", units=100),
Layer("Linear")],
learning_rate=0.02,
n_iter=10)
nn.fit(X_train, y_train)
y_valid = nn.predict(X_valid)
score = nn.score(X_test, y_test)
The generated documentation as a standalone page where you can find more information about parameters, as well as examples in the User Guide.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.