我在实现Keras复杂卷积函数方面遇到问题,该函数由Jesper Dramsch和他的小组如下开发:https://github.com/JesperDramsch/keras-complex。他提供了初始设置以及如何使用模型,但指导非常有限。有没有人经历过使用此卷积函数处理来自keras张量流的复数值输入?请分享一个我知道如何使用它的示例吗?
我的代码的一部分如下:
visible = Input(shape=(class_in,feature_num,1))
conv1 = ComplexConv2D(32, kernel_size=(3,3),
activation='relu',padding='same',data_format='channels_last')(visible)
pool1 = MaxPooling2D(pool_size=(2, 2))(conv1)
conv2 = ComplexConv2D(64, kernel_size=(3,3),
activation='relu',padding='same',data_format='channels_last')(pool1)
pool2 = MaxPooling2D(pool_size=(2,2))(conv2)
flat = Flatten()(pool2)
hidden1 = Dense(128, activation='relu')(flat)
output = Dense(1, activation='sigmoid')(hidden1)
model = Model(inputs=visible, outputs=output)
简要说明表明,我们可以按如下方式使用与Conv2D相同的ComplexConv2D:https://keras-complex.readthedocs.io/api/complexnn.conv.html 但是,我总是会收到错误消息,
输入0与图层complex_conv2d_1不兼容:预期输入形状的轴-1的值为0,但形状为(无,32、32、1)
请帮助我。