Skip to content

Encrypted Machine Learning library that relies on the Vaultree Fully Homomorphic Encryption (FHE) library, VENumpy.

License

Notifications You must be signed in to change notification settings

dmgolembiowski/VENumML

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

alt text

VENumML

Encrypted machine learning (EML) library enabled by the Vaultree python library, VENumpy. At its source, VENumpy is built on our core fully homomorphic encryption (FHE) Vaultree Encrypted Number library, VENum.

VENumML: Machine Learning for Encrypted Data

VENumML is a Privacy Preserving Machine Learning (PPML) Python library designed for building and applying machine learning models on encrypted data. It leverages fully homomorphic encryption (FHE) techniques to perform computations on encrypted data without decryption, ensuring data privacy throughout the machine learning workflow.

Getting Started:

Setup Instructions

Overview

VENumML is an open-source library designed to leverage Fully Homomorphic Encryption (FHE) for building and applying machine learning models on encrypted data. While VENumML itself is open-source, it currently relies on Vaultree's internal FHE library, VENumpy, to perform the necessary encrypted computations.

We believe VENumML's open-source architecture offers a valuable framework for developing secure and privacy-preserving machine learning applications. By making VENumML open-source, we aim to:

  • Foster collaboration and innovation in the field of encrypted machine learning.
  • Encourage developers to explore the potential of VENumML for various use cases.
  • Showcase the capabilities of VENumML in conjunction with VENumpy.
  • Provide transparency: Users can understand the core functionalities and architecture of VENumML.
  • Build community: Developers can contribute to the project's development and improve its functionalities.

Using VENumML with VENumpy:

To currently run VENumML and experience its functionalities, you will need a license for Vaultree's VENumpy library. If you're interested in obtaining a license for VENumpy and exploring VENumML's capabilities, please contact Vaultree.

Key Features:

  • Encrypted Machine Learning: Implement various machine learning models while keeping the underlying data encrypted.
  • Homomorphic Encryption Support: Works with Vaultree's VENumpy library that provides FHE functionalities.
  • Privacy-Preserving Predictions: Make predictions on encrypted data without revealing the original features.

Current Components:

This library is under development and currently includes implementations for:

Regression:

  • Linear Regression: Train and use a linear regression model on encrypted data for continuous target variables.
  • Logistic Regression: Train and use a logistic regression model on encrypted data for binary classification tasks.

Deep Learning (Under Development):

  • Transformer: Explore encrypted implementations of the Transformer architecture for various deep learning tasks.

Time Series (Phineus Sub-package):

  • FFT (Fast Fourier Transform): Perform FFT on encrypted time series data to analyze frequency domain information while preserving privacy.
  • Rolling Average: Calculate rolling averages on encrypted time series data for smoothing and trend analysis.

Contributing:

We welcome contributions to this open-source library. If you're interested in helping develop or improve VENumML, please refer to the contribution guidelines (to be added in a separate document).

Disclaimer:

This library is under active development and might contain limitations or bugs. Use it for research or experimentation purposes with caution.

Licensing

All content accompanying this file is copyrighted to Vaultree.

© 2024 Vaultree. All rights reserved.

About

Encrypted Machine Learning library that relies on the Vaultree Fully Homomorphic Encryption (FHE) library, VENumpy.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%