首页 课程 师资 教程 报名

Java神经网络介绍

  • 2022-06-27 16:13:03
  • 1134次 动力节点

简单神经网络是一个 Java 项目,允许用户轻松创建异步简单神经网络。

该项目可用于根据初始学习预测输出。

特征

使用结果实体回调

可定制的神经元数量

从外部文件读取数据

简单的预测器使用

用法

这是默认配置的简单用法:

1.首先,加载输入和输出数据。您可以从外部文本文件中读取它:

float[][] x = DataUtils.readInputsFromFile("data/x.txt"); int[] t = DataUtils.readOutputsFromFile("data/t.txt"); 

2.

Instantiate new NeuralNetwork and create a new callback to receive response:java NeuralNetwork neuralNetwork = new NeuralNetwork(x, t, new INeuralNetworkCallback() { @Override public void success(Result result) { }
        @Override
        public void failure(Error error) {
        }
    });
```

3.使用来自成功响应的 Result 实体预测一个值:

@Override
public void success(Result result) {
    float[] valueToPredict = new float[] {-1.2f, 0.796f};
    System.out.println("Predicted result: " + result.predictValue(valueToPredict));
}

4.最后,运行神经网络的学习:

神经网络.startLearning(); ```

完整示例:

        float[][] x = DataUtils.readInputsFromFile("data/x.txt");
        int[] t = DataUtils.readOutputsFromFile("data/t.txt");
        NeuralNetwork neuralNetwork = new NeuralNetwork(x, t, new INeuralNetworkCallback() {
            @Override
            public void success(Result result) {
                float[] valueToPredict = new float[] {-0.205f, 0.780f};
                System.out.println("Success percentage: " + result.getSuccessPercentage());
                System.out.println("Predicted result: " + result.predictValue(valueToPredict));
            }
            @Override
            public void failure(Error error) {
                System.out.println("Error: " + error.getDescription());
            }
        });
        neuralNetwork.startLearning();

输出:

Success percentage: 88.4
Predicted result: 1

您可以自定义一些值作为神经元的数量、bucle 迭代限制、传递函数和结果解析器。

例子

该项目有一个包含真实数据的示例,其中包含 250 名患者的列表,其中两个分析结果作为输入,0 或 1(取决于是否患有疾病)作为输出:

         Inputs                         Output
------------------------        --------------------
 Result 1       Result 2                Disease
 -----------------------        --------------------
-0.5982         0.9870                     1     
-0.2019         0.6210                     1
 0.1797         0.4518                     0
-0.0982         0.5876                     1
  ...             ...                     ...

使用神经网络中的这些数据,该项目能够以88%的最小成功率预测不在数据列表中的患者的输出(疾病结果)。

执照

Copyright 2014 José Luis Martín
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
   http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

 

选你想看

你适合学Java吗?4大专业测评方法

代码逻辑 吸收能力 技术学习能力 综合素质

先测评确定适合在学习

在线申请免费测试名额
价值1998元实验班免费学
姓名
手机
提交