concrete-ml

Concrete ML: Privacy Preserving ML framework built on top of Concrete, with bindings to traditional ML frameworks.

OTHER License

Downloads
3.6K
Stars
780
Committers
27

Bot releases are visible (Hide)

concrete-ml - v1.5.0 Latest Release

Published by zama-bot 7 months ago

Summary

Add support for encrypted data-frames, approximate rounding and PyTorch's Conv1D operator. Fix AvgPool's count_include_pad missing parameter error.

Links

Docker Image: zamafhe/concrete-ml:v1.5.0
Docker Hub: https://hub.docker.com/r/zamafhe/concrete-ml/tags
pip: https://pypi.org/project/concrete-ml/1.5.0
Documentation: https://docs.zama.ai/concrete-ml

v1.5.0

Feature

Fix

  • Disable overflow protection in rounding (4db0157)
  • Fix survey link (e5661c1)
  • Reinstate apidoc generated tags (2878a07)
  • Make skorch import fail without error (81de55c)
  • Replace python release install with setup-python (899b9f1)
  • Fix concurrency issue in release process (1295ea9)
  • Add support to AvgPool's missing parameters (15a8340)
  • Update README.md (ba1fdad)

Documentation

  • Add dataframe documentation (#576) (d3bf5ac)
  • Update main landing pages (cfb862e)
  • New structure and landing page (85cb962)
  • Update operator list in torch support's documentation section (b617740)
  • Add links to credit card approval space in use case examples (df81aca)
  • Improve contributing section (1696799)
  • Document n_bits for compile torch functions (0306c65)
  • Add explanation of encrypted training and federated learning (57dbdff)
  • Add documentation about scaling (9252f57)
concrete-ml - v1.5.0-rc1

Published by zama-bot 7 months ago

Summary

Add support for encrypted data-frames and approximate rounding. Fix AvgPool's count_include_pad missing parameter error.

Links

Docker Image: zamafhe/concrete-ml:v1.5.0-rc1
Docker Hub: https://hub.docker.com/r/zamafhe/concrete-ml/tags
pip: https://pypi.org/project/concrete-ml/1.5.0-rc1
Documentation: https://docs.zama.ai/concrete-ml

v1.5.0-rc1

Feature

Fix

  • Fix survey link (e5661c1)
  • Reinstate apidoc generated tags (2878a07)
  • Make skorch import fail without error (81de55c)
  • Replace python release install with setup-python (899b9f1)
  • Fix concurrency issue in release process (1295ea9)
  • Add support to AvgPool's missing parameters (15a8340)
  • Update README.md (ba1fdad)

Documentation

  • Add dataframe documentation (#576) (d3bf5ac)
  • Update main landing pages (cfb862e)
  • New structure and landing page (85cb962)
  • Update operator list in torch support's documentation section (b617740)
  • Add links to credit card approval space in use case examples (df81aca)
  • Improve contributing section (1696799)
  • Document n_bits for compile torch functions (0306c65)
  • Add explanation of encrypted training and federated learning (57dbdff)
  • Add documentation about scaling (9252f57)
concrete-ml - v1.4.1

Published by zama-bot 8 months ago

Summary

Update Concrete-Python to 2.5.1 and fixes AvgPool's missing parameters.

Links

Docker Image: zamafhe/concrete-ml:v1.4.1
Docker Hub: https://hub.docker.com/r/zamafhe/concrete-ml/tags
pip: https://pypi.org/project/concrete-ml/1.4.1
Documentation: https://docs.zama.ai/concrete-ml

v1.4.1

Fix

  • Make skorch import fail without error (5863a4b)
  • Replace python release install with setup-python (f41c65c)
  • Update README.md (8bef8e5)
  • Add support to AvgPool's missing parameters (559d99c)

Documentation

  • Document n_bits for compile torch functions (065df89)
  • Add explanation of encrypted training and federated learning (8002ed8)
  • Add documentation about scaling (1bad5cc)
concrete-ml - v1.5.0-rc0

Published by zama-bot 8 months ago

Summary

Add support to torch's Conv1d and Unfold operators

Links

Docker Image: zamafhe/concrete-ml:v1.5.0-rc0
Docker Hub: https://hub.docker.com/r/zamafhe/concrete-ml/tags
pip: https://pypi.org/project/concrete-ml/1.5.0-rc0
Documentation: https://docs.zama.ai/concrete-ml

v1.5.0-rc0

Feature

  • Support conv1d operator (09ad7a6)
  • Implement quantized unfold (fa3ef88)

Fix

  • Make skorch import fail without error (81de55c)
  • Replace python release install with setup-python (899b9f1)
  • Fix concurrency issue in release process (1295ea9)
  • Add support to AvgPool's missing parameters (15a8340)
  • Update README.md (ba1fdad)

Documentation

  • Update operator list in torch support's documentation section (b617740)
  • Add links to credit card approval space in use case examples (df81aca)
  • Improve contributing section (1696799)
  • Document n_bits for compile torch functions (0306c65)
  • Add explanation of encrypted training and federated learning (57dbdff)
  • Add documentation about scaling (9252f57)
concrete-ml - v1.4.0

Published by zama-bot 9 months ago

Summary

1.4.0 release

Links

Docker Image: zamafhe/concrete-ml:v1.4.0
Docker Hub: https://hub.docker.com/r/zamafhe/concrete-ml/tags
pip: https://pypi.org/project/concrete-ml/1.4.0
Documentation: https://docs.zama.ai/concrete-ml

v1.4.0

Feature

  • SGDClassifier training in FHE (0893718)
  • Support Expand Equal ONNX op (cf3ce49)
  • Add rounding feature on cml trees (064eb82)
  • Add multi-output support (fef23a9)
  • Allow QuantizedAdd produces_output_graph (0b57c71)
  • Encrypted gemm support - 3d inputs - better rounding control - sgd training test (111c7e3)

Fix

  • Add --no-warnings flag to linkchecker (1dc547e)
  • Fix wrong assumption in ReduceSum operator's axis parameter (1a592d7)
  • Mark flaky tests due to issue in simulation (4f67883)
  • Update learning rate default value for XGB models (e4984d6)

Documentation

  • Improve XGBClassifier notebook (b1906a5)
  • Update api doc (d8e9e64)
  • Update Apple Silicon install information (4c0c02f)
concrete-ml - v1.4.0-rc2

Published by zama-bot 10 months ago

Summary

1.4.0 - Release Candidate - 2

Links

Docker Image: zamafhe/concrete-ml:v1.4.0-rc2
Docker Hub: https://hub.docker.com/r/zamafhe/concrete-ml/tags
pip: https://pypi.org/project/concrete-ml/1.4.0-rc2
Documentation: https://docs.zama.ai/concrete-ml

v1.4.0-rc2

Feature

  • SGDClassifier training in FHE (0893718)
  • Support Expand Equal ONNX op (cf3ce49)
  • Add rounding feature on cml trees (064eb82)
  • Add multi-output support (fef23a9)
  • Allow QuantizedAdd produces_output_graph (0b57c71)
  • Encrypted gemm support - 3d inputs - better rounding control - sgd training test (111c7e3)

Fix

  • Add --no-warnings flag to linkchecker (1dc547e)
  • Fix wrong assumption in ReduceSum operator's axis parameter (1a592d7)
  • Mark flaky tests due to issue in simulation (4f67883)
  • Update learning rate default value for XGB models (e4984d6)

Documentation

  • Update api doc (d8e9e64)
  • Update Apple Silicon install information (4c0c02f)
concrete-ml - v1.4.0-rc1

Published by zama-bot 10 months ago

Summary

Please fill here with information about the main features in this release, or the main reason for having a delivery (e.g., fixing an annoying bug)

Links

Docker Image: zamafhe/concrete-ml:v1.4.0-rc1
Docker Hub: https://hub.docker.com/r/zamafhe/concrete-ml/tags
pip: https://pypi.org/project/concrete-ml/1.4.0-rc1
Documentation: https://docs.zama.ai/concrete-ml

v1.4.0-rc1

Feature

  • Support Expand Equal ONNX op (cf3ce49)
  • Add rounding feature on cml trees (064eb82)
  • Add multi-output support (fef23a9)
  • Allow QuantizedAdd produces_output_graph (0b57c71)
  • Encrypted gemm support - 3d inputs - better rounding control - sgd training test (111c7e3)

Fix

  • Add --no-warnings flag to linkchecker (1dc547e)
  • Fix wrong assumption in ReduceSum operator's axis parameter (1a592d7)
  • Mark flaky tests due to issue in simulation (4f67883)
  • Update learning rate default value for XGB models (e4984d6)

Documentation

  • Update api doc (d8e9e64)
  • Update Apple Silicon install information (4c0c02f)
concrete-ml - v1.3.0

Published by zama-bot 12 months ago

Summary

Adds SGDRegressor built-in model and some bugfixes.

Links

Docker Image: zamafhe/concrete-ml:v1.3.0
Docker Hub: https://hub.docker.com/r/zamafhe/concrete-ml/tags
pip: https://pypi.org/project/concrete-ml/1.3.0
Documentation: https://docs.zama.ai/concrete-ml

v1.3.0

Feature

Fix

  • Fix shape output mismatch for KNNClassifier (6de7c6e)
concrete-ml - v1.2.1

Published by zama-bot about 1 year ago

Summary

Bug fix for XGBoostRegressor.

Links

Docker Image: zamafhe/concrete-ml:v1.2.1
pip: https://pypi.org/project/concrete-ml/1.2.1
Documentation: https://docs.zama.ai/concrete-ml

v1.2.1

concrete-ml - v1.2.0

Published by zama-bot about 1 year ago

Summary

This new version of Concrete ML adds support for hybrid deployment and K-nearest neighbor classification. Hybrid deployment with FHE is an approach that improves on-premise deployment by converting parts of the model to remote FHE computation, in order to protect model intellectual property (IP), ensure license compliance and facilitate usage monitoring. The 1.2 version also adds an improvement to the built-in neural networks, making them 10x faster out-of-the-box.

Links

Docker Image: zamafhe/concrete-ml:v1.2.0
pip: https://pypi.org/project/concrete-ml/1.2.0
Documentation: https://docs.zama.ai/concrete-ml

v1.2.0

Feature

  • Enable import of fitted linear sklearn models (771c7ff)
  • Support QAT models in hybrid model (526b000)
  • Expose statuses to compile torch (8abddf6)
  • Add KNN classifier in CML (1c33ec8)
  • Add power of two scaling adapter for roundPBS (546fac9)
  • Add hybrid FHE models (be6aa6e)

Fix

  • Fix confusing print in CNN tutorial of advanced-examples (9136c47)
  • Fix path parsing and default in hybrid serving (afd049a)
  • Fix flaky padding test (6aaf5f0)
  • Fix issues with OMP library (2b61846)
  • Make sure structured pruning and unstructured pruning work well together (ada18ab)
  • Fix structured pruning crash not caught by test (cafd8d1)
  • Fix bad top1 accuracy in cifar_brevitas_training use case (f0a984e)
  • Fix flaky double_fit test (3da6408)
  • Remove workaround for simulating linear models (3f622bc)
  • Re-compute quantization params when re-fitting linear models (3bad62e)

Documentation

  • Fix and improve credit scoring use case example (e4db376)
  • Update contribution part (f2822d1)
  • Document KNN, PoT, Hybrid models (68a0b4c)
  • Update mnist CNN (f80c90b)
  • Update mnist Fully Connected example with PoT + rounding (6e3d003)
  • Update cifar_brevitas_training accuracy using representative calibration set (39480ef)
  • Correct n_bits markdown value in the LLM use case notebook (0cf1174)
concrete-ml - v1.2.0-rc0

Published by zama-bot about 1 year ago

Summary

Trying out the new release process.

Links

Docker Image: zamafhe/concrete-ml:v1.2.0-rc0
pip: https://pypi.org/project/concrete-ml/1.2.0-rc0
Documentation: https://docs.zama.ai/concrete-ml

v1.2.0-rc0

Feature

Fix

  • Flaky test double_fit (3da6408)
  • Re-compute quantization parameters when re-fitting linear models (3bad62e)

Documentation

  • Add link to deployment use case examples (f9333b3)
  • Correct mention of n_bits in LLM use case notebook text (0cf1174)
concrete-ml - v1.1.0

Published by zama-bot over 1 year ago

Summary

Concrete-ML 1.1.0 adds optimization tools that speed-up the FHE inference time of neural-network models, up to a factor of 20x. Furthermore, this version also improves the support for built-in neural-networks and classical models.

Links

Docker Image: zamafhe/concrete-ml:v1.1.0
pip: https://pypi.org/project/concrete-ml/1.1.0
Documentation: https://docs.zama.ai/concrete-ml

v1.1.0

concrete-ml - v1.0.3

Published by zama-bot over 1 year ago

Summary

Expose training parameters from scikit-learn in built-in models and add new advanced examples.

Links

Docker Image: zamafhe/concrete-ml:v1.0.3
pip: https://pypi.org/project/concrete-ml/1.0.3
Documentation: https://docs.zama.ai/concrete-ml

v1.0.3

Feature

  • Support multi-input QM with inputs of different shapes (6e1315f)
  • Add a function to build a quantized module from a model (34e5f68)
  • Expose scikit-learn training attributes in built-in models (37ab8c0)
  • Add serialization to QNN models (33312a8)

Documentation

  • Add example notebook on LinearSVR (f42f0e6)
  • Add svm classifier tutorial (49e13ec)
  • Add DecisionTreeRegressor to advanced_examples (148e626)
  • Add regressor comparison tutorial (6c7cbf7)
concrete-ml - v1.0.2

Published by zama-bot over 1 year ago

Summary

Fix for the Gather operator to handle fancy indexing.

Links

Docker Image: zamafhe/concrete-ml:v1.0.2
pip: https://pypi.org/project/concrete-ml/1.0.2
Documentation: https://docs.zama.ai/concrete-ml

v1.0.2

concrete-ml - v1.0.1

Published by zama-bot over 1 year ago

Summary

Fixing minor things, like few typos or rewording the documentation.

Links

Docker Image: zamafhe/concrete-ml:v1.0.1
pip: https://pypi.org/project/concrete-ml/1.0.1
Documentation: https://docs.zama.ai/concrete-ml

v1.0.1

concrete-ml - v1.0.0

Published by zama-bot over 1 year ago

Summary

This version features a stable API, better inference performance, and user-friendly error reporting. Most importantly, tools have been added to make your model deployment in cloud environments hassle-free. Support for Apple Silicon was also added.

Links

Docker Image: zamafhe/concrete-ml:v1.0.0
pip: https://pypi.org/project/concrete-ml/1.0.0
Documentation: https://docs.zama.ai/concrete-ml

v1.0.0

Feature

  • Add structured pruning to QNNs (70bff38)
  • Add accumulator rounding (8ee9267)
  • Add bitwidth and value range report per layer (dd37f4e)
  • Extend deployment features (AWS and docker) (77e2d80)
  • Add sentiment analysis deployment use-case (96c9158)
  • Support ONNX operators Gather, Slice, Shape, ConstantOfShape (667e9ae)
  • Include quant and dequant steps in QuantizedModule's forward method (55369ed)
  • Add scikit-learn model serialization (ae7658b)
  • Add cifar-10 8-bit model deployment (9177058)
  • Support pandas and list inputs in predict and compile methods for NNs (6a5e619)
  • Add example of model deployment to use-cases (be7bcb0)
  • Support pandas, list and torch for trees and linear models (8156bc9)
  • Simplify the API by removing n_bits for compile_brevitas_qat (d081212)

Fix

  • Fix ci packaging (bdda1da)
  • Fix deploy_to_aws for python 3.10 (7665809)
  • Non-quantized NN constant folding bug (bdc04c4)
  • Make the client-server API support Tweedie models (0de7398)
  • QNN API improvements and pruning fix (33c4bf0)
  • Set specific dependency versions (9729dc6)
  • Flaky client server (3eb86c1)
  • Fixing issues with pytest and macOS (a0c22fa)

Documentation

  • Add tree experiments (e1c0ce0)
  • Add chapter on optimization and simulation (5454620)
  • Update simulation (d298459)
  • Good quantization configurations for target accumulator bit-widths (ef6355f)
  • Add rounding documentation (b7f56d5)
  • Add an example that separates encryption, FHE execution and decryption (d4681fb)
concrete-ml - v0.6.1

Published by bcm-at-zama almost 2 years ago

Summary

This Concrete-ML release adds support for:

  • 16-bits built-in NN models,
  • 20+ bits purely leveled (i.e., very fast) linear models, which makes them match floating point models in term of accuracy

New tutorials show how to train large neural networks either from scratch or by transfer learning, how to convert them into an FHE-friendly models and finally how to evaluate them in FHE and with simulation. The release adds tools that leverage FHE simulation to select optimal parameters that speed up the inference of neural networks. Python 3.10 support is included in this release.

Links

Docker Image: zamafhe/concrete-ml:v0.6.1
pip: https://pypi.org/project/concrete-ml/0.6.1
Documentation: https://docs.zama.ai/concrete-ml

v0.6.1

Feature

  • Support 20+ bits linear models (4f112ca)
  • Add python 3.10 support (aede49b)
  • Add a CIFAR-10 CNN with 8-bit accumulators and show p_error search (35715e2)
  • Add tutorials for transfer learning for CIFAR-10/100. (42405c5)
  • Add CIFAR-10 VGG CNN with split clear/FHE compilation. (637c272)
  • Change the license (a52d917)
  • Add support for global_p_error (b54fcac)

Fix

  • Flaky FHE vs VirtualLib overflow (1780cd5)
  • Ensure all operations in QNNs are done in FP64 (52e87b7)
  • Raise error when model results are mismatched between Concrete-ML and VL (b7fa8c1)
  • Set specific dependency versions (f2dfc3e)
  • Flaky client server API (1495214)
  • Issues with pytest and macOS (5196c68)

Documentation

  • Add a showcase of use-cases and tutorials (36adc09)
  • Add global_p_error (b6b4d7a)
  • Add CIFAR-10/100 examples for the fine-tuning approach. (45a4f66)
  • Fully connected NN on MNIST using 16b in VL (f0be5f3)
  • Provide an image filtering demo app (fd11f25)
concrete-ml - v0.5.1

Published by fd0r almost 2 years ago

Summary

The main objective of this release is to fix some issues with recent updates in dependencies, and to extend the support from python 3.7.14 to python 3.7.1.

Links

Docker Image: zamafhe/concrete-ml:v0.5.1
pip: https://pypi.org/project/concrete-ml/0.5.1
Documentation: https://docs.zama.ai/concrete-ml

v0.5.1

Feature

  • Extend python 3.7.14 support to 3.7.1 (eb212bf)

Fix

  • Fixing an issue with LinearRegression (ebd06b4)
concrete-ml - v0.5.0

Published by fd0r almost 2 years ago

Summary

The main objective of this release is to add python 3.7 support.

Links

Docker Image: zamafhe/concrete-ml:v0.5.0
pip: https://pypi.org/project/concrete-ml/0.5.0
Documentation: https://docs.zama.ai/concrete-ml

v0.5.0

Feature

  • Python 3.7 support (fef90d1)
  • Remove constraints in numpy_reduce_sum (89668bf)
  • Check if a network imported with import_qat=True is quantized (24e8f88)

Documentation

  • Move titanic notebook to use_case_examples and cleaned SentimentClassification notebook (14502f0)
concrete-ml - v0.4.0

Published by fd0r about 2 years ago

Summary

This version of Concrete-ML adds more support for quantization-aware training neural networks, adds decision tree-ensemble regressors, and includes additional linear regression models. For custom models, first-class support for Brevitas quantization aware training neural networks was added: a dedicated function imports models containing Brevitas layers directly. Design rules for these neural networks using Brevitas are detailed in the documentation. Moreover, quantization aware training is now the default for built-in neural networks, giving good accuracy out-of-the-box, with low bit-widths for weights, activations, and accumulators. Tree-based RandomForest and XGBoost regression models are now supported, while the linear regressors are complemented by the Ridge, Lasso, and ElasticNet models. Many usage example notebooks were added, showing how to use the new models, and also showing more complex use-cases such as sentiment analysis, MNIST classification, and Kaggle Titanic dataset classification.

Links

Docker Image: zamafhe/concrete-ml:v0.4.0
pip: https://pypi.org/project/concrete-ml/0.4.0
Documentation: https://docs.zama.ai/concrete-ml/v/0.4/

v0.4.0

Feature

  • Add a XGBoost regression tutorial (#1911) (174f6f7)
  • Add encrypted sentiment analysis demo (fd684df)
  • Make net_inputs and net_ouputs optional (5ed9476)
  • Add RandomForestRegressor (0c7853c)
  • Add XGBRegressor (9736557)
  • Add tree-regressor (5b12d53)
  • Add Ridge, Lasso and ElasticNet regression models. (675c7b3)
  • Import Quantized Brevitas ONNX graphs and upgrade QAT notebook (13d8d74)

Fix

  • Remove pygraphviz dependancy (f708ba7)
  • Flaky client server (#1927) (d162cd6)
  • Tweedie overflow underterministic bug (922d60e)
  • XGBRegressor verifies that n_targets is 1 (a15fe9d)
  • Make linear models with fit_intercept=False possible (90a50b4)
  • Add quantize_inputs_with_net_outputs_precision to calibration process (1dd9ba3)

Documentation

  • Update p_error with api call (d214216)
  • Improve ClassifierComparison notebook (f45b79f)
  • Integration of API docs with lazydocs (985d0d5)
  • Major Revision of Inner Workings and integration of Quantization Aware Training (accfd3e)
  • Improve contribution doc (0a0534a)
  • Adding new models to the docs (081d8f9)
  • Be more precise on installation (88fed0b)
  • Improve our README (b2d81e4)
  • Decrease net_ouputs values from 8 to 5 bits in notebooks (49717bf)
  • Add comment about tqdm in linear.md (ba06e5e)
  • Update the LICENSE (30b2b27)
  • Add tqdm and remove inference slicing in titanic notebook (4419438)
Package Rankings
Top 6.84% on Pypi.org