我在用TensorFlow2.0搭建一个简单的全连接网络,第一层我设计的是一个DenseFeature,剩下的是三个Dense层,但我运行的时候却提示我AttributeError: 'DenseFeatures' object has no attribute 'shape';
代码如下:
feature_layer = tf.keras.layers.DenseFeatures(one_order_feature_columns)
dense1 = tf.keras.layers.Dense(128, activation='relu')(feature_layer)
dense2 = tf.keras.layers.Dense(128, activation='relu')(dense1)
dense3 = tf.keras.layers.Dense(1, activation='sigmoid')(dense2)
model = tf.keras.Model(inputs=[feature_layer], outputs=dense3)
# model = tf.keras.Sequential([
# tf.keras.layers.DenseFeatures(one_order_feature_columns),
# tf.keras.layers.Dense(128, activation='relu'),
# tf.keras.layers.Dense(128, activation='relu'),
# tf.keras.layers.Dense(1, activation='sigmoid')
# ])
model.compile(optimizer='adam',
loss='binary_crossentropy',
metrics=['accuracy'])
model.fit(train_ds, epochs=5)
我也尝试直接使用Sequential容器来搭建模型(代码中的注释部分),模型能够跑通。但使用函数式API时却不行。我是在哪出错了吗?