Danielto1404 / aleo-boosting

Privacy preserving recommender systems using CatBoost and Aleo

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Aleo Boosting is a transpiler for python compatible boosting models to Aleo smart contracts.

Privacy preserving ML using Boosting models and Aleo smart contracts.

  1. Read quick documentation
  2. See some examples in examples folder


Why boosting models?

Boostings models are one of the most popular ML models, they are widely used in many areas, such as:

  • Recommendation systems
  • Fraud detection

Boosting models are also very easy to use, they are usually implemented in many ML libraries, such as:

For now, we support only XGBoost, but we are working on adding support for other boosting models. Read more about supported models


Demo: Privacy preserving recommendation system

Due to privacy preserving nature of Aleo smart contracts, we can build recommendation system without revealing user's data to the server. Many problems can be solved using this approach, for example, we can build a recommendation system for a dating app, where users can find their perfect match without revealing their personal data to the server.

For demonstration purposes we will use Book Recommenation Dataset from Kaggle.

You can follow step-by-step example from this instruction


How it works?

  1. You shoold train XGBoost model.
  2. Transpile trained XGBoost model to Aleo smart contract using leo-transpiler-python
  3. Deploy transpiled Aleo smart contract to Aleo blockchain
  4. Predict user's book preferences using deployed Aleo smart contract
  5. Enjoy privacy preserving recommendation system 🚀 :)

About

Privacy preserving recommender systems using CatBoost and Aleo

License:MIT License


Languages

Language:Jupyter Notebook 77.6%Language:Python 22.4%