Inspiration
Disco framework link
Disco is an existing distributed machine learning framework allowing to train deep learning models without sharing the data. In order to make this possible, the contributors download the model, then they update the weights locally with their private data and only send back their improvements.
For the moment, this process is done in a centralized manner. The contributors know how their input will be treated but can't verify if it has been done properly, and it is not possible to trace back or reward contributions...
What it does
Blockchain Disco, as its name says, implement blockchain for Disco. Our smart contract does the job of the Disco's centralized server. The contributions are stored and aggregated in the block chain. Thanks to that, everybody can verify that the Disco logic has been applied properly, trace back the contributions, and generate tokens proportional to the model improvement.
Once the model is trained, it is possible to know who the contributors are and how much they contributed. This can improve the trust in the model, and structure the model's ownership.
Steps:
- Sends update propositions
- Get Tau (update max amplitude)
- Update model's weights
- Declare Fraud and propose the right model's weights
How we built it
It has been built using a smart contract based on Ethereum. The programming language used is solidity.
Challenges we ran into
- Encoding the neural network weights in order to fit in the block chain.
- Finding validation functions
Accomplishments that we're proud of
- Finding a smart contract compatible with Disco
- Improvement of the initial service thanks to transparency and ownership tracing.
What we learned
What's next for Blockchain Disco
- Solution refinement
- Find a solution for bigger models
- Reward contributions (Training = Mining)
- List contributors with their contribution weight
Log in or sign up for Devpost to join the conversation.