我有一个数据集,每个数据点都有4个相互关联的图像(每个图像的像素大小不同(。我想分别对它们进行卷积,然后组合4个图像的信息,并将其馈送到1个密集网络。我如何在keras函数API中做到这一点?
我还有其他10个不是图像的功能。我计划将其直接馈送到网络的密集端。
所以我想要的是:
4 independent conv layers
flatten
concatenate
Dense layers
1 Output
如何以这种方式向keras提供输入?
根据您提供的描述,我认为这就是您想要的:
input_im1 = Input(...)
input_im2 = Input(...)
input_im3 = Input(...)
input_im4 = Input(...)
conv_im1 = Conv2D(...)(input_im1)
conv_im2 = Conv2D(...)(input_im2)
conv_im3 = Conv2D(...)(input_im3)
conv_im4 = Conv2D(...)(input_im4)
concat_conv = concatenate([conv_im1,conv_im2,conv_im3,conv_im4])
flatten_conv = Flatten()(concat_conv)
input_feat = Input(...)
concat_conv_feat = concatenate([flatten_conv, input_feat])
output = Dense(...)(concat_conv_feat)
model = Model([input_im1,input_im2,input_im3,input_im4,input_feat], output)
不过,我不知道输入图像的大小和每个卷积层的参数。因此,您可能需要修改上面的代码,以根据您的确切要求进行调整。