Probabilistic Deep Learning: With Python, Keras and Tensorflow Probability