Gradient Descent from Scratch | AlgoML Prep