v0.2.4
Pre-release
Pre-release
Changes since 0.2.3
New functionality:
- Added the option to compute
tanh
using sigmoid or Chebyshev approximation (#3113 by @gmuraru) - Added model parameters as a default optimizer parameter in
FederatedClient
(#3117 by @gconst02) - Added an
Optims
class to track remote optimizers in federated learning (#3179 by @rimijoker) - Added the ability to use a
Plan
input as an output (#3199 by @tudorcebere) - Added the ability to send and get
Datasets
(#2960 by @abogaziah)
Refactoring:
- Extensive improvements
Plan
,Placeholder
, and the Torch hook (#3080 by @LaRiffle) - Split
Operation
class into separate message and action classes (#3132 and #3168 by @Jasopaum and @karlhigley) - Added a new message for executing non-tensor operations on remote workers (#3048 by @midokura-silvia)
- Reworked
BaseWorker's
message router to use message classes in handler functions (#3175 by @Jasopaum and @karlhigley) - Standardized the names of command message to
TensorCommandMessage
,PlanCommandMessage
, andWorkerCommandMessage
(#3198 by @karlhigley) - Moved the
Placeholder
class to theexecution
package (#3211 by @karlhigley) - Converted existing formatted strings to f-strings for consistency and performance (#3186 by @TTitcombe
- Replaced zstd compression library with zlib (#3150 and #3164 by @refactormyself)
Bug fixes:
- Fixed
VirtualWorker
message sending test (#3139 by @gmuraru) - Fixed event loop error when starting a
WebsocketServerWorker
in a notebook (#3196 by @imskr and #3204 by @gmuraru) - Stopped creating grad tensors for frozen layers (#3200 by @tudorcebere)
Documentation:
- Added homomorphic encryption to the Introduction section (#3135 by @LaRiffle)
- Updated supported PyTorch version to 1.4 (#3140 by @codeboy5)
- Added a note about support Python versions (#3154 by @J-Yash)
- Added a note about using Python 3.7 with conda (#3162 by @teddykoker)
- Added docstrings to callable pointer tests (#3130 by @steph-en-m)
- Added instructions for installing TF Encrypted (#3197 by @rimijoker)
Tutorials:
- Fixed FL training plan tutorials and added a PyGrid FL hosting example (#3185 by @vvmnnnkv)
- Cleaned up the tutorials directory structure (#3159 by @bicycleman15)
- Removed a stray cell from Part 5 - Welcome to the Sandbox (#3155 by @bicycleman15)
- Removed unnecessary
requires_grad
in Part 2 (#3216 by @bicycleman15)
Translations:
- Bengali:
- Part 3 (#3133 by @adventuroussrv), Parts 4 and 5 (#3121 by @jabertuhin)
- German:
- Part 1 (#3178 by @vineetjai)
Builds:
- Set up code owners to automatically request reviews from the relevant OpenMined teams for various parts of the PySyft codebase (#3192 and #3215 by @karlhigley, @LaRiffle, and @AlanAboudib)