In Part III of this series, we cover the fundamentals of machine learning, focusing on:validation methodology (reprint) nearest neighbor, k-means, support vector machines, principal component analysis tree-based methods: decision trees, bagging, random forest, boosting, XGBoost artificial neural networks and deep learning reinforcement learning The focus is on algorithmic development and programming. We code each technique from scratch in Python, using an object-oriented approach.