-
Notifications
You must be signed in to change notification settings - Fork 181
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
Split learning with CIFAR-10 #1168
Conversation
e6b2dd6
to
15cbb6b
Compare
b671b96
to
cf580dc
Compare
/build |
1 similar comment
/build |
b27012e
to
5d3bc5b
Compare
/build |
/build |
51c84ca
to
e43eeef
Compare
0a5c781
to
6b91ea8
Compare
/build |
/build |
948aaae
to
326a053
Compare
/build |
326a053
to
3b866fe
Compare
/build |
3b866fe
to
f17ab67
Compare
/build |
f17ab67
to
ca615a4
Compare
/build |
ca615a4
to
dfee4d3
Compare
/build |
1 similar comment
/build |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Logic looks good, we can merge it now and double check the performance after the dependency functionality added
run training with higher timeout value rename classes add training accuracy remove printouts add figure update printouts update readme vertical split data run psi add notebook update notebook update notebook take intersection.txt as input for split-learning configure overlap add todo refactor to use FCI update requirements formatting add validation unify gitignore revert network; remove unnecessary check; use stats pool for computation time introduce cifar10 data utils move splitnn example to vertical_federated_learning move more files deleted moved files move to tutorials address comments move CIFAR10SplitNN to splitnn src folder fix some import errors use system panic use psi from apt_opt folder
a8eaef6
to
f8192c9
Compare
/build |
|
||
splitter = Cifar10VerticalDataSplitter(split_dir=args.split_dir, overlap=args.overlap) | ||
|
||
# set up a dummy context for logging |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
is possible to hide FLARE specific concept in the executor, I felt we should hide as much as we can the FLARE constructs. and expose as little as possible, so that user felt easy to transition from single machine learning to FL learning. In this case particularly, can we not introduce FLContext(), at this point, As we are just doing data splitting.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This way, it can also be used as an FL component similar to the cifar10 FedAvg example for simulation purposes.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For example, you can automate the runs by adding the Cifar10VerticalDataSplitter
to your job config and run experiments with different overlaps in parallel.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I just started looking at this and look its already merged,
Thanks for the comments, @chesterxgchen. I created a new issue related to the vertical data splitter you mentioned #1379. |
run training with higher timeout value rename classes add training accuracy remove printouts add figure update printouts update readme vertical split data run psi add notebook update notebook update notebook take intersection.txt as input for split-learning configure overlap add todo refactor to use FCI update requirements formatting add validation unify gitignore revert network; remove unnecessary check; use stats pool for computation time introduce cifar10 data utils move splitnn example to vertical_federated_learning move more files deleted moved files move to tutorials address comments
run training with higher timeout value rename classes add training accuracy remove printouts add figure update printouts update readme vertical split data run psi add notebook update notebook update notebook take intersection.txt as input for split-learning configure overlap add todo refactor to use FCI update requirements formatting add validation unify gitignore revert network; remove unnecessary check; use stats pool for computation time introduce cifar10 data utils move splitnn example to vertical_federated_learning move more files deleted moved files move to tutorials address comments
run training with higher timeout value rename classes add training accuracy remove printouts add figure update printouts update readme vertical split data run psi add notebook update notebook update notebook take intersection.txt as input for split-learning configure overlap add todo refactor to use FCI update requirements formatting add validation unify gitignore revert network; remove unnecessary check; use stats pool for computation time introduce cifar10 data utils move splitnn example to vertical_federated_learning move more files deleted moved files move to tutorials address comments
TODOs