简体   繁体   English

使用 VGG19 定制 CNN

[英]Custom made CNN using VGG19

i'm currently trying to create a custom made CNN using the already trained VGG19 convolutional layers and then adding my own dense layers which i plan to train.我目前正在尝试使用已经训练过的 VGG19 卷积层创建一个定制的 CNN,然后添加我自己计划训练的密集层。 the network has a question branch and an answer branch and ultimately has to decide if the answer has the same content as the question.网络有一个问题分支和一个答案分支,最终必须决定答案是否与问题的内容相同。

i'm getting:我越来越:

    AttributeError: 'Tensor' object has no attribute 'input'

here's the code:这是代码:

initial_model = VGG19()

q_input = Model(initial_model.input, initial_model.layers[-layers_to_omit].output)
a_input = Model(initial_model.input, initial_model.layers[-layers_to_omit].output)

q_output = tf.keras.layers.Flatten()(q_input.output)
a_output = tf.keras.layers.Flatten()(a_input.output)

q_model = Model(initial_model.input, q_output)
a_model = Model(initial_model.input, a_output)
print(q_model.summary())
# combine the output of the two branches
combined = concatenate([q_model.output, a_model.output])

z = Dense(64, activation="relu")(combined)
z = Dense(32, activation="relu")(z)
z = Dense(64, activation="relu")(z)
z = Dense(1, activation="linear")(z)

# our model will accept the inputs of the two branches and
# then output a single value
model = Model(inputs=[q_model.input, a_output.input], outputs=z)

I saw some people had problems with Add but since i dont use it, i'm kinda lost.我看到有些人在使用 Add 时遇到了问题,但由于我不使用它,我有点迷路了。

Thanks for your help!谢谢你的帮助!

Changing a_output.input to a_model.input should fix that error.a_output.input更改为a_model.input应该可以修复该错误。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM