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

Dual-Headed SplitNN Config1 and Config2 #68

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

abbas5253
Copy link

@abbas5253 abbas5253 commented Aug 15, 2020

Description

Added two configurations of splitNN for vertically partitioned data.
Config-1: Server has image labels.
Config-2: A worker named label_owner has image labels (U-shaped).

Affected Dependencies

None

Checklist

@review-notebook-app
Copy link

Check out this pull request on  ReviewNB

Review Jupyter notebook visual diffs & provide feedback on notebooks.


Powered by ReviewNB

@abbas5253 abbas5253 mentioned this pull request Aug 15, 2020
"model_locations = [client_1, client_2, server, label_owner]\n",
"\n",
"#Split each image and send one part to client_1, and other to client_2\n",
"distributed_trainloader = Distribute_MNIST(data_owners=data_owners, data_loader=trainloader)"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For the case where images go to one worker and labels to another, we have implemented the vertically_federate method of a PartitionedDataset (https://github.com/OpenMined/PyVertical/blob/master/src/future/dataset.py#L219).
Could you change this to use that class?

Copy link
Author

@abbas5253 abbas5253 Aug 29, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually, the image is split into two parts, that are sent to client_1 and client_2. and label_owner has labels.

one takes the data and the other takes the targets

I don't think this supports the case.
Would you like me to write a new method for splitting the image in PartitionedDataset among two workers?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes please

"model_locations = [client_1, client_2, server]\n",
"\n",
"#Split each image and send one part to client_1, and other to client_2\n",
"distributed_trainloader = Distribute_MNIST(data_owners=data_owners, data_loader=trainloader)"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same comment as on the other notebook

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same for this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants