我的卷积网络旨在对数据模式进行分类。我向我的CNN提供2D矩阵以获得相关的模式类(如果有的话)。我的分类器识别出4种模式。
数据:
每个数据样本都是来自某个序列图表的快照。这个想法受到this paper的启发。数据样本是二维数据带,窄矩阵。
问题:
CNN以高精度对图案进行分类。 但是,有些模式与4个类中的一个类非常相似,但这些模式不属于任何类。
可以选择使用细粒度模型或将阈值提高到最高可能值。但是,这些选项不会显着提高模型的准确性。类似的模式仍然主要归类为有效。我通过使用更多数据扩展矩阵来增加数据,这些数据也不能很好地工作。肉眼可以看到相似模式和有效模式之间的差异。似乎CNN无法看到人眼明显的微妙差异。
您建议尝试让模型看到这些差异?
谢谢! 这些是最后一层。其余部分由conv和poooling图层组成
model.add(Dense(output_classes,
kernel_regularizer=regularizers.l2(regularization),
kernel_initializer=kernel_initializer,
bias_regularizer=regularizers.l2(regularization)))
model.add(BatchNormalization())
model.add(Activation('softmax'))
adam = optimizers.Adam(lr=0.001,
beta_1=0.9,
beta_2=0.999,
epsilon=1e-08,
decay=0.0)
print('Compiling the model...')
model.compile(optimizer=adam,
loss='categorical_crossentropy', metrics=['accuracy'])
model.summary()