title: Saving Keras model - UserWarning: Layer XX was passed non-serializable keyword arguments
body: <p>I've just trained and finished my first sequence to sequence model with Keras and now wants to save it so I later can load the model and use it (without having to train it every time). When saving it I do:</p>
  
  <pre><code>model.save_weights('models/model_weights.h5')
  with open('models/model_architecture.json', 'w') as f:
      f.write(model.to_json())
  </code></pre>
  
  <p>But, doing this produces a bunch of user warnings (more or less one for every layer) of the type:</p>
  
  <pre><code>path/to/site-packages/keras/engine/topology.py:2379: UserWarning: Layer lstm_15 was 
  passed non-serializable keyword arguments: {'initial_state': [&lt;tf.Tensor 's0_7:0' 
  shape=(?, 64) dtype=float32&gt;, &lt;tf.Tensor 'c0_7:0' shape=(?, 64) dtype=float32&gt;]}. 
  They will not be included in the serialized model (and thus will be missing at 
  deserialization time).
  str(node.arguments) + '. They will not be included '
  </code></pre>
  
  <p>Even though just warnings this really puts off the model and accuracy after loading the model. </p>
  
  <p>Everything works perfectly fine right after training (making good predictions, etc.), it's only the saving part that fails. What can I do about this? Anyone else experienced the same thing and solved it somehow? Is there a workaround? May it be any issues with the names I have given the different layers? </p>