Pro Machine Learning Algorithms: A Hands-On Approach to Implementing Algorithms