NumPy and Gradient Descent
I'm currently diving deep into the fundamentals of Machine Learning, starting from the ground up with NumPy. Instead of just calling framework APIs, I'm taking the time to build a solid, first-principles intuition for how these systems actually work under the hood.
Vectorization is Magic
One of the biggest 'aha' moments so far has been understanding vectorization. Translating nested loops into vectorized matrix operations isn't just about writing less code—it's about fundamentally changing how you structure problems so that hardware can parallelize the execution. It makes everything incredibly fast.
Visualizing the Gradient
I'm also spending a lot of time working through Gradient Descent. It's fascinating to mathematically see how calculating the partial derivatives of a loss function allows a model to 'step' toward the optimal weights. It transforms learning from something that feels like magic into a clear, iterative optimization problem.