Skip to content

v0.0.17

Compare
Choose a tag to compare
@pnkraemer pnkraemer released this 28 May 07:27
· 28 commits to main since this release
a91486b

This release is a slightly bigger deal than the previous ones because it contains the algorithms from the (just published!)

Gradients of functions of large matrices. Nicholas Krämer, Pablo Moreno-Munoz, Hrittik Roy, Søren Hauberg. Preprint on arXiv:2405.17277. 2024.

Here is a link to the preprint.

To be precise, with release v0.0.17, Matfree will provide efficient gradients of Lanczos and Arnoldi iterations, which makes much of matrix-free linear algebra reverse-mode differentiable! To access this code, continue using matfree.tridiag_sym and matfree.hessenberg, and ensure that custom_vjp is set to True.

Other changes include a new Hessenberg-factorisation via the Arnoldi iteration, some information regarding citations and Matfree's API policy, removing matfree.pinv, and moving matfree.decomp.svd_approx to matfree.eig.svd_partial. The full changelog is below.

What's Changed

  • Implement decomp.hessenberg() via the Arnoldi decomposition by @pnkraemer in #192
  • Implement differentiable Lanczos and Arnoldi iterations by @pnkraemer in #193
  • Add citation information to matfree's Arnoldi and Lanczos iterations by @pnkraemer in #197
  • Remove matfree.pinv and implement matfree.eig by @pnkraemer in #198
  • Explain Matfree's API policy by @pnkraemer in #199

Full Changelog: v0.0.16...v0.0.17