📜  PyBrain-使用数据集

📅  最后修改于: 2020-12-10 05:14:22             🧑  作者: Mango


数据集是要提供给测试,验证和训练网络的输入数据。使用的数据集类型取决于我们将要与机器学习一起完成的任务。在本章中,我们将研究以下内容-

  • 创建数据集
  • 将数据添加到数据集

我们将首先学习如何创建数据集并使用给定的输入测试数据集。

创建数据集

要创建数据集,我们需要使用pybrain数据包: pybrain.datasets

Pybrain支持数据集类,例如SupervisedDataset ,SequentialDataset,ClassificationDataSet。我们将使用SupervisedDataset来创建数据集。要使用的数据集取决于用户尝试实现的机器学习任务.SupervisedDataset是最简单的数据集,我们将在此处使用相同的数据集。

SupervisedDataset数据集需要参数输入和目标。考虑一个XOR真值表,如下所示-

A B A XOR B
0 0 0
0 1 1
1 0 1
1 1 0

给定的输入就像一个二维数组,我们得到1个输出。因此,这里的输入变成大小,而目标变成输出,即1。因此,将用于我们的数据集的输入为2,1。

createdataset.py

from pybrain.datasets import SupervisedDataSet
sds = SupervisedDataSet(2, 1)
print(sds)

这是当我们执行以上代码Python createdataset.py时得到的-

C:\pybrain\pybrain\src>python createdataset.py
input: dim(0, 2)
[]
target: dim(0, 1)
[]

它显示大小为2的输入和大小为1的目标,如上所示。

将数据添加到数据集

现在让我们将样本数据添加到数据集中。

createdataset.py

from pybrain.datasets import SupervisedDataSet
sds = SupervisedDataSet(2, 1)
xorModel = [
   [(0,0), (0,)],
   [(0,1), (1,)],
   [(1,0), (1,)],
   [(1,1), (0,)],
]
for input, target in xorModel:
sds.addSample(input, target)
print("Input is:")
print(sds['input'])
print("\nTarget is:")
print(sds['target'])

我们创建了一个XORModel数组,如下所示-

xorModel = [
   [(0,0), (0,)],
   [(0,1), (1,)],
   [(1,0), (1,)],
   [(1,1), (0,)],
]

要将数据添加到数据集中,我们使用addSample()方法来接收输入和目标。

要将数据添加到addSample,我们将遍历xorModel数组,如下所示-

for input, target in xorModel:
   sds.addSample(input, target)

执行后,以下是我们得到的输出-

Python createdataset.py

C:\pybrain\pybrain\src>python createdataset.py
Input is:
[[0. 0.]
[0. 1.]
[1. 0.]
[1. 1.]]
Target is:
[[0.]
[1.]
[1.]
[0.]]

您可以简单地使用输入和目标索引从创建的数据集中获取输入和目标详细信息,如下所示:

print(sds['input'])
print(sds[‘target’])