Explain in detail the concept of deep double descent in the context of training machine learning models. Describe how it is related to gradient descent and early stopping.