Can a Tensorflow variable be trained using the Tensorflow Keras functional API model? Can a Tensorflow operation be used in the functional API Model?

Little background:

As we know Keras is a model-level library, providing high-level building blocks for developing deep learning models.

The most important thing: Keras API does not handle tensor operations. It needs a well-optimized tensor manipulation library to do so, know as a "backend engine" for Keras.

At this time, Keras has three backend engines available: the TensorFlow backend (Google), the Theano backend, and the CNTK backend (MSFT).

Knowing how to incorporate Tensorflow operations and train Tensorflow variables using the Keras model compile/train would greatly help with this.

The only thing you should ask yourself, is what is the difference between the Keras variable and regular Tensorflow variable.

Happens to be that Keras variable have metadata. So in order to use the TensorFlow variables in Keras you convert them.

Note: A TensorFlow variable scope will have no effect on a Keras layer or model.

Finally variable sharing can be done by initializing the Keras layer (or model).