Skip to content

v0.4.0

Compare
Choose a tag to compare
@fd0r fd0r released this 19 Oct 09:33
· 15 commits to release/0.3.x since this release
v0.4.0

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)