sissa-data-science / DADApy

Distance-based Analysis of DAta-manifolds in python
https://dadapy.readthedocs.io/
Apache License 2.0
108 stars 18 forks source link

BID #140

Closed acevedo-s closed 2 months ago

acevedo-s commented 4 months ago

Proposed changes

  1. Routines to calculate the Intrinsic Dimension of binary data (BID) . The routines are independent of the rest of DADApy, and they use extensively cpu-JAX instead of Cython.

  2. With the help of @vdeltatto I added JAX and JAXLIB as a dependencies, and it is only possible to add both for python >=3.8. In the modifications I'm updating the requirement for python>=3.8 in pyproject.toml and I removed the tests for python 3.7

Questions:

  1. Would everyone be fine with requiring python >= 3.8 ? As an example, Ulysses has python 3.8 as the newest python version available in the "module avail" list.

Comments:

  1. JAX-CUDA is quite problematic for version-compatibilities. For JAX-CPU it does not seem to be the case. Meaning: This works fine, but when someone adds something using JAX-CUDA, as @vdeltatto, specific versions for JAX,JAXLIB and python are going to be required.

TODO:

  1. Docstrings are not amazing.
  2. I'd like some opinion about the tutorial, i.e., if it is clear and useful to start using the code.