Machine Learning Concepts with Java and DeepLearning4J

Introduction to Supervised Learning

Prerequisites: None. What is Machine Learning? When we say, ‘Machine Learning’, the ‘Machine’ part usually insinuates a computer program that receives inputs and produces outputs. We often refer to this program as the ‘model’. Our goal is to ‘train’ that model to produce the correct outputs for given inputs, without explicitly programming it for that particular set of inputs. During…

Continue Reading

Machine Learning Concepts with Java and DeepLearning4J

Neural Networks Fundamentals

Prerequisites: Introduction to Supervised Learning. Inspired by the structure of the human brain, Neural Networks are among the most commonly used models for supervised learning tasks. The building blocks of these networks are simple ‘cells’, or ‘neurons’, which can be interconnected in various ways. Perceptron A single neuron has multiple inputs and a single output, and can be represented by…

Continue Reading

Machine Learning Concepts with Java and DeepLearning4J

Introduction to DeepLearning4J

Prerequisites: Neural Networks, knowledge of Java. DeepLearning4J (or DL4J for short) is a Java based, commercial-grade, open-source, distributed deep-learning library. It can be used to create and combine various types of neural networks, train them and deploy the resulting models. A quick look at DL4J’s Github repository reveals that it is accompanied by ND4J, a scientific computing library with an…

Continue Reading

Machine Learning Concepts with Java and DeepLearning4J

First DL4J Example – MNIST Classifier with a Single Layer MLP

Prerequisites: Introduction to DeepLearning4J, knowledge of Java. DLJ4 comes with a large amount of examples. Based on one of them, our first neural network code example is an MLP classifier for handwritten digit recognition. MNIST Classification Task The neural network in this example takes on the classification task of the MNIST database of handwritten digits. This database consists of numerous…

Continue Reading