day-78
def build_mlp(input_shape, output_units=10, num_neurons=[512, 256, 128]):
input_layer = keras.layers.Input(input_shape)
for i, n_units in enumerate(num_neurons):
if i == 0:
x = keras.layers.Dense(units=n_units, activation="relu", name="hidden_layer"+str(i+1))(input_layer)
else:
x = keras.layers.Dense(units=n_units, activation="relu", name="hidden_layer"+str(i+1))(x)
out = keras.layers.Dense(units=output_units, activation="softmax", name="output")(x)
model = keras.models.Model(inputs=[input_layer], outputs=[out])
return model
老師請問一下 if i == 0 後面接input_layer 是輸入層的意思嗎
為甚麼輸入層不像輸出層一樣直接定義呢
回答列表
-
2019/07/23 上午 11:55Jimmy贊同數:0不贊同數:0留言數:0
Hi 琮寶!
建立一個 Model 一定要有 input_layer (Keras.layers.Input) ,這邊其實也可以寫成 x = keras.layers.Input,這樣就不用特別去給定 i == 0 的時候要特別去接 input_layer,出題教練應該是希望讓學員可以更清楚看到 input_layer 的位置而已