我是tensorflow和keras的新手。我有下面的代码,但我不知道为什么当我将1的密度更改为10(Dense(10))时会出错。我认为我应该能够任意更改每一层中的神经元数量。我应该如何更改密集神经元的数量?如果我想添加更多的密层,是否有任何规则规定密层?
model=Sequential()
model.add(Dense(1029, input_dim=29))
model.add(Activation('tanh'))
model.add(Dense(1))
model.add(Activation('sigmoid'))
#odel.add(Dropout (0.2))
sgd=SGD(lr=0.1)
model.compile(loss='binary_crossentropy', optimizer=sgd)
model.fit(input, target, steps_per_epoch=4, epochs=1000)
错误:
ValueError: Error when checking target: expected activation_65 to have shape (10,) but got array with shape (1,)
答案 0 :(得分:0)
我发现了问题,我将在此处发布谁可能会遇到相同问题的信息。原因是根据我的输出,我需要使神经元的最后一层数等于1。我的输入维是1029行和29列,我的目标是1029行。我可以添加任意数量的神经元的另一个密集层。