Partial re-implementation of sklearn.linear_model.LogisticRegression
(using only numpy) to illustrate the use of variance reduction methods in stochastic optimization.
-
A small report on the intuition behind stochastic variance reduction in optimisation & how to use the code.
-
Report.ipynb
: same as the html report, in case you want to reproduce the results -
Implementation broken down into:
-
linear_model.py
-
solvers.py
-
Helper functions:
datasets.py
,visuals.py
,tools.py
-
Student performance dataset:
data/
-
To get started with the Report.ipynb
notebook, create an environment using the dependencies file:
conda env create --file dependencies.yml
Then launch jupyter-notebook
and select Kernel -> Change kernel -> Python [conda env:vrm]