Changelog#
Generated from merged pull requests with build_tools/changelog.py; see that file’s
docstring for how classification works.
0.1.0#
First release on PyPI. PyQit puts a Trainer, a DataModule and model classes on top of
PennyLane QNodes, so training a variational circuit is a fit call. PyTorch and
PyTorch Lightning are optional: pyqit.set_backend("torch") moves the same code onto
Lightning.
What is added:
Models.
VQCClassifier,VQCRegressor,DataReuploadingClassifierand the hybridDressedQuantumClassifier.QuantumLayer,DenseLayerandDenseClassifierare the stages hybrids are built from.Circuits. Embeddings
AngleEmbedding,HadamardAngleEmbedding,AmplitudeEmbedding,IQPEmbeddingandZZFeatureMap; ansatzesSELAnsatz,RealAmplitudesAnsatz,EfficientSU2Ansatz,SimplifiedTwoDesignAnsatz,BasicEntanglerAnsatzandCNOTLadderAnsatz; measurementsmeasure_probs,measure_expval_z,measure_expval_xandmeasure_parity_z.Training.
Trainerwith per-weight-group learning rates,diff_methodselection, and acheck_bp=Truebarren-plateau pre-flight.EarlyStopping,ModelCheckpointandHistoryCallbackwork on both backends; checkpoints hold weights, optimizer state and history, and resume from any of them.Data.
DataModulesplits, normalizes on the train split only, and prescales inputs for the model’s embedding.DataModule.save/loadandfor_predictionreuse a fitted DataModule on new rows.Pipelines.
QuantumPipelinechains stages sequentially, as an ensemble, or trains them jointly as one hybrid network.Losses.
MSELoss,HingeLoss,CrossEntropyLoss, or any callable.Devices. Any PennyLane device name,
lightning.qubitand the PennyLane-Qiskit plugin included, via theqiskitextra.
Bug fixes#
Bugfixes (#35) by @phoeenniixx
bugfixes and removal of dead code (#20) by @phoeenniixx
Enhancements#
add diff_method, run the nb and parameter shift debug (#46) by @phoeenniixx
update tutorials and add tags collection (#43) by @phoeenniixx
Add dm checkpointing, update model checkpoint, chack_bp debug for joint pipeline (#42) by @phoeenniixx
Add pipeline support for hybrid models (#40) by @phoeenniixx
Add new Models (#38) by @phoeenniixx
add new anastz (#37) by @phoeenniixx
refactor vqc and add ZZFeatureMap (#36) by @phoeenniixx
Improve API (#34) by @phoeenniixx
add test and validate API end points to trainer and pipeline (#33) by @phoeenniixx
debugging and add tests for datamodule and pipeline (#31) by @phoeenniixx
add readthedocs (#28) by @phoeenniixx
add pennylane tensor as return_format option (#24) by @phoeenniixx
Refactor Trainer (#21) by @phoeenniixx
Major - 2 (#17) by @phoeenniixx
Major updates - 2 (#3) by @phoeenniixx
add vectorization (#1) by @phoeenniixx
Documentation#
update docs to use tags (#44) by @phoeenniixx
update docs (#41) by @phoeenniixx
update docs (#39) by @phoeenniixx
add new pyqit icon (#29) by @phoeenniixx
Add docs, community md etc (#25) by @phoeenniixx
Add a new callbacks nb and fix a cross-entropy bug found due to new pennylane ver (#23) by @phoeenniixx
update nbs, Readme and add workflows to run nbs (#22) by @phoeenniixx
Maintenance#
[Dependabot](deps): Update scikit-base requirement from <1.1.0 to <1.2.0 (#18) by @app/dependabot
[Dependabot](deps): Bump actions/setup-python from 6 to 7 (#16) by @app/dependabot
[Dependabot](deps): Bump actions/checkout from 6 to 7 (#15) by @app/dependabot
[Dependabot](deps): Update scikit-base requirement from <0.14.0 to <1.1.0 (#12) by @app/dependabot
[Dependabot](deps-dev): Update setuptools requirement from >=70.0.0 to >=82.0.1 (#11) by @app/dependabot
[Dependabot](deps-dev): Update torch requirement from !=2.0.1,<3.0.0,>=2.0.0 to !=2.0.1,>=2.11.0,<3.0.0 (#10) by @app/dependabot
[Dependabot](deps): Update scikit-learn requirement from <2.0,>=1.2 to >=1.7.2,<2.0 (#9) by @app/dependabot
[Dependabot](deps): Update pandas requirement from <3.1.0,>=1.3.0 to >=2.3.3,<3.1.0 (#8) by @app/dependabot
[Dependabot](deps-dev): Update ipywidgets requirement from <9.0.0,>=8.0.1 to >=8.1.8,<9.0.0 (#7) by @app/dependabot
Needs a label#
Minor update - 1 (#13) by @phoeenniixx