用Java开源项目JOONE实现人工智能编程(二)

2014-11-23 21:51:54 · 作者: · 浏览: 67
个神经原层。下面的代码实现这一点。
input.setMonitor(monitor);
hidden.setMonitor(monitor);
output.setMonitor(monitor);

  就象许多Java对象本身一样,JOONE监视器允许听者可以添加到它上面去。随着训练的进行,JOONE将通知听者有关训练进程的信息。在这个简单的例子中,我们使用:
monitor.addNeuralNetListener(this);
  我们现在必须建立输入触角。如前所述,我们将使用一个FileInputSynapse来读取一个磁盘文件。磁盘文件不是JOONE唯一能够接受的输入种类。JOONE对于不同的输入源具有很强的灵活性。为使JOONE能够接收其它输入类型,你只需创建一个新的触角来接受输入。在本例中,我们将简单地使用FileInputSynapse。FileInputSynapse首先被实例化。
inputStream = new FileInputSynapse();
  然后,必须通知FileInputSynapse要使用哪些列。列表1中显示的文件使用了输入数据的前两列。下面代码建立起前两列用于输入到神经网络。
// 前两列包含输入值
inputStream.setFirstCol(1);
inputStream.setLastCol(2);

  然后,我们必须提供输入文件的名字,这个名字直接来源于用户接口。然后,提供一个编辑控件用于收集输入文件的名字。下面代码为FileInputSynapse设置文件名。
// 这是包含输入数据的文件名
inputStream.setFileName(inputFile.getText());

  如前所述,一个触角仅是一个神经原层之间的数据导管。FileInputSynapse正是这里的数据导管,通过它数据进入到神经网络。为了更容易实现这点,我们必须要把FileInputSynapse加到神经网络的输入层