zoukankan      html  css  js  c++  java
  • neuroph Perceptron Sample

    错误:

    Exception in thread "main" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
        at org.neuroph.core.NeuralNetwork.<init>(NeuralNetwork.java:106)
        at org.neuroph.nnet.Perceptron.<init>(Perceptron.java:56)
        at PerceptronSample.main(PerceptronSample.java:24)
    Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory
        at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
        ... 3 more


    解决方法:

    https://www.slf4j.org/download.html

    下载 slf4j-1.7.24.zip 并且解压;

    引用以下jar:

    slf4j-api-1.7.24.jar

    slf4j-log4j12-1.7.24.jar

     =========================

    错误:

    Caused by: java.lang.ClassNotFoundException: org.apache.log4j.Level
        at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:358)

    解决方法:

    http://logging.apache.org/log4j/1.2/download.html

    http://www.apache.org/dyn/closer.cgi/logging/log4j/1.2.17/log4j-1.2.17.zip

    下载 log4j-1.2.17.zip

    解压

    引用 log4j-1.2.17.jar

    ===========================

    跑 neuroph 需要引用 neuroph-core-2.93.jar ,并且引用以上的几个jar。

    // require java 1.8
    // jar:  D:Neuroph
    europh-2.93b
    europh-2.93b
    europh-core-2.93.jar
    // java.lang.ClassNotFoundException: org.slf4j.LoggerFactory
    // 这种情况,一般是在lib包下缺少两个jar文件,这两个jar文件是:slf4j-api-1.5.0和slf4j-log4j12-1.5.0,他们的位置在:
    // spring-framework-2.5.6libslf4j文件夹下。
    // https://www.slf4j.org/
    
    
    import java.util.Arrays;
    import org.neuroph.core.NeuralNetwork;
    import org.neuroph.nnet.Perceptron;
    import org.neuroph.core.data.DataSet;
    import org.neuroph.core.data.DataSetRow;
    
    /**
    * This sample shows how to create, train, save and load simple Perceptron neural network
    */
    public class PerceptronSample {
    
        public static void main(String args[]) {
    
            // create training set (logical AND 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[]{0}));
            trainingSet.addRow(new DataSetRow(new double[]{1, 0}, new double[]{0}));
            trainingSet.addRow(new DataSetRow(new double[]{1, 1}, new double[]{1}));
    
            // create perceptron neural network
            NeuralNetwork myPerceptron = new Perceptron(2, 1);
    
            // learn the training set
            myPerceptron.learn(trainingSet);
    
            // test perceptron
            System.out.println("Testing trained perceptron");
            testNeuralNetwork(myPerceptron, trainingSet);
    
            // save trained perceptron
            myPerceptron.save("mySamplePerceptron.nnet");
    
            // load saved neural network
            NeuralNetwork loadedPerceptron = NeuralNetwork.createFromFile("mySamplePerceptron.nnet");
    
            // test loaded neural network
            System.out.println("Testing loaded perceptron");
            testNeuralNetwork(loadedPerceptron, trainingSet);
    
        }
    
        public static void testNeuralNetwork(NeuralNetwork nnet, DataSet tset) {
    
            for(DataSetRow dataRow : tset.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) );
    
            }
    
        }
    
    }
  • 相关阅读:
    JUC------03
    const、define 和 static 的区别
    Mac Catalina 下 gdb codesign问题解决
    k8s 辨析 port、NodePort、targetPort、containerPort 区别
    centos7.8 安装部署 k8s 集群
    【小白学PyTorch】21 Keras的API详解(下)池化、Normalization层
    【小白学PyTorch】21 Keras的API详解(上)卷积、激活、初始化、正则
    【小白学PyTorch】20 TF2的eager模式与求导
    【小白学PyTorch】19 TF2模型的存储与载入
    【小白学PyTorch】18 TF2构建自定义模型
  • 原文地址:https://www.cnblogs.com/emanlee/p/6561684.html
Copyright © 2011-2022 走看看