错误:

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\neuroph-2.93b\neuroph-2.93b\neuroph-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.6\lib\slf4j文件夹下。
// 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) ); } } }

neuroph Perceptron Sample的更多相关文章

  1. Neuroph studio 入门教程

    PERCEPTRON Perceptron is a simple two layer neural network with several neurons in input layer, and ...

  2. Neuroph开发过程

    文章提纲 安装与配置 开发小结 建立项目 配置项目 理解感知机的代码 安装与配置 JDK的安装:建议JRE 1.8以上: Neuroph安装:建议2.94的版本.下载地址 neuroph-core-2 ...

  3. Linux下UPnP sample分析

        一.UPnP简介   UPnP(Universal Plug and Play)技术是一种屏蔽各种数字设备的硬件和操作系统的通信协议.它是一种数字网络中间件技术,建立在TCP/IP.HTTP协 ...

  4. cocos2d-x for android配置 & 运行 Sample on Linux OS

    1.从http://www.cocos2d-x.org/download下载稳定版 比如cocos2d-x-2.2 2.解压cocos2d-x-2.2.zip,比如本文将其解压到 /opt 目录下 3 ...

  5. android studio2.2 的Find Sample Code点击没有反应

    1 . 出现的问题描述:           右键点击Find Sample Code后半天没有反应,然后提示 Samples are currently unavailable for :{**** ...

  6. 感知机(perceptron)概念与实现

    感知机(perceptron) 模型: 简答的说由输入空间(特征空间)到输出空间的如下函数: \[f(x)=sign(w\cdot x+b)\] 称为感知机,其中,\(w\)和\(b\)表示的是感知机 ...

  7. jmeter(四)Sample之http请求

    启动jmeter,建立一个测试计划 这里再次说说怎么安装和启动jmeter吧,昨天下午又被人问到怎样安装和使用,我也是醉了:在我看来,百度能解决百分之八十的问题,特别是基础的问题... 安装:去官网下 ...

  8. jcaptcha sample 制作验证码

    Skip to end of metadata Created by marc antoine garrigue, last modified by Jeremy Waters on Feb 23, ...

  9. 从下往上看--新皮层资料的读后感 第四部分 来自神经元的设计-perceptron 感知机

    搬地方了,其他的部分看知乎:https://zhuanlan.zhihu.com/p/22114481 直到50年代,perceptron被Frank Rosenblatt搞了出来.perceptro ...

随机推荐

  1. mysql 连接查询 join

    本文用到的表 CREATE TABLE `cls` ( `cls_id` ) NOT NULL AUTO_INCREMENT, `name` ) NOT NULL, PRIMARY KEY (`cls ...

  2. LINUX的特殊字符含义

    # 井号 (comments)这几乎是个满场都有的符号,除了先前已经提过的"第一行"#!/bin/bash井号也常出现在一行的开头,或者位于完整指令之后,这类情况表示符号后面的是注 ...

  3. 怎么设置输入的EditText字母自己主动大写

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/t80t90s/article/details/25048917 复于: 2013-09-06 09: ...

  4. rplidar跑cartographer

    一.Cartographer编译 cartographer依赖的大型第三方库很少,编译时基本没有依赖项问题,基本按照官方文档的步骤来,略作修改.使用的环境是Ubuntu16.04+ROS Kineti ...

  5. [py]类和实例方法/内建方法

    内建方法 dir(__builtins__) 类和实例方法对比 class person: def __init__(self, job): self.job = job name = "m ...

  6. web.xml中对post请求的乱码问题解决

    直接在web.xml中添加如下代码: <filter> <filter-name>encodingFilter</filter-name> <filter-c ...

  7. soapUI-Conditional Goto

    1.1.1  Conditional Goto 1.1.1.1 概述 - Conditional Goto Conditional Goto TestStep包含任意数量的XPath/JSONPath ...

  8. 有意思的JSON.parse()、JSON.stringify()

    前言 现在JSON格式在web开发中非常重要,特别是在使用ajax开发项目的过程中,经常需要将后端响应的JSON格式的字符串返回到前端,前端解析成JS对象值(JSON 对象),再对页面进行渲染. 在数 ...

  9. ngxin开启rewrite伪静态

    1.编辑nginx配置文件 vi /usr/local/nginx/conf/nginx.conf #include enable-php.conf; include enable-php-pathi ...

  10. Object-C-属性参数

    assign:默认参数setter 方法不会引起引用计数的变化 retain:setter方法首先释放旧的对象,将旧对象的值赋予输入对象,再提高输入对象的引用计数为1 copy:setter 方法首先 ...