Skip to main content

Robust heteroskedastic matrix factorisation in JAX.

Project description

Robusta-HMF

jax implementation of robust heteroskedastic matrix factorisation. Robusta like the coffee bean, get it?

Installation

Easiest is from PyPI either with pip

pip install robusta-hmf

or uv (recommended)

uv add robusta-hmf

Or, you can clone and build from source

git clone git@github.com:TomHilder/robusta-hmf.git
cd robusta-hmf
pip install -e .

Usage

TODO

Citation

TODO

Help

TODO

TODOs

  • Port Hogg's existing code and make sure it builds/installs*
  • Port to equinox*
  • Type checking with mypy*
  • Add dependency injection for the following:*
    • Optimisation method, IRLS, SGD (directly optimising objective, see robust_hmf_notes.pdf)
      • Potentially dask and batching support for SGD
    • w-steps. Each w-step corresponds to a different likelihood. Hogg's is Cauchy. We should let this flexible*
    • Initialisation.
    • Re-orientation. Can easily imagine wanting something cheaper for really big data.
  • Add a save and restore method. Probably avoid pickle/dill and instead encapsulate info in serialisable way and then rebuild model upon loading
    • Eh maybe, maybe not
  • Tests!*
  • CI, automated tests, automated relases, and PyPI*
  • Relax version requirements since uv by default is newest everything

(*) = Priority

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

robusta_hmf-0.0.2.tar.gz (14.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

robusta_hmf-0.0.2-py3-none-any.whl (18.3 kB view details)

Uploaded Python 3

File details

Details for the file robusta_hmf-0.0.2.tar.gz.

File metadata

  • Download URL: robusta_hmf-0.0.2.tar.gz
  • Upload date:
  • Size: 14.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for robusta_hmf-0.0.2.tar.gz
Algorithm Hash digest
SHA256 f3c1ee20ea723b721a65fe47c9af1cda059e002eb66057cfbbafd4839d30ad89
MD5 43c40cf6b57f54588762cadf0a15e3c0
BLAKE2b-256 ba74f3072eecd9958d06dcd49ee4af2cf196de41f9231ca57fff2181e6ec6127

See more details on using hashes here.

Provenance

The following attestation bundles were made for robusta_hmf-0.0.2.tar.gz:

Publisher: release.yml on TomHilder/robusta-hmf

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file robusta_hmf-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: robusta_hmf-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 18.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for robusta_hmf-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 dd32d8c44d040dea582cb4224e72adc81ec45058bb88a3a36a5ed713d3385572
MD5 7962d48368ec125fde3ecf702851cbd2
BLAKE2b-256 eb21add6f14082b2fe4042984d098c34f2d6d3c2545615f3a936783376898476

See more details on using hashes here.

Provenance

The following attestation bundles were made for robusta_hmf-0.0.2-py3-none-any.whl:

Publisher: release.yml on TomHilder/robusta-hmf

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page