An in-depth guide to supervised machine learning classification