我想建立一个神经网络来学习一组标准的特征向量。因此,集合是形状(N,100),其中N是样本数。然而,标签集是形状的(Nx18) (例如,每个“标签”是另一个由18个元素组成的数组)。我对keras和神经网络非常陌生,我只知道如何处理一维标签(例如,二进制分类中的0或1)。如何处理多维输出?
谢谢!
发布于 2016-03-30 13:18:26
也许我不完全理解这个问题,但最简单的方法是有一个有18个神经元的输出层。每个神经元输出一个值,即输出为18个值的向量。
一种可能的方法是建立一个带有隐层的前馈神经网络,例如包含100个神经元。为此,您将需要Keras中的密层。
nb_hidden = 100
model = Sequential()
model.add(Dense(input_dim = 100, output_dim = nb_hidden)
model.add(Dense(output_dim = 18, activation = 'softmax')
model.compile(loss='categorical_crossentropy', optimizer='adadelta')考虑改变隐藏层的数量、一般的网络拓扑(例如包含一个Dropout层)和激活函数,直到得到一个好的结果。
https://stackoverflow.com/questions/36293208
复制相似问题