gpt4 book ai didi

tensorflow - Keras 中的多输入深度学习如何工作?

转载 作者:行者123 更新时间:2023-11-30 08:45:30 24 4
gpt4 key购买 nike

我有一个多输入卷积神经网络模型,它输入来自 2 个数据集的 2 个图像,以给出一个输出,该输出是两个输入的类别。这两个数据集具有相同的类别。我使用了 2 个 vgg16 模型并将它们连接起来对两个图像进行分类。

vgg16_model = keras.applications.vgg16.VGG16()
input_layer1= vgg16_model .input
last_layer1 = vgg16_model.get_layer('fc2').output


vgg16_model2 = keras.applications.vgg16.VGG16()
input_layer2= vgg16_model .input
last_layer2 = vgg16_model.get_layer('fc2').output


con = concatenate([last_layer1, last_layer2]) # merge the outputs of the two models
output_layer = Dense(no_classes, activation='softmax', name='prediction')(con)
multimodal_model1 = Model(inputs=[input_layer1, input_layer2], outputs=[output_layer])

我的问题是:

1- 以下哪种情况代表图像如何进入模型?

一对一

数据库1-img1 + 数据库2-img1

数据库1-img2 + 数据库2-img2

数据库1-img3 + 数据库2-img3

数据库1-img4 + 数据库2-img4

......

多对多

数据库1-img1 + 数据库2-img1

数据库1-img1 + 数据库2-img2

数据库1-img1 + 数据库2-img3

数据库1-img1 + 数据库2-img4

数据库1-img2 + 数据库2-img1

数据库1-img2 + 数据库2-img2

数据库1-img2 + 数据库2-img3

数据库1-img2 + 数据库2-img4

......

2- 一般在深度学习中,同时从两个数据集进入模型的图像是否具有相同的类别(标签)?

最佳答案

  1. 这是一个 1:1 映射,多个输出也应该如此。

当您有一个模型,例如 Model(inputs=[input_layer1, input_layer2],outputs=[output_layer]) 甚至 Model(inputs=[input_layer1, input_layer2],outputs= [output_layer1, output_layer2]) ,您必须为其提供相同形状的输入/输出。
假设另一种情况 - 对于 2 个数据集的每种可能的混合,您将需要有 ds1.shape[0] * ds2.shape[0] 不同的标签,并且需要将它们排序为以某种方式。这实际上并不可行,至少不简单。

2. 并不是说​​相同的图像具有相同的标签,而是两个图像的具有单个标签。

关于tensorflow - Keras 中的多输入深度学习如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53242146/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com