Scalable and Distributed Machine Learning and Deep Learning Patterns