如何在 Keras 中向 CNN 添加额外信息



我想向CNN添加一些额外的信息,如性别,年龄,向量...

我的CNN有代表尺寸为125x64的语音直方图的输入矩阵。由于他们来自不同的人,我想将这些信息添加到模型中。此外,我想添加一些代表语音音高或能量(从特征提取中获得(的向量 125x1,但我认为将其附加到直方图不是一个好主意。

 model = Sequential()
 model.add(Conv2D(32, (3, 3), padding='valid', strides=1,
             input_shape=input_shape, activation='relu'))
 model.add(MaxPooling2D(pool_size=(4, 3), strides=(1, 3)))
 model.add(Conv2D(32, (1, 3), padding='valid', strides=1,
      input_shape=input_shape, activation='relu'))
 model.add(MaxPooling2D(pool_size=(1, 3), strides=(1, 3)))
 model.add(Flatten())
 model.add(Dense(512, activation='relu'))
 model.add(Dense(512, activation='relu'))
 model.add(Dropout(0.5))
 model.add(Dense(nb_classes))
 model.add(Activation('softmax'))
 model.compile(loss='categorical_crossentropy',
          optimizer='adadelta',
          metrics=['accuracy'])
将数据

添加到直方图中确实没有多大意义。Keras 在他们自己的文档中解释了如何在模型中使用多个输入:https://keras.io/getting-started/functional-api-guide/。段落多输入和多输出模型似乎是您要查找的。

最新更新