|
|
3 anos atrás | |
|---|---|---|
| .. | ||
| results | 3 anos atrás | |
| util | 3 anos atrás | |
| .gitignore | 3 anos atrás | |
| README.md | 3 anos atrás | |
| bin_run.py | 3 anos atrás | |
| binary_clusters_run.py | 3 anos atrás | |
| multi_run.py | 3 anos atrás | |
| network_run.py | 3 anos atrás | |
Python code for doing active learning in graph-based semi-supervised learning (GBSSL) paradigm. Implements testing done in paper that will soon appear and be submitted for peer-review.
To run tests in this framework, run scripts bin_run.py or multi_run.py specifying location (--data-root) of .npz file that contains variables X (N x d numpy array) and labels (N vector numpy array). Default is hard-coded in the scripts to run on all possible acquisition functions, but can change the list variable acq_models
acq_models:
mc (Model Change), uncertainty (Uncertainty), vopt (VOpt), sopt (SigmaOpt), rand (Random)gr (Gaussian Regression), log (Logistic Loss), probitnorm (Probit - Normal)gr(Gaussian Regression), ce (Cross-Entropy)mc--gr --> Model Change acquisition function in Gaussian Regression Model.This repo requires the Python packages: sklearn, mlflow, numpy, scipy.
Can simply run test on the synthetic dataset "Binary Clusters" presented in the paper:
python binary_clusters_run.py --al-iters 100 --B 1 # run sequential active learning on binary clusters data for 100 active learning iterations
python binary_clusters_run.py --al-iters 20 --B 5 # run batch activate learning on binary clusters data for 20 active learning iterations
Example plots from code in results/acc_figures.py (which can be opened as a Jupyter notebook)
| MNIST | Salinas A | Urban |
|---|---|---|
![]() |
![]() |
![]() |
| MNIST | Salinas A | Urban |
|---|---|---|
![]() |
![]() |
![]() |