title: Keras saving weights of individual layers instead of a model
body: <p>I'm currently trying to create multiple models that will reuse certain layers, including their weights.
  I've achieved this by creating a list table that initializes these layers, then call them when creating each individual models.</p>
  
  <pre><code>column = []
  column.append(Conv2D(self.out_filters, (3, 3), padding='same', kernel_initializer='he_normal', activation='relu'))
  column.append(Conv2D(self.out_filters, (5, 5), padding='same', kernel_initializer='he_normal', activation='relu'))
  </code></pre>
  
  <p>then when creating models</p>
  
  <pre><code>layer = column[0](input)
  </code></pre>
  
  <p>Now my question is, how do I save the weights of all the layers in the list?  As far as I know, keras' save function only saves entire models that have been properly built.</p>
  
  <p><strong>Edit:</strong> Just to clarify, I want to save the "column" list, and not the final models.  I am randomly generating model structures while using the layers stored inside "column".  So 2 models may have different architectures, but they have weights shared (training on one model will also affect the weights of the other model). </p>