# <center><i class="fa fa-edit"></i> Keras </center>
###### tags: `Internship`
:::info
**Goal:**
- [x] Keras
- [x] Keras v TensorFlow
**Resources:**
- [Python TensorFlow Tutorial](https://adventuresinmachinelearning.com/python-tensorflow-tutorial/)
- [LSTM Implementation in Python/Numpy](https://gist.github.com/tmatha/f1c7082acdc9af21aade33b98687f2c6)
- [LSTM Implementation in TensorFlow eager execution](https://gist.github.com/tmatha/905ae0c0d304119851d7432e5b359330)
:::
## Keras
- **Keras** is a high-level API that is built on top of TensorFlow. It is extremely user-friendly and comparatively easier than TensorFlow
So, after read those informations, we come up with these questions:
1. If **Keras** is built on top of TF, what’s **the difference** between the two then?
2. If **Keras** is **more user-friendly**, why should I ever use Tensorflow for building deep learning models?
### Difference between Keras and tensorflow
- Definition
- **TensorFlow** is an open-sourced library that’s available on GitHub
- **Keras** is a high-level library that’s built on top of Theano or TensorFlow
- Key point
- The development of **Keras** is to facilitate experimentations by fast prototyping
- **Keras** was developed with the objective of allowing people to write their own scripts without having to learn the backend in detail
- Developers can use **Keras** to quickly build neural networks without worrying about the mathematical aspects of tensor algebra, numerical techniques, and optimization methods
- But **Keras** won’t work if you need to make low-level changes to your model. therefore you need **tensorflow**