title: Rename Keras tensor name for loss function
body: <p>Are there simple renaming for keras tensor? I needs it for giving tensor more appropriate name in certain context. </p>
  
  <p>When i compile model that has multiple output or input, the model needs the name of the input or output tensor. For example, below model needs name of 'advc_out_tn' and 'atoz.output'. </p>
  
  <pre><code>advc_out_tn = self.advc_model(atoz.output)
  
  self.advc_atoz_model = Model(input=atoz.input, output=[advc_out_tn, atoz.output])
  self.advc_atoz_model.compile(optimizer='adam', loss="binary_crossentropy", loss_weights={"advc_out_tn":1.0, "atoz_out_tn":1.0})
  </code></pre>
  
  <p>But it gives me error, because They are not their real name. </p>
  
  <pre><code>ValueError: Unknown entry in loss_weights dictionary: "atoz_out_tn". Only expected the following keys: ['model_2', 'concat_decoded_img']
  </code></pre>
  
  <p>But the real name of the tensors are somewhat clumsy. Especially if i use given model(in this case, atoz) and access their output tensor by '.out', it gives last layer name('concat_decoded_img'), not the name of the model. </p>
  
  <p>How can i solve this?</p>