How can I get trainable_variables from model subclassing the tf.keras.Model?

Viewed 432

I want to get trainable_variables from model which is created by subclassing tf.keras.Model, but it return [].I know it works when using tf.keras.Sequential.

class MyModel(tf.keras.Model):

    def __init__(self):
        super(MyModel, self).__init__()
        self.dense1 = tf.keras.layers.Dense(4, activation=tf.nn.relu)
        self.dense2 = tf.keras.layers.Dense(5, activation=tf.nn.softmax)
        self.des = tf.constant([[1.,2.]])

    def call(self, inputs):
        x = self.dense1(inputs)
        # y = self.des
        return self.dense2(x)

model = MyModel()
print(model.trainable_variables)  #=>[]

I tried feedding some values to the model but it still returns [].

0 Answers
Related