/NeuralNetworksLite

Learn Neural Networks using Java

Primary LanguageJavaMIT LicenseMIT

Neural Networks Lite

Authour

This repository contains three projects:

  • NeuralNetworks4J, which implements several famous neural networks only depend on pure Java (without any third party dependencies).
  • NeuralNetworksND4J, re-implement the NeuralNetworks4J using ND4J library (a scientific library for Java).
  • NeuralNetworksDL4J, interesting codes to solve some practical tasks using Deeplearning4j library (a powerful library for Java to tackle deep learning tasks).

Among this three projects, which generally contains several following neural networks algorithms:

  • (Multi-Layer) Perceptrons
  • Logistic Regression
  • Restricted Boltzmann Machines
  • Deep Belief Nets
  • Denoising Autoencoder
  • Stacked Denoising Autoencoder
  • Convolutional Neural Networks
  • Recurrent Neural Networks (LSTM)

Requirements

  • ND4J Library. For Maven, import following dependency:
<dependency>
    <groupId>org.nd4j</groupId>
    <artifactId>nd4j-native</artifactId>
    <version>${nd4j.version}</version>
</dependency>
<dependency>
    <groupId>org.deeplearning4j</groupId>
    <artifactId>deeplearning4j-core</artifactId>
    <version>${dl4j.version}</version>
</dependency>

Notes and Information

Perceptrons

Logistic Regression

Multi-Layer Perceptrons

Restricted Boltzmann Machines

Deep Belief Nets

Denoising Autoencoder

Stacked Denoising Autoencoder

Convolutional Neural Networks

Recurrent Neural Networks

Reference: Java Deep Learning Essentials