XanaduAI / strawberryfields

Strawberry Fields is a full-stack Python library for designing, simulating, and optimizing continuous variable (CV) quantum optical circuits.
https://strawberryfields.ai
Apache License 2.0
754 stars 191 forks source link

Add embedding submodule for training GBS distributions #388

Closed ixfoduap closed 4 years ago

ixfoduap commented 4 years ago

This PR adds a submodule for embedding trainable parameters for GBS distributions. It is part of a new train module in the apps layer dedicated to training and optimizing GBS distributions.

The core functionality is the ability to express GBS parameters (weights) as a function of trainable parameters. This includes calculating derivatives of weights with respect to the parameters, which will be required for gradient-based optimization

codecov[bot] commented 4 years ago

Codecov Report

Merging #388 into master will increase coverage by 0.00%. The diff coverage is 100.00%.

@@           Coverage Diff           @@
##           master     #388   +/-   ##
=======================================
  Coverage   97.78%   97.78%           
=======================================
  Files          52       54    +2     
  Lines        6448     6468   +20     
=======================================
+ Hits         6305     6325   +20     
  Misses        143      143           
Impacted Files Coverage Δ
strawberryfields/apps/__init__.py 100.00% <100.00%> (ø)
strawberryfields/apps/train/__init__.py 100.00% <100.00%> (ø)
strawberryfields/apps/train/embed.py 100.00% <100.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 1698b95...bf50467. Read the comment docs.