Skip to content

MediaInfluences/mycelium_1.0

 
 

Repository files navigation

# 🥈 Second Best Pitch Award Winner at HackMIT 2024 (sponsored by Avalanche's COD3BAS3) 🚀

Federated Learning, Powered by MyCelium, Decentralized ML training on encrypted data

Build Status

Mycelium is a federated learning project that harnesses the unused computational power of everyday devices to train AI models, eliminating the need for expensive, centralized data centers. By leveraging IBM's diffprivlib, we implement differential privacy, ensuring that user data remains encrypted and secure while still contributing to powerful AI training.

Features

  • Fully Decentralized: Train AI models using your PC’s GPU without needing a data center.
  • Data Security: Implements IBM’s diffprivlib to keep data private and secure.
  • TensorFlow Integration: Perform machine learning tasks using TensorFlow, split across decentralized nodes.
  • Pandas Workflow: Streamlined data handling using pandas for splitting data across nodes.
  • Horizontal Averaging: Consolidate insights from multiple nodes to improve model accuracy.
  • Energy Efficient: Reduce carbon footprints by eliminating the need for traditional data centers.

Tech

Dillinger uses a number of open source projects to implement Federated Learning:

  • IBM diffprivlib – For encryption and differential privacy.
  • TensorFlow – For running machine learning models.
  • Modal – To simulate user nodes.
  • Pandas – For data splitting and workflow distribution.
  • Python – Core programming language for model development.
  • npm - Package management

Installation

MyCelium requires an update version of npm to run. Install the dependencies and and start the Modal server.

cd mycelium
npm install
pip install -r requirements.txt
modal run ComputeNode1.py # Federated Learning starts here
modal run ComputeNode2.py
modal run ComputeNode3.py
modal run DecentralizedModel.py # pdating gobal model with new weights 

License

MIT

Contact Info

Feel free to contact me for any questions or recruitment opportunities [Jon's Linkedin]: https://www.linkedin.com/in/jkozlik/

If you're a recruiter, feel free to click our profiles and click on my Linkedin link

About

Venture Startup

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 100.0%