title: Why are variables defined with 'self' automatically given a ListWrapper() while inheriting from tf.keras.Model?
body: <p>I am not familiar with <code>ListWrapper()</code>, but it is being applied to all list variables created with <code>self</code> when my class inherits from <code>tf.keras.Model</code>. 
  <a href="https://www.tensorflow.org/api_docs/python/tf/keras/models/Model" rel="nofollow noreferrer">https://www.tensorflow.org/api_docs/python/tf/keras/models/Model</a></p>
  
  <p>This is bad because it is causing an <code>IndexError</code> when I use it in certain functions, or even by just passing it through my Tensorflow model. (I am using eager execution)</p>
  
  <p>A small reproduction of the problem can be seen with this code:</p>
  
  <pre><code>import tensorflow as tf
  
  class my_class(tf.keras.Model):
  
      def __init__(self):
          super(my_class, self).__init__()
  
          self.x = [0]
          print(self.x)
  
  model = my_class()
  </code></pre>
  
  <p>Output:</p>
  
  <pre><code>ListWrapper([0])
  </code></pre>
  
  <p>Switching the inheritance to be from <code>object</code> solves the issue, which is how I know its <code>tf.keras.Model</code> that is causing this.</p>
  
  <p>I tried looking it up but can't find anything on this. Any tips? Thanks!</p>