Skip to content

Instantly share code, notes, and snippets.

@yashlamba
Last active March 16, 2021 07:33
Show Gist options
  • Star 3 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save yashlamba/5e0845a6cd5a1198f166ddedfba78802 to your computer and use it in GitHub Desktop.
Save yashlamba/5e0845a6cd5a1198f166ddedfba78802 to your computer and use it in GitHub Desktop.
Google Summer of Code 2019 Final Work Submission

GSoC 2019

Google Summer of Code Final Work Report

Aim

Adding new machine learning models to DFFML, the proposed models are given below:

  1. Model 1: Ordinary Least Square Regression (OLSR)
  2. Model 2: Logistic Regression
  3. Model 3: k-Nearest Neighbour (kNN)
  4. Model 4: Naive Bayes

Finalized To-dos and Modifications

During the community bonding period, the proposed work was modified to achieve optimized result from the summer. The finalized work was:

  1. Adding Linear Regression Model from scratch
  2. Adding Linear Regression and other proposed models using scikit-learn
  3. Adding tests for the added models
  4. Documenting the models

Tasks Achieved

  • Added Linear Regression model from scratch with tests

    Simple Linear Regression model implemented from scratch. This was successfully completed with tests and documentation, and was also releasd on PyPI.

    Related Links:

    PR: intel/dffml#115

    PyPI: https://pypi.org/project/dffml-model-scratch/

  • Added scikit models with dynamic support Initially, it was planned to add certain number of models from scikit but as I did it with one model (Multiple Linear Regression with scikit), we decided to extend this and make a base for all scikit models and make other model classes dynamic. This was successful and now adding scikit models to DFFML is as easy as appending the model name to a python dictionary. The tests are complete and the documentation material is ready but we are still figuring out a more understandable way of documenting this before release.

    Related Links:

    PRs:

Detailed weekly description of tasks and work done can be found in:

Future Work

The project was started just before GSoC'19 and it has come a long way since. I plan on contributing significantly to the project after GSoC'19. Few of the planned stuff:

  1. Adding more scikit models
  2. Working on more machine learning libraries and add models
  3. Contruct DFFML Web UI from scratch which was conceptualized during summer and much more.

I would like to thank my mentor John Andersen to be such an amazing and incredibly patient mentor throughout summer. His guidance is the reason why this project was successfully completed. Thank you to Python Software Foundation to provide this opportuninty.

@B-Anupam
Copy link

Hi, I am interested in contributing to this repository. Please let me know how can I contribute?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment