Как построить модель Keras TF2.0 для CustomTrainingL oop? - PullRequest
0 голосов
/ 17 апреля 2020

Я пытаюсь использовать model.build(), чтобы увидеть архитектуру моделей, использующих TF2.1.

Пример модели - это простая модель CNN.

class ConvolutionalNeuralNetwork(tf.keras.Model):
  def __init__(self):
    super(ConvolutionalNeuralNetwork, self).__init__()
    self.cnn = None
    self.flat = None
    self.dense = None


  def build(self, input_shape):
    self.cnn = tf.keras.layers.Conv2D(input_shape=input_shape,
                                      filters=12, kernel_size=[3, 3],
                                      padding="same",
                                      activation="relu")
    self.flat = tf.keras.layers.Flatten()
    self.dense = tf.keras.layers.Dense(10) # since Mnist has 10 classes


  def call(self, inputs, **kwargs):
    return self.dense(self.flat(self.cnn(inputs)))

Модель была не построен с сообщением журнала ниже.
ValueError: This model has not yet been built. Build the model first by calling `build()` or calling `fit()` with some data, or specify an `input_shape` argument in the first layer(s) for automatic build..

Фрагмент кода для построения модели.

cnn_model = ConvolutionalNeuralNetwork()
cnn_model.build(input_shape=[None, 28, 28, 1])
cnn_model.summary()

Я знаю, что модель может быть автоматически построена путем подачи фиктивных данных или обучения модели с помощью специального обучения l oop. Но я хочу увидеть архитектуру модели перед тренировкой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...