Open source

OpenNN is an open source class library written in C++ programming language which implements neural networks, a main area of machine learning research.

Opennn code

Deep architectures

The library implements any number of layers of non-linear processing units for supervised learning. This deep architecture allows the design of neural networks with universal approximation properties

Deep neural network

High performance

The main advantage of OpenNN is its high performance. It is developed in C++ for better memory management and higher processing speed, and implements CPU parallelization by means of OpenMP and GPU acceleration with CUDA.


To learn more about OpenNN, go to the documentation.

OpenNN documentation logo

Commercial support


Proof of

Design and