java中的多层感知器 [英] Multi layer Perceptron in java
本文介绍了java中的多层感知器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想在java.please中实现MLP,指导我在这个领域的java设施。
I want to implement MLP in java.please guide me about facilities of java in this field.
推荐答案
我会先读一下主题 [ ^ ]。
看看你是否可以在 Java中找到一个例子 [ ^ ]。
使用谷歌搜索东西总是一个好主意[其他搜索引擎可用],这需要我输入更长时间才能找到链接。
I would first read up on the subject[^].
The see if you can find an example in Java[^].
It is always a good idea to search for things using google [other search engines are available], this took me longer to type up than to find the links.
package org.neuroph.samples;
import java.util.Arrays;
import org.neuroph.core。 NeuralNetwork;
import org.neuroph.nnet.MultiLayerPerceptron;
import org.neuroph.core.data.DataSet;
import org.neuroph.core.data.DataSetRow;
import org.neuroph.util.TransferFunctionType;
/ **
*此示例显示如何创建,训练,保存和加载简单的多层感知器
* /
公共类XorMultiLayerPerceptronSample {
public static void main(String [] args){
< br $>
//创建训练集(逻辑XOR函数)
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 [] {0}));
//创建多层感知器
MultiLayerPerceptron myMlPerceptron = new MultiLayerPerceptron(Transf erFunctionType.TANH,2,3,1);
//学习训练集
myMlPerceptron.learn(trainingSet);
//测试感知器
System.out.println(测试经过训练的神经网络);
testNeuralNetwork(myMlPerceptron,trainingSet);
//保存训练有素的神经网络
myMlPerceptron.save(myMlPerceptron.nnet);
//加载保存的神经网络
NeuralNetwork loadedMlPerceptron = NeuralNetwork.createFromFile(myMlPerceptron.nnet);
//测试加载神经网络
System.out.println(测试加载神经网络);
testNeuralNetwork(loadedMlPerceptron,trainingSet);
< br $>
}
public static void testNeuralNetwork(NeuralNetwork nnet,DataSet testSet){
for(DataSetRow dataRow:testSet.getRows()){
nnet.setInput(dataRow.getInput());
nnet.calculate();
d ouble [] networkOutput = nnet.getOutput();
System.out.print(输入:+ Arrays.toString(dataRow.getInput()));
System.out.println(输出:+ Arrays.toString(networkOutput));
}
}
}
package org.neuroph.samples;
import java.util.Arrays;
import org.neuroph.core.NeuralNetwork;
import org.neuroph.nnet.MultiLayerPerceptron;
import org.neuroph.core.data.DataSet;
import org.neuroph.core.data.DataSetRow;
import org.neuroph.util.TransferFunctionType;
/**
* This sample shows how to create, train, save and load simple Multi Layer Perceptron
*/
public class XorMultiLayerPerceptronSample {
public static void main(String[] args) {
// create training set (logical XOR function)
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[]{0}));
// create multi layer perceptron
MultiLayerPerceptron myMlPerceptron = new MultiLayerPerceptron(TransferFunctionType.TANH, 2, 3, 1);
// learn the training set
myMlPerceptron.learn(trainingSet);
// test perceptron
System.out.println("Testing trained neural network");
testNeuralNetwork(myMlPerceptron, trainingSet);
// save trained neural network
myMlPerceptron.save("myMlPerceptron.nnet");
// load saved neural network
NeuralNetwork loadedMlPerceptron = NeuralNetwork.createFromFile("myMlPerceptron.nnet");
// test loaded neural network
System.out.println("Testing loaded neural network");
testNeuralNetwork(loadedMlPerceptron, trainingSet);
}
public static void testNeuralNetwork(NeuralNetwork nnet, DataSet testSet) {
for(DataSetRow dataRow : testSet.getRows()) {
nnet.setInput(dataRow.getInput());
nnet.calculate();
double[ ] networkOutput = nnet.getOutput();
System.out.print("Input: " + Arrays.toString(dataRow.getInput()) );
System.out.println(" Output: " + Arrays.toString(networkOutput) );
}
}
}
这篇关于java中的多层感知器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文