test.java

来自「利用Java实现的神经网络工具箱」· Java 代码 · 共 123 行

JAVA
123
字号
/* * Created on 12/10/2004 * * TODO To change the template for this generated file go to * Window - Preferences - Java - Code Generation - Code and Comments */package neuralnetworktoolkit.tests;import neuralnetworktoolkit.*;import neuralnetworktoolkit.datamanager.DataLoaderException;import neuralnetworktoolkit.datamanager.textfilemanager.LoadFromFileManager;import neuralnetworktoolkit.methods.gradientbased.backpropagation.*;import neuralnetworktoolkit.methods.gradientbased.quasinewton.lm.*;import neuralnetworktoolkit.validation.ValidationStatistics;/** * @author iver * * TODO To change the template for this generated type comment go to * Window - Preferences - Java - Code Generation - Code and Comments */public class Test {	public static void main(String[] args) {				StatisticalResults statistics;		ValidationStatistics validationStatistics;		LoadFromFileManager lf = new LoadFromFileManager();				System.out.println("Teste iniciado!");				NetworkController nc = new NetworkController();				try {			int[] parameters = {4, 10, 1};					String[] functions = {"Tanh", "Tanh"};						String initialization = "NguyenWidrow";			nc.createNeuralNetwork(parameters, initialization, functions);					nc.setNormalization("Linear", NetworkController.FULLNORMALIZER);			//nc.setNormalization("ZeroMeanAndUnitStandardDeviation", NetworkController.FULLNORMALIZER);									double[][] data = null;			try {				//data = lf.loadData("/home/iver/workspace/NeuralNetworkToolkit/teste.txt", ",");				data = lf.loadData("/home/rodrigo/a.txt", "^");				nc.setTrainingData(data);			} catch (DataLoaderException e2) {				e2.printStackTrace();			}									int[] index = {0};			nc.setOutputIndex(index);			//nc.splitDataValues();										//nc.setTrainingMethod("gradientbased.quasinewton.lm.LevenbergMarquardt");			//nc.setTrainingMethod("gradientbased.quasinewton.lm.LMAM");			nc.setTrainingMethod("gradientbased.quasinewton.lm.OLMAM");			//nc.setTrainingMethod("gradientbased.quasinewton.gaussnewton.GaussNewton");			//nc.setTrainingMethod("gradientbased.backpropagation.OnLineBackPropagation");            //nc.setTrainingMethod("gradientbased.backpropagation.BatchAdaptiveLearningRateMomentumBackPropagation");			//nc.setTrainingMethod("gradientbased.backpropagation.OnLineMomentumBackPropagation");							LevenbergMarquardtParameters trainParam = new LevenbergMarquardtParameters();			//LMAMParameters trainParam = new LMAMParameters();			//trainParam.setDeltaP(.5);			//trainParam.setEpsilon(.03);			//BackPropagationParameters trainParam = new BackPropagationParameters();			trainParam.setError(.000000000000000000000000005);			trainParam.setLmKind(LevenbergMarquardtModel.INCOMPLETE_LM);			trainParam.setMaxIterations(200);			//trainParam.setLearningRate(5);			//trainParam.setMaxEpochs(3000);			//trainParam.setAlpha(1.1);						statistics = nc.trainNeuralNetwork(trainParam);						//System.out.println("N??mero de ??pocas: " + statistics.getNumberOfEpochs());			System.out.println("N??mero de itera????es: " + statistics.getNumberIterations());			System.out.println("Erro do treinamento: " + statistics.getError());			System.out.println("Tempo de treinamento: " + statistics.getTrainingTime());			/*										try {				//data = lf.loadData("/home/iver/workspace/NeuralNetworkToolkit/iteste.txt", ",");				data = lf.loadData("c:\\a.txt", ",");			} catch (DataLoaderException e1) {				e1.printStackTrace();			}			nc.setValidationData(data);			nc.splitDataValues();			nc.validateNetwork();			*/			try {				//data = lf.loadData("/home/iver/workspace/NeuralNetworkToolkit/jteste.txt", ",");				data = lf.loadData("/home/rodrigo/a.txt", "^");			} catch (DataLoaderException e3) {				e3.printStackTrace();			}			nc.setInferenceData(data);			nc.splitDataValues();			nc.infereWithNetwork();						//validationStatistics = nc.validateNetwork("CrossValidation", trainParam);						//System.out.println("Erro valida????o: " + validationStatistics.getTotalError());													} catch (NetworkControllerException e) {			e.printStackTrace();		}				System.out.println("Teste finalizado!");					}}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?