理解令人困惑的感知器输入数据

时间:2015-11-08 19:06:48

标签: machine-learning neural-network perceptron

我有以下数据:

 0 0 0 0 0  0 0
 0 0 0 0 1  0 0
 0 0 0 1 0  0 0
 0 0 0 1 1  0 0
 0 0 1 0 0  0 0
 0 0 1 0 1  0 0
 0 0 1 1 0  0 0
 0 0 1 1 1  1 0
 0 1 0 0 0  0 0
 0 1 0 0 1  0 1
 0 1 0 1 0  0 0
 0 1 0 1 1  1 1
 0 1 1 0 0  0 0
 0 1 1 0 1  1 1
 0 1 1 1 0  1 0
 0 1 1 1 1  1 1
 1 0 0 0 0  0 0
 1 0 0 0 1  0 0
 1 0 0 1 0  0 0
 1 0 0 1 1  1 0
 1 0 1 0 0  0 0
 1 0 1 0 1  1 0
 1 0 1 1 0  1 0
 1 0 1 1 1  1 0
 1 1 0 0 0  0 0
 1 1 0 0 1  1 1
 1 1 0 1 0  1 0
 1 1 0 1 1  1 1
 1 1 1 0 0  1 0
 1 1 1 0 1  1 1
 1 1 1 1 0  1 0
 1 1 1 1 1  1 1

我打算用它作为感知器的输入,即:

实现2层Perzeptron(一个输入层,一个输出层)。

Perzeptron应具有N维二进制输入X,M维二进制输出Y和用于实现阈值的BIAS权重。

(N应小于101,M小于30),在-0.5≤wn之间随机初始化所有权重,m≤+ 0.5

进一步实施使用perzeptron学习规则培训Perzeptron的可能性,其中模式(pX,pY)已从名为PA-A-train.dat的文件中读取(P应小于200) ,并且可以从文件中读取权重wn,m。

事情是 - 我不理解数据 - 看起来空格后面的数字应该是标签,但是 - 如果是这样,为什么有两个?标签不应只有一个吗?

也许有人可以帮助我理解这一点。

1 个答案:

答案 0 :(得分:1)

神经网络可以有任意数量的输出神经元。特别是,当一个没有隐藏层时,训练M输出感知器相当于训练M二进制感知器。因此,您的数据非常简单 - 您有M = 2个输出变量,每个变量都是特定输出神经元的预期值。