Нейронные сети на Java. Библиотека Neuroph.

Реализуем искуственный интеллект в виде нейронной сети на Java.

Проект Neuroph по-сути имеет две реализации:

  1. Программа с графическим интерфейсом для наглядного отображения работы нейронной сети, ее обучения и тестирования.
  2. Набор классов для интегрирования в приложение Java

Neuroph studio

Для того, чтобы создать и обучить нейронную сеть с помощью Neuroph Studio, необходимо выполнить следующие шаги:

  1. Create Neuroph Project
  2. Create Perceptron network
  3. Create training set (Training -> New Training Set)
  4. Train network
  5. Test trained network

Интеграция нейронной сети в Java приложение

Пример создания небольшой нейронной сети на Neuroph:

package neural;

import javax.sql.rowset.serial.SerialArray;

import org.neuroph.core.NeuralNetwork;
import org.neuroph.core.data.DataSet;
import org.neuroph.core.data.DataSetRow;
import org.neuroph.nnet.Perceptron;
import org.neuroph.nnet.learning.HopfieldLearning;
import org.neuroph.util.TransferFunctionType;

public class Neural {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		NeuralNetwork<HopfieldLearning> nNetwork = new Perceptron(2, 1);
		
		DataSet trainingSet =
				 new DataSet(2, 1); 
		
		trainingSet. addRow (new DataSetRow (new double[]{0, 0},
				 new double[]{0}));
				trainingSet. addRow (new DataSetRow (new double[]{0, 1},
				 new double[]{1}));
				trainingSet. addRow (new DataSetRow (new double[]{1, 0},
				 new double[]{1}));
				trainingSet. addRow (new DataSetRow (new double[]{1, 1},
				 new double[]{1}));
				// learn the training set
				nNetwork.learn(trainingSet);
				// save the trained network into file
				nNetwork.save("or_perceptron.nnet"); 
				System.out.println("end");

				// set network input
				nNetwork.setInput(0, 0);
				// calculate network
				nNetwork.calculate();
				// get network output
				double[] networkOutput = nNetwork.getOutput();
				
				for (double i : networkOutput)
					System.out.println(i);
				
	}

}

Вам будет интересно:

Машинное обучение, искусственный интеллект. Python... В этой статье мы разберем основы работы с Pandas для машинного обучения. Для начала работы установите Anaconda2. Однако, Вы можете использовать...
Шпаргалка по сервлетам JAVA Пример JAVA сервлета с использованием основных функций. import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; ...
Java шпаргалка. Часть 3. Наследование... Шпаргалка по наследованию в языке Java. При наследовании методы и поля существующего класса используются повторно (наследуются) вновь создаваем...
Java шпаргалка. Часть 2. Объекты и классы... Основные понятия которые необходимо знать в JAVA в области объектов классов. Инкапсуляция - сокрытие информации, запрещение прямого доступа к п...
Java шпаргалка. Часть 1. Основные конструкции и ос... Данная шпаргалка поможет Вам вспомнить все особенности языка Java. Простейшая программа на Java public class FirstSample { public static ...
Машинное обучение, искусственный интеллект. Python... В этой статье мы разберем основные методы визуализации данных. Скачиваем этот файл с котировками акций Google: GOOGL_data # Отображение ...

Добавить комментарий

Your email address will not be published. Required fields are marked *