Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compute Backends and Automatic Differentiation #581

Open
wants to merge 312 commits into
base: main
Choose a base branch
from

Conversation

marvinpfoertner
Copy link
Collaborator

@marvinpfoertner marvinpfoertner commented Nov 25, 2021

In a Nutshell

This PR introduces compute backends and automatic differentiation in ProbNum.

Detailed Description

  • Currently supported backends
    • NumPy
    • Jax
    • PyTorch

TODO

  • fix failing tests (NumPy)
  • port test_normal.py to pytest-cases
  • SymmetricMatrixNormal in linear solver
  • add (short) summary of testing best practices to the developer documentation
  • create issues for most pressing backlog items
  • check that we comply with https://data-apis.org/array-api/latest/
  • define interfaces for linalg.cholesky and related functions complying with array api standard
  • implement most important linalg functions from the array api standard in backend
  • create configs which sets the default dtype and device of Arrays
  • rng_state_from_sampling_args
  • remove nuggets in Normal Cholesky
  • revert to SVD if Normal.cov not invertible (only when sampling)
  • rename seed -> rng_state
  • remove array in favor of asarray
  • as_array etc. -> asarray
  • fix doc build (merge Improved type hints in documentation #662 first)
  • move backend types (Scalar{Type, Like}, Array{Type, Like}, Shape{Type, Like}, Seed{Type, Like}) to backend?

Related Issues

None

@marvinpfoertner marvinpfoertner added refactoring Refactoring of existing functionality feature request Requests for features to be implemented improvement Improvements of existing functionality labels Nov 25, 2021
@marvinpfoertner marvinpfoertner added this to In progress in ProbNum Development via automation Nov 25, 2021
@marvinpfoertner marvinpfoertner force-pushed the ad-prototype branch 3 times, most recently from 9772cb8 to 3c8203d Compare November 30, 2021 16:56
@marvinpfoertner marvinpfoertner marked this pull request as ready for review December 2, 2021 11:28
@marvinpfoertner marvinpfoertner removed the request for review from pnkraemer December 14, 2021 12:03
@review-notebook-app
Copy link

Check out this pull request on  ReviewNB

See visual diffs & provide feedback on Jupyter Notebooks.


Powered by ReviewNB

@neildhir
Copy link

Hi, just wanted to see if there is any update on this? Thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature request Requests for features to be implemented improvement Improvements of existing functionality refactoring Refactoring of existing functionality
Projects
Development

Successfully merging this pull request may close these issues.

None yet

3 participants