# Netflix Federated Learning Hey friends! Open invite to do some Federated Learning (or related PETs/data science) on my private Netflix data. ## Prerequisites 1. Install SyftBox by running: ```bash curl -LsSf https://syftbox.openmined.org/install.sh | sh ``` 2. Follow the prompts to set up your sync directory and email 3. Need help? Check out the [SyftBox documentation](https://syftbox-documentation.openmined.org/) or join us on [OpenMined Slack](https://slack.openmined.org) ## Finding This Project After installing SyftBox, you can find this project in your sync directory at: ``` /datasites/andrew@openmined.org/public/netflix_fl/ ``` You can also view this project online at: https://syftbox.openmined.org/datasites/andrew@openmined.org/public/netflix_fl/ ## Quick Start 1. Copy "example_job" to a new folder with your name and date (e.g., "suzy_prakash_job_nov_21") 2. Edit `job.py` to specify your computation 3. Edit `README.md` in your job folder to include: - Your name and contact details - A description of what your computation does - How to reach you (e.g., Slack, email) 4. Test locally with `./run.sh` (uses mock data) 5. Submit by moving your job to "submit_jobs_here" folder ## Project Structure . ├── example_job/ # Template job to copy ├── mock_dataset_location/ # Test data for local development ├── submit_jobs_here/ # Drop your completed jobs here └── completed_jobs_here/ # Find your processed results here ## Development - Use `./run.sh` to test with mock data - Use `./run.sh --real` to test with real data (only works for me) - The mock dataset follows the same schema as the real Netflix viewing history (here's a [tutorial](https://www.slashgear.com/894320/how-to-see-and-download-your-entire-netflix-watch-history/) for how to download yours if you want to test locally or enable other people to train on your data!) ## Data Format The Netflix viewing history CSV contains: ```csv Title,Date "Show Name: Season X: Episode Name","MM/DD/YY" ``` ## Guidelines - Please ensure your job runs successfully with mock data before submitting - Keep computations reasonable (no training for days) - Results will appear in "completed_jobs_here" after I run them ## Future Improvements - I'll make it so that it sends you an email when your job is ready (when it arrives in "completed_jobs_here") ## Questions? Feel free to reach out on slack (slack.openmined.org my user name is @trask) if you need help or have questions! I look forward to seeing your projects!