A mini-project that's made for learning purpose. It is a simulation of linear regression using both gradient descent method and the direct mathematical formula.
I started learning ML recently, and I have been loving it this far. I decided to implement the gradient descent algorithm in python.
Now gradient descent has little use case in terms of linear regression, because the function to fit the dataset is just a straight line. One can derive a formula using calculus and find the optimal line in just one single calculation, which i have done in one of the programs in this project, however I still think making this project was a good idea because it helped me understand how gradient descent works. I still am no professional but I now feel like I have understood more about how changing different hyperparameters affect the loss curve/end result.
I also decided to make it object oriented, like how it is in sklearn. This was a good decision as it helped me get more familiar with OOP, teaching me how easy it is to work with "global" variables (in this context, shared by the same class).