CQCL / lambeq

A high-level Python library for Quantum Natural Language Processing
https://cqcl.github.io/lambeq-docs
Apache License 2.0
451 stars 108 forks source link

[UnitaryHack] Added Rotosolve optimizer #93

Closed Shiro-Raven closed 1 year ago

Shiro-Raven commented 1 year ago

PR adds the Rotosolve optimizer from the paper from Ostaszewski et al. to Lambeq.

Addresses #85.

Thommy257 commented 1 year ago

One note: model(diagrams) returns the circuit result for each diagram. You will also need to take the loss function into account. Otherwise, it won't be possible to calculate the updated theta.

Also have a look at the tests, there are some linting issues.

Thommy257 commented 1 year ago

Hi @Shiro-Raven. Please check the initial github issue. I've created an example notebook to test your optimiser.

dimkart commented 1 year ago

@Shiro-Raven Hi, please use the notebook provided by @Thommy257 in the issue to check your optimiser, so we can proceed and assign the task to you.

Note that currently one test is failing, but it's not relevant to your PR -- we'll have a look at it at some point.

le-big-mac commented 1 year ago

@Shiro-Raven we've fixed the test error, so if you merge those changes into your PR all the tests should now pass.

dimkart commented 1 year ago

@Shiro-Raven Please address any remaining comments by tomorrow 13/6, last day of the hackathon.

natestemen commented 1 year ago

Just to clarify here, hackers have until June 20th to fully finalize contributions to be eligible for a unitaryHACK bounty. The June 13th deadline was for submitting pull requests.

dimkart commented 1 year ago

Just to clarify here, hackers have until June 20th to fully finalize contributions to be eligible for a unitaryHACK bounty. The June 13th deadline was for submitting pull requests.

@natestemen Noted, thanks.