Changelog#
[1.5.3.1] - 2023-11-16#
MlToolBox improvements.
s390x related fixes.
[1.5.3.0] - 2023-06-27#
HEbase: Add Multi-Party FHE support for Palisade.
HEbase: Support for decreasing the rotation keys size while using HeaanContext, by setting the gadget rank and the size of the temporary primes when possible from a security standpoint (see HEaaN documentation for further details about gadget rank and temporary primes).
Math: Support for linear regression estimation. It is available through the LogisticRegression class by setting the activation type to none (LR_ACTIVATION_NONE).
Math: Tile tensor supports diagonalization techniques in matrix multiplication. See CTileTensor::getMatrixMultiplication().
Math: Convolution operator supports any arrangement of image, channels, filter, and batch dimensions.
AI: Extended functionality for neural networks: support new operators (MatMul, Mul and Add over N-dimensional tensors with broadcasting, Transpose, Squeeze, Unsqueeze, ReduceSum, ReduceMean), removal of restrictions (structure of CNNs, in which the location of fully-connected and flatten layers is flexible).
AI: Support generic packing of inputs for AI models. Some details on generic packing can be found at the methods HeContext::initForGenericPacking(), TTEncoder::encodeEncryptGenericPacking() and HeRunRequirements::setSimpleGenericPacking().
Examples: Added demo of linear regression estimation with Multi-Party FHE (C++ and Python).
Examples: Added range query example (C++).
Upgraded HEaaN backend to 0.2.0.
New HElayers website and API documentation.
[1.5.2.0] - 2023-02-28#
CircLayer: Improved API, support bootstrapping operators, new C++ tutorials in helayers-lab.
AES decryption under FHE; AI supports AES-encrypted inputs.
Extended CTile API: Added polymorphic binary operations that accept a Tile as second argument.
New TTFunctionEvaluator::compare() for comparing tile tensors.
New CTileTensor::shiftAlongDim() for shifting a tile tensor.
HeContext: Create context from a prioritized list of context names.
Performance: Improve simulations of deep computations; enable unlimited depth in simulations.
Performance: Replace integer multiply with additions in SealCkksCiphertext (when it’s empirically faster).
Upgraded HEaaN backend to 0.1.0, and added HEaaN to the pyhelayers wheels.
Added Lattigo backend.
Added macOS Intel 64-bit build for pyhelayerslite wheel.
[1.5.1.0] - 2022-11-30#
New notebooks with thorough explanations of Tile Tensors.
ARIMA: Add support for parameter d=1 in training and prediction. Now supporting all models of type ARIMA(p=*,d=0/1,q=1).
Python: CTile now supports multiply_scalar with integer, multiply_imaginary_unit, and nullify_imaginary_part.
[1.5.0.3] - 2022-11-02#
A new API for HeModel and PlainModel: Includes support for training, multiple inputs/outputs.
pyhelayers: Added some missing HeConfigRequirement methods.
MockupContext includes operation counts tracking.
Tile tensors: Rotate method now supports interleaved dimensions.
Tile tensors: A new printing mode for tile tensor that prints tiles.
[1.4.0.5] - 2022-07-19#
Fix a bug in which encode() and encode_encrypt() encoded Python lists of doubles as lists of integers.
Allow XGBoost inference using HeModel interface.
XGBoost demo notebook: Use HeProfileOptimizer to find optimal packing configuration and context parameters; encrypt and decrypt using IoProcessor.
[1.4.0.4] - 2022-06-27#
Fix bug in XGBoost inference when a tree has a single leaf node.
[1.4.0.3] - 2022-06-21#
mltoolbox: Improve trainer API; add starting_point() helper
[1.4.0.2] - 2022-06-13#
Add support for HEaaN on IBM Z (s390x)
Bug fixes
[1.4.0.1] - 2022-06-06#
‘accord’ submodule in pyhelayers: MPC and ZK, including demo notebooks.
‘mltoolbox’ submodule in pyhelayers: Convert a network to be HE friendly. Including a new demo notebook.
ARIMA model training and prediction, including a new demo notebook.
Added automatic bootstrapping to logistic regression training.
Upgraded to HEaaN 3.5.0.
Added support for Batch Normalization layer in NN.
Added optimization of rotation keys in HE models: Optimizer to detect and include only the necessary rotation keys in the HE context.
New demo notebook for deep neural networks: AlexNet, SqueezeNet and ResNet-18.
New demo notebook for FHE XGBoost inference over the iris dataset.
[1.3.0] - 2022-04-03#
Support for HEaaN as backend
Added helayerslite - a basic version of the library.
helayerslite compiled for WASM (Web assembly)
Faster logistic regression training
Support for convolution with custom padding