Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implementing Contrastive Self-Supervised Learning with Radiation Augmentations, SimCLR, PyTorch Lightning, and Hyperparameter Optimization #48

Closed
wants to merge 55 commits into from
Closed
Changes from 1 commit
Commits
Show all changes
55 commits
Select commit Hold shift + click to select a range
e10e632
adding hyperopt functions
Apr 22, 2022
bd0ab96
add supervised logistic regression model function
Apr 22, 2022
1afbcd6
adding cotraining model function
Apr 22, 2022
e3a5e62
adding code for Label Prop model function
Apr 22, 2022
12c46de
adding shadow fully connected NN model function
Apr 22, 2022
3cc5e95
adding shadow eaat cnn function model
Apr 22, 2022
15fede0
abstracting MINOS to Spectra
Apr 22, 2022
a9410da
removing duplicate device in eaat-cnn
Apr 22, 2022
d3e5068
revamping design of ssl models, starting with logreg
Jul 29, 2022
3126ebe
adding save function to logreg class and renaming hyperopt.py
Aug 4, 2022
edcc56e
commenting logistic regression class and methods
Aug 12, 2022
bf630f4
scripts/utils.py pep8 changes
Aug 12, 2022
fd824dd
implementing LabelProp with hyperopt functionality
Aug 12, 2022
0c3ae2a
implementing co-training with hyperopt functionality
Aug 12, 2022
42f19f4
implementing Shadow fully-connected NN with hyperopt
Aug 12, 2022
a629bb3
implementing Shadow EAAT CNN with hyperopt
Aug 12, 2022
ebe247a
adding functions for pca analysis
Aug 12, 2022
7ae4671
rearranging model files
Aug 15, 2022
6997a6d
adding unit test for LogReg
Aug 15, 2022
73ce1f1
updating dependencies
Aug 15, 2022
98e33e8
correcting pytorch package name
Aug 15, 2022
12982ca
adding unit test for CoTraining
Aug 15, 2022
1365e30
adding unit test for LabelProp
Aug 15, 2022
c97136d
adding unit test for ShadowNN
Aug 15, 2022
554eb05
including utils scripts in unit tests coverage
Aug 15, 2022
20f768e
error: training NNs takes too long for a unit test, let alone hyperopt
Aug 15, 2022
5d17d8c
error: these cnns are so bad that they can't even make predictions
Aug 15, 2022
80d1e9b
correcting cnn parameter calculation to include max_pool1d
Aug 16, 2022
95ee61b
adding tests for more coverage
Aug 16, 2022
49ed669
adding a test for util plots
Aug 16, 2022
3cb9b44
adding seed test to co-training
Aug 16, 2022
c131dcf
removing old commented line
Aug 22, 2022
4c53820
changing fresh_start methods of models to use class train method instead
Sep 29, 2022
f0bccf1
adding an EarlyStopper class for managing that functionality
Oct 7, 2022
a094a25
adding cross validation implementation
Oct 10, 2022
be77146
investigating ray.tune for better hyperparameter optimization
Nov 1, 2022
6f98c99
refactoring hyperopt->raytune; todo: update test_models.py
Nov 2, 2022
269ecb1
fixing errors in unit tests for hyperopt->raytune
Nov 3, 2022
cbe5510
unifying .gitignore
Aug 8, 2023
0fc7e6e
parent be771462d0188b9f98fdf470907270929662b958
Oct 19, 2022
752f0ba
rearranging folders for relative importation
Aug 8, 2023
50c6942
functional implementation with extra args and unfinished checkpointing
Aug 10, 2023
d0fcf48
attempting to debug parallelized ray tune
Aug 18, 2023
fe970b3
HyperOpt working in serial
Aug 19, 2023
d84d9ab
abandoning ray in favor of hyperopt; checkpointing for refactor
Aug 21, 2023
33f4434
functioning hyperopt implementation
Aug 21, 2023
02e1da8
adding arg for storing trial results
Aug 21, 2023
a15d847
adding functionality for storing and restoring pre-existing trials
Aug 23, 2023
f77e0ca
correcting for output of SSLHyperOpt.py
Aug 29, 2023
c022d28
adding AdamW parameters to dry run
Aug 29, 2023
cc0a7b8
adding projection head hyperparameter optimization script
Sep 5, 2023
ca81247
chtc bugfixes
Sep 5, 2023
60fad56
removing extranneous -p
Sep 5, 2023
bab9621
adjusting other hyperparameter inputs
Sep 5, 2023
270fcdf
correcting import statements
Dec 21, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
updating dependencies
Jordan Stomps authored and Jordan Stomps committed Oct 31, 2022
commit 73ce1f158cb1b9cb9693e49bd83e40c886922af6
6 changes: 6 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -25,7 +25,13 @@ Versions 3.6-3.9 are currently supported by tests. The following Python packages
* h5py
* numpy
* progressbar2
* matplotlib
* seaborn
* scipy
* sklearn
* hyperopt
* pytorch
* shadow-ssml

Modules can be imported from the repository directory (e.g. `from RadClass.H0 import H0`) or `RadClass` can be installed using pip:

7 changes: 7 additions & 0 deletions requirements.txt
Original file line number Diff line number Diff line change
@@ -2,3 +2,10 @@ numpy
h5py
progressbar2
scipy>=1.7.0
scikit-learn
hyperopt
matplotlib
seaborn
joblib
pytorch
shadow-ssml