Birden fazla girdili bir model tanımlama
Bazı durumlarda, sequential API istediğin model mimarisini karşılayacak kadar esnek olmayabilir ve bunun yerine functional API kullanman gerekir. Örneğin, farklı mimarilere sahip iki modeli birlikte eğitmek istiyorsan, bunu yapmak için functional API'yi kullanmalısın. Bu egzersizde bunun nasıl yapılacağını göreceğiz. Ayrıca ortak modelin mimarisini incelemek için .summary() yöntemini kullanacağız.
keras'ın senin için tensorflow içinden içe aktarıldığını unutma. Ek olarak, birinci ve ikinci modellerin girdi katmanları sırasıyla m1_inputs ve m2_inputs olarak tanımlandı. İki modelin de aynı mimariye sahip olduğuna, ancak birinin ilk katmanda sigmoid etkinleştirme, diğerinin ise relu kullandığına dikkat et.
Bu egzersiz
Python ile TensorFlow’a Giriş
kursunun bir parçasıdırEgzersiz talimatları
- Model 1'in girdi katmanını ilk katmanına ve model 1'in ilk katmanını ikinci katmanına geçir.
- Model 2'nin girdi katmanını ilk katmanına ve model 2'nin ilk katmanını ikinci katmanına geçir.
- Model 1 ve model 2'nin ikinci katmanlarını birleştirmek için
add()işlemini kullan. - Functional model tanımını tamamla.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
# For model 1, pass the input layer to layer 1 and layer 1 to layer 2
m1_layer1 = keras.layers.Dense(12, activation='sigmoid')(____)
m1_layer2 = keras.layers.Dense(4, activation='softmax')(____)
# For model 2, pass the input layer to layer 1 and layer 1 to layer 2
m2_layer1 = keras.layers.Dense(12, activation='relu')(____)
m2_layer2 = keras.layers.Dense(4, activation='softmax')(____)
# Merge model outputs and define a functional model
merged = keras.layers.add([m1_layer2, ____])
model = keras.Model(inputs=[____, m2_inputs], outputs=____)
# Print a model summary
print(model.summary())