我有以下数据:
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的可能性,该规则具有从名为PA-A-train.dat(P小于200)的文件中读取的模式(pX,pY),以及在文件的权重wn,m中。
问题是-我不明白数据-看起来空格后面的数字应该被当作标签,但是-如果是这样,为什么会有两个?标签不应该只有一个吗?
也许有人可以帮助我理解这一点。
最佳答案
神经网络可以具有任意数量的输出神经元。特别是,当一个人没有隐藏层时,训练M输出感知器等效于训练M个二进制感知器。因此,您的数据非常简单-您有M = 2个输出变量,每个变量都是特定输出神经元上的期望值。
关于machine-learning - 使感知器输入数据困惑,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33597836/