FELToken: Federated Learning Token

Part 1 - Proposal Submission

Name of Project: FELToken

Proposal in one sentence:

Creating a decentralized and more secure solution for federated learning while anonymizing data providers.

Description of the project and what problem is it solving:

FELToken is connecting owners of the data with scientists to train their machine learning models while preserving the privacy of the data. Current federated learning solutions rely on a central server. We are building a product with the simplest user experience possible while being decentralized. This allows anonymous participation of data providers and prevents malicious activities. Data providers get rewards for sharing their data and resulting models can be further sold.

Grant Deliverables: (Target deliverables for the funding provided.)

  • Create a web application supporting basic training functionalities
  • Propose a plan for OCEAN integration
  • Write blog post about the integration with OCEAN

Which category best describes your project?

  • Build / improve applications or integrations to Ocean

Are you applying for an Earmark?

  • New Project

What is the final product?

The final product of FELToken consists of three main components: a set of smart contracts governing the federated learning process, a web application for simple interaction with smart contracts, and a tool for running a data provider node. During development, we focus mainly on making the process of setting up the federated learning project as simple as possible. So that data scientists and interested parties can train their models without any extra knowledge about smart contracts and blockchain.

Once the core components are working there are many possible ways for further extension. We would like to integrate with marketplaces to allow reselling of trained models or to allow training with datasets provided online. The tool can also act as a platform for further federated learning research.

Value add

  1. Usage of Ocean
  2. Viability

We already have a working demo of the core technology (smart contract and code for data provider). Right now we are building the user interface for interaction with the smart contracts. Once finished with this we want to plan further steps for integration with marketplaces out there (as proposed in grant deliverables).

We believe that this tool can drive the attention of more people working on machine learning and data privacy. We are also focusing on companies that will use this product with their real data. We want to integrate with other tools as well. We believe that this could bring more people to the community overall.

Funding Requested: 3000$

Proposal Wallet Address: 0x77edDB82E5e9901aA494825bC362fA93120B892c

Have you previously received an OceanDAO Grant?
N

Team Website: https://feltoken.ai

Twitter Handle: @FELToken

Discord Handle: Breta#9929

Project lead full name: Břetislav Hájek

Project lead email: info@bretahajek.com

Country of Residence: Czech Republic

Part 2 - Team

2.1 Core Team

Břetislav Hájek

Filip Masár

Part 3 - Proposal Details

Details of the proposal:

We are building software for federated learning projects. As such we need to provide an easy UI for companies/interested parties to set up their projects. Right now we are building a web application that will allow exactly that. Meanwhile, we are still improving our smart contracts and other parts of the code. Once finished with that we want to focus on integration with other decentralized solutions.

App will be live at:

https://feltoken.ai/#/app

Is the software open-source?

Y

If open-source, please specify the license. If no, please specify why not open-source.

GPL-3.0 License

Project software can be found at:

Are there any mockups or designs to date?

Y: There is this video used for hackathon submission explaining the project: https://www.youtube.com/watch?v=3TFzvjnEDAA

Please given an overview of the technology stack.

Smart contracts are written in solidity with the use of OpenZeppelin contracts. There are three main smart contracts: token contract, project manager and project contract. Project contract is the main contract managing federated learning processes. We are planning to deploy them on Polygon (MATIC) network.

The web application is written in TypeScript using React as a frontend framework. For communication with smart contracts, we use the Ethers.js library.

The data provider client is written in Python. Right now we support scikit-learn models. We will extend this for TensorFlow and PyTorch in the near future.

3.9 Project Deliverables - Roadmap

Any prior work completed thus far? Details?

Y: We started the project as part of Chainlink Fall Hackathon 2021 where we created the core contract and data provider code.

What is the project roadmap?

  • Finish the web application for interacting with smart contracts. The main goal right now is to be able to start a new project and set up training of a model through the UI.
  • Research about possible integration with OCEAN marketplace.
  • Write a blog post about our further steps proposing a roadmap for the integration.

What is the team’s future plans and intentions?

There are many possible extensions. As mentioned before we want to integrate with different tools and marketplaces out there. Once the core of the project is finished we want to focus on getting people to use the project (working as a support and fixing bugs as needed). We would also like to attract researchers to develop new algorithms for federated learning on blockchain. Or run machine learning competitions in federated learning settings.

3.10 Additional Information

Any additional information

We were one of the winners of “On the Rise” category in Chainlink Fall Hackathon 2021

Hi @breta,

Thank you for applying for R-13! We commend the effort you’ve taken into the proposal detail and prior achievements.

Your proposal has been registered into the system and everything looks great!

We have attempted to make your first grant easy to earn (you are registered in the New Entrant Earmark) I would also recommend one (or all) of the following to increase support:

  1. Saying hi to the community in #ocean-dao and sharing your proposal.

  2. Saying hi to members of the #project-guiding WG and sharing your proposal.

  3. Meet with the Evaluators assigned to you by the #project-guiding WG.

  4. Attend a Town Hall or Project-Guiding WG meeting to talk about your project and proposal.

If you need any additional support please let me know

All the best!

-Prakash

Hello @breta,

Please notice that we are updating the funding process for R13 and there are important things for you to know. We will be deploying an update to the Ocean Website, where you will be able to claim your grant on your own time.
Funding the smart contract may take ~2 days after Voting Ends. There will still be a funding deadline of 2 weeks to claim your grant.
You will need a web3 wallet + Airtable to complete the process. Grant requests via request.finance will be deprecated.

You can find all instructions here: https://github.com/oceanprotocol/oceandao/wiki/Request-Grant-Guidelines
You will have until January 10th to update your proposal with all required fields.

Please let us know if you experience any issues or bugs. You can also submit tickets to Github and ping us inside of ocean-dao-engineering for any help. Thank you!

Hello @breta,

As part of the Project Guiding - Working Group [PG-WG], We would like to congratulate on your sustained interest in the OceanDAO and for winning the R13 grant.

We also encourage you and your team to be part of our PG-WG Guiding group as an Attendee as well as being part of guiding the newcomers of PG-WG and OceanDAO. Say hello to us at https://discord.gg/kujC2QK9 #Project-Guiding and refer to the pinned messages to find more information regarding the WG.

Regards,

Prakash

Thank you for this opportunity.

We are already watching the discord. We will try to participate if possible.