Essential Tools for Machine Learning