Daten durchlaufen Layer nicht
Verfasst: Sonntag 24. Juli 2022, 21:23
Ich habe ML Model mit Hilfe einer Fachliteratur erstellen können. Dabei durchlaufen meine Input Daten wohl nur den ersten Layer mit dem namen 'block_1_expand_relu' . Ich verstehe den grund dafür jedoch nicht.
Frage 2: Außerdem finde ich das attribut "output" (siehe: code unten) bei tf.keras.applications.mobilenet_v2.MobileNetV2 und tf.keras.layers.Layer und tf.keras.Model nicht
ein versuch von mir wäre der nachfolgende code. Dieser funktioniert jedoch auch nicht. Die fehlermeldung dazu ist : TypeError: 'KerasTensor' object is not callable
Frage 2: Außerdem finde ich das attribut "output" (siehe: code unten) bei tf.keras.applications.mobilenet_v2.MobileNetV2 und tf.keras.layers.Layer und tf.keras.Model nicht
Code: Alles auswählen
base_model = tf.keras.applications.MobileNetV2(input_shape=[128, 128, 3], include_top=False)
layer_names = [
'block_1_expand_relu', # 64x64
'block_3_expand_relu', # 32x32
'block_6_expand_relu', # 16x16
'block_13_expand_relu', # 8x8
'block_16_project', # 4x4
]
# FRAGE2: ich finde "output" attribut nicht?
alle_layer = [base_model.get_layer(name).output for name in layer_names]
down_stack = tf.keras.Model(inputs=base_model.input, outputs=alle_layer)
# test daten erstellen
data = tf.ones(shape = [10,128,128,3])
out_put = down_stack(data)
#--> shape des outputs ist: shape=(10, 64, 64, 96) ; Müsste eigentlich (10,4,4, ) sein
Code: Alles auswählen
input_layer = base_model.input
layer1 = alle_layer[0](input_layer)
layer2 = alle_layer[1](layer1)
layer3 = alle_layer[2](layer2)
layer4 = alle_layer[3](layer3)
output_layer = alle_layer[4](layer4)
model = tf.keras.Model(inputs=[input_layer], outputs=[output_layer])
out_put = model(data)
out_put