This is Mika's forked repository so it will not be up-to-date and only contain her contribution to the project
Scholars from the Secure and Private AI Scholarship Challenge from Facebook and Udacity working together to implement the tutorial from OpenMined: https://blog.openmined.org/federated-learning-of-a-rnn-on-raspberry-pis/
We will set up PySyft on two Raspberry Pis and learn how to train a Recurrent Neural Network on a Raspberry Pi via PySyft.
- PySyft(https://github.com/OpenMined/PySyft)
- Raspberry Pi
- Shashi Gharti - https://github.com/shashigharti
- Helena Barmer - https://github.com/helenabarmer
- Jess - https://github.com/jess-s
- Nirupama Singh - https://github.com/nirupamait
- Pooja Vinod - https://github.com/poojavinod100
- Alex Ahumada - https://github.com/projectsperminute
- Elena Kutanov - https://github.com/EVikVik
- Mahmmoud Mahdi (qursaan) - https://github.com/qursaan
- Ayesha Manzur - https://github.com/GlowWorm95
- Ivoline Ngong (Ivy) - https://github.com/ivyclare
- Nachiket - https://github.com/nachiket273
- Joyce Chidiadi - https://github.com/Joycechidi
- Temitope Oladokun
- Shivam Raisharma
- Sankalp Dayal - https://github.com/sankalpdayal5
- Sushil Ghimire
- Oudarjya Sen Sarma
- Juan Carlos Kuri Pinto
- Vigneshwari
- cibaca
- Oluwadamilola Saka (Dammy)
- Molly ngampit
- Ebinbin Ajagun - https://github.com/meajagun
- Ankur Bhatia
- Suparna S Nair - https://github.com/suparnasnair
- Sayed Maheen Basheer - https://github.com/SayedMaheen
- Sergio Valderrama - https://github.com/vucket
- Stanislav Ladyzhenskiy - https://github.com/LStan
The tutorial on how to contribute can be found here. https://github.com/shashigharti/federated-learning-on-raspberry-pi/wiki/How-to-contribute
This project requires the following equipment:
-- > 2 Raspberry PIs 3 B+ running Raspbian Stretch 4.14 -- > The PIs are connected to the internet via Ethernet cables. -- > Each PI has its own static IP(Internet Protocol) address.
-- > The laptop or desktop machine is running Ubuntu 18.04 LTS and connected to the same LAN where the Raspberry PIs through a switch.
A TP-Link 5-Port Ethernet Switch was used
The following are the major python libraries and dependencies used in the project
- Install Python 3.6.7 which is the version that seems to be compatible and more stable with PySyft and PyTorch at the moment.
- Install PyTorch 1.0.0 This section proves difficult and took several hours to complete. Some of the project members had the experience where their installation got stuck or even crashed halfway through. Before installing PyTorch a swap file was created. Then install PyTorch.
- Install PySyft and its dependencies