Я использую keras api для построения модели в tenorflow 2.0.Тем не менее, я хотел бы нормализовать свой вклад.Поэтому я хочу использовать tf.image.per_image_standardization
.Вот мой код:
inputs = k.Input(shape=(130, 267, 3))
inputs_normalized = tf.image.per_image_standardization(inputs)
layer = inputs_normalized
layer = k.layers.Conv2D(32, (3, 3), activation='relu')(layer)
layer = k.layers.MaxPooling2D(2, 2)(layer)
layer = k.layers.Conv2D(64, (3, 3), activation='relu')(layer)
layer = k.layers.MaxPooling2D(2, 2)(layer)
layer = k.layers.Conv2D(64, (3, 3), activation='relu')(layer)
layer = k.layers.MaxPooling2D(2, 2)(layer)
layer = k.layers.Conv2D(64, (3, 3), activation='relu')(layer)
layer = k.layers.Flatten()(layer)
layer = k.layers.Dense(64, activation='relu')
outputs = k.layers.Dense(5, activation='softmax')
model = k.Model(inputs=inputs, outputs=outputs, name="custom model")
Однако я получил следующую ошибку:
OperatorNotAllowedInGraphError: using a `tf.Tensor` as a Python `bool` is not allowed in Graph execution. Use Eager execution or decorate this function with @tf.function.
Поэтому я хотел бы знать, почему я не могу использовать tf.image.per_image_standardization(inputs)
.
Любая помощь очень ценится!