Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/selimchraibi/variance-reduction-methods
Partial re-implementation of sklearn.linear_model.LogisticRegression
https://github.com/selimchraibi/variance-reduction-methods
Last synced: 13 days ago
JSON representation
Partial re-implementation of sklearn.linear_model.LogisticRegression
- Host: GitHub
- URL: https://github.com/selimchraibi/variance-reduction-methods
- Owner: SelimChraibi
- Created: 2019-01-19T13:16:58.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2023-10-04T14:41:07.000Z (about 1 year ago)
- Last Synced: 2023-10-05T06:49:46.428Z (about 1 year ago)
- Language: Jupyter Notebook
- Size: 274 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Variance Reduction Methods
Partial re-implementation of [`sklearn.linear_model.LogisticRegression`](https://scikit-learn.org/stable/modules/generated/sklearn.linear_model.LogisticRegression.html) (using only numpy) to illustrate the use of variance reduction methods in stochastic optimization.
![](https://i.imgur.com/pA8hGhZ.png)
## Contents
* A small [report](https://SelimChraibi.github.io/variance-reduction-methods/) on the intuition behind stochastic variance reduction in optimisation & how to use the code.
[![Report.html](https://i.imgur.com/9EMkAMh.png)](https://SelimChraibi.github.io/variance-reduction-methods/)* [`Report.ipynb`](https://nbviewer.jupyter.org/github/SelimChraibi/variance-reduction-methods/blob/master/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](http://archive.ics.uci.edu/ml/datasets/Student+Performance) dataset: `data/`
## Reproducing the results
To get started with the [`Report.ipynb`](https://nbviewer.jupyter.org/github/SelimChraibi/variance-reduction-methods/blob/master/Report.ipynb) notebook, create an environment using the dependencies file:
```bash
conda env create --file dependencies.yml
```Then launch `jupyter-notebook` and select `Kernel -> Change kernel -> Python [conda env:vrm]`