Understanding the double descent curve in Machine Learning