Recent Releases of GPJax

GPJax - v0.11.2

What's Changed

  • Fix import of PjitFunction by @stephen-huan in https://github.com/JaxGaussianProcesses/GPJax/pull/521
  • Bump version by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/522

Full Changelog: https://github.com/JaxGaussianProcesses/GPJax/compare/v0.11.1...v0.11.2

Scientific Software - Peer-reviewed - Python
Published by thomaspinder 12 months ago

GPJax - v0.11.1

What's Changed

  • Add extra tests by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/507
  • Introduce NonNegativeReal parameters by @jamesbriant in https://github.com/JaxGaussianProcesses/GPJax/pull/512
  • Add fit_lbfgs using Optax by @theo-brown in https://github.com/JaxGaussianProcesses/GPJax/pull/514
  • bump patch version by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/517

New Contributors

  • @jamesbriant made their first contribution in https://github.com/JaxGaussianProcesses/GPJax/pull/512
  • @theo-brown made their first contribution in https://github.com/JaxGaussianProcesses/GPJax/pull/514

Full Changelog: https://github.com/JaxGaussianProcesses/GPJax/compare/v0.11.0...v0.11.1

Scientific Software - Peer-reviewed - Python
Published by thomaspinder about 1 year ago

GPJax - v0.11.0

What's Changed

  • Add JIT-safe assertions by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/504
  • Numpyro distribution by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/506

Full Changelog: https://github.com/JaxGaussianProcesses/GPJax/compare/v0.10.1...v0.11.0

Scientific Software - Peer-reviewed - Python
Published by thomaspinder about 1 year ago

GPJax - v0.10.1

What's Changed

  • Make zero-mean fn. constant a Static class by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/500

Full Changelog: https://github.com/JaxGaussianProcesses/GPJax/compare/v0.10.0...v0.10.1

Scientific Software - Peer-reviewed - Python
Published by thomaspinder about 1 year ago

GPJax - v0.10.0

What's Changed

  • Unpin cola/jax/jaxlib/flax by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/503

Full Changelog: https://github.com/JaxGaussianProcesses/GPJax/compare/v0.9.5...v0.10.0

Scientific Software - Peer-reviewed - Python
Published by thomaspinder about 1 year ago

GPJax - v0.9.5

What's Changed

  • Fix jaxtyping and flax issues in tests by @stephen-huan in https://github.com/JaxGaussianProcesses/GPJax/pull/498
  • Deprecate decision making by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/501
  • Move to MIT license by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/502

Full Changelog: https://github.com/JaxGaussianProcesses/GPJax/compare/v0.9.4...v0.9.5

Scientific Software - Peer-reviewed - Python
Published by thomaspinder about 1 year ago

GPJax - v0.9.4

What's Changed

  • Fix optional array arguments in class constructors by @stefanocortinovis in https://github.com/JaxGaussianProcesses/GPJax/pull/488
  • Fix broken latex equations by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/489
  • fix: update links in documentation to use the correct path for examples by @Qazalbash in https://github.com/JaxGaussianProcesses/GPJax/pull/491
  • update README regression example with negative objective by @huylenguyen in https://github.com/JaxGaussianProcesses/GPJax/pull/492
  • Fix tests with jax 0.5.1 by @stephen-huan in https://github.com/JaxGaussianProcesses/GPJax/pull/494

New Contributors

  • @Qazalbash made their first contribution in https://github.com/JaxGaussianProcesses/GPJax/pull/491
  • @huylenguyen made their first contribution in https://github.com/JaxGaussianProcesses/GPJax/pull/492

Full Changelog: https://github.com/JaxGaussianProcesses/GPJax/compare/v0.9.3...v0.9.4

Scientific Software - Peer-reviewed - Python
Published by thomaspinder over 1 year ago

GPJax - v0.9.3

What's Changed

  • optional solveralgorithm parameter to sampleapprox by @theorashid in https://github.com/JaxGaussianProcesses/GPJax/pull/478
  • Fix broken examples by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/480
  • Fix callbacks by @stefanocortinovis in https://github.com/JaxGaussianProcesses/GPJax/pull/483
  • Fix Static check in Gaussian likelihood by @stefanocortinovis in https://github.com/JaxGaussianProcesses/GPJax/pull/484
  • Allow to pass trainable inducing inputs to AbstractVariationalGaussian by @stefanocortinovis in https://github.com/JaxGaussianProcesses/GPJax/pull/485
  • Swap collapsedvi.md and uncollapsedvi.md by @stefanocortinovis in https://github.com/JaxGaussianProcesses/GPJax/pull/486
  • Bump project version to 0.9.3 by @stefanocortinovis in https://github.com/JaxGaussianProcesses/GPJax/pull/487

New Contributors

  • @stefanocortinovis made their first contribution in https://github.com/JaxGaussianProcesses/GPJax/pull/483

Full Changelog: https://github.com/JaxGaussianProcesses/GPJax/compare/v0.9.1...v0.9.3

Scientific Software - Peer-reviewed - Python
Published by thomaspinder over 1 year ago

GPJax - v0.9.1

What's Changed

  • Add workflow dispatch by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/466
  • Add Hatch by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/468
  • Add workflow by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/470
  • Remove progress_bar.py by @daniel-dodd in https://github.com/JaxGaussianProcesses/GPJax/pull/472
  • Remove redundant pyspelling files by @daniel-dodd in https://github.com/JaxGaussianProcesses/GPJax/pull/473

Full Changelog: https://github.com/JaxGaussianProcesses/GPJax/compare/v0.9.0...v0.9.1

Scientific Software - Peer-reviewed - Python
Published by thomaspinder almost 2 years ago

GPJax - v0.9.0

Key Changes

In v0.9.0, the backend of GPJax has migrated to the NNX module of Flax (h/t @cgarciae) . This allows us to assign structure to our parameters, hook into Flax's ecosystem, and simplify our underlying code. From a frontend perspective, you may now assign a type to your parameters e.g., PositiveReal and easily invoke the state of your GP.

State

For any component of GPJax, such as a kernel, mean function, prior or posterior GP.etc, you may now realise the state of the component using nnx.Split. For example, the state of a Matérn kernel would be realised by kernel = gpx.kernels.Matern32() _, params = nnx.split(kernel, gpx.parameters.Parameter) This allows users to have low-level control over the exact operations that are made on the parameters. We detail this fully in the Parameters section of our Model Guide notebook.

Parameters

We now recognise the support that a parameter. For example, strictly positive parameters such as the lengthscale or variance are instantiated via the PositiveReal parameter. Meanwhile, parameters that are constrained to be lower triangular matrix are instantiated through the LowerTriangular parameter.

What's Changed

  • Point CoC breaches to our contact form. by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/451
  • Quick fix to stop automatic switch to CG by @henrymoss in https://github.com/JaxGaussianProcesses/GPJax/pull/454
  • Fix some type annotations causing failing tests by @stephen-huan in https://github.com/JaxGaussianProcesses/GPJax/pull/456
  • Feature: Adds probability of improvement as an acquisition function by @miguelgondu in https://github.com/JaxGaussianProcesses/GPJax/pull/458
  • Add expected improvement utility function by @Thomas-Christie in https://github.com/JaxGaussianProcesses/GPJax/pull/460
  • feat(gpjax/kernels/base.py): add diagonal by @stephen-huan in https://github.com/JaxGaussianProcesses/GPJax/pull/429
  • Flax/nnx backend by @frazane in https://github.com/JaxGaussianProcesses/GPJax/pull/440

New Contributors

  • @stephen-huan made their first contribution in https://github.com/JaxGaussianProcesses/GPJax/pull/456
  • @miguelgondu made their first contribution in https://github.com/JaxGaussianProcesses/GPJax/pull/458

Full Changelog: https://github.com/JaxGaussianProcesses/GPJax/compare/v0.8.2...v0.9.0

Scientific Software - Peer-reviewed - Python
Published by thomaspinder almost 2 years ago

GPJax - v0.8.2

What's Changed

  • add missing jaxopt dependency by @st-- in https://github.com/JaxGaussianProcesses/GPJax/pull/445
  • Bump to v0.8.2 by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/448

Full Changelog: https://github.com/JaxGaussianProcesses/GPJax/compare/v0.8.1...v0.8.2

Scientific Software - Peer-reviewed - Python
Published by thomaspinder about 2 years ago

GPJax - v0.8.1

What's Changed

  • Fix broken docs by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/424
  • Add generic typing information for gps objects by @frazane in https://github.com/JaxGaussianProcesses/GPJax/pull/425
  • Perhaps finally a decent LBFGS? by @henrymoss in https://github.com/JaxGaussianProcesses/GPJax/pull/426
  • Fix BO notebook by @Thomas-Christie in https://github.com/JaxGaussianProcesses/GPJax/pull/430
  • Clean up intro to kernels notebook by @st-- in https://github.com/JaxGaussianProcesses/GPJax/pull/432
  • Update introtogps.py by @neel-maniar in https://github.com/JaxGaussianProcesses/GPJax/pull/433
  • Minor typos in mathematical definitions in introtogps.py by @neel-maniar in https://github.com/JaxGaussianProcesses/GPJax/pull/434
  • Minor typo in analytic expression for Bayesian evidence in introtog… by @neel-maniar in https://github.com/JaxGaussianProcesses/GPJax/pull/438
  • Fixed mutable default value error in VelocityKernel and HelmholtzKernel dataclasses in python 3.11 by @wejpurvis in https://github.com/JaxGaussianProcesses/GPJax/pull/439
  • Update dependencies by @Thomas-Christie in https://github.com/JaxGaussianProcesses/GPJax/pull/442
  • Bump version by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/443

New Contributors

  • @neel-maniar made their first contribution in https://github.com/JaxGaussianProcesses/GPJax/pull/433
  • @wejpurvis made their first contribution in https://github.com/JaxGaussianProcesses/GPJax/pull/439

Full Changelog: https://github.com/JaxGaussianProcesses/GPJax/compare/v0.8.0...v0.8.1

Scientific Software - Peer-reviewed - Python
Published by thomaspinder over 2 years ago

GPJax - v0.8.0

Breaking changes

  • Dropped data masking, multi-output kernels
  • Namespace paths have changed to full-form i.e., gpx.Prior -> gpx.gps.Prior

What's Changed

  • Add search space class for BayesOpt by @Thomas-Christie in https://github.com/JaxGaussianProcesses/GPJax/pull/355
  • Add classes for forming acquisition functions by @Thomas-Christie in https://github.com/JaxGaussianProcesses/GPJax/pull/359
  • Add classes for handling posteriors during the decision making loop by @Thomas-Christie in https://github.com/JaxGaussianProcesses/GPJax/pull/362
  • Add logic for running a decision making loop by @Thomas-Christie in https://github.com/JaxGaussianProcesses/GPJax/pull/365
  • Prepare for future batching by @Thomas-Christie in https://github.com/JaxGaussianProcesses/GPJax/pull/385
  • Add decision making functionality by @Thomas-Christie in https://github.com/JaxGaussianProcesses/GPJax/pull/386
  • formatting and spelling by @ivanshalashilin in https://github.com/JaxGaussianProcesses/GPJax/pull/387
  • Multi output by @ingmarschuster in https://github.com/JaxGaussianProcesses/GPJax/pull/360
  • Quick fix to remove duplicate file by @henrymoss in https://github.com/JaxGaussianProcesses/GPJax/pull/395
  • Add governance doc by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/398
  • Fix obs_noise confusion by @henrymoss in https://github.com/JaxGaussianProcesses/GPJax/pull/400
  • bump cola to v0.0.5 by @daniel-dodd in https://github.com/JaxGaussianProcesses/GPJax/pull/405
  • Jaxopt 2 by @henrymoss in https://github.com/JaxGaussianProcesses/GPJax/pull/402
  • fix config import by @henrymoss in https://github.com/JaxGaussianProcesses/GPJax/pull/410
  • LOOCV objective by @henrymoss in https://github.com/JaxGaussianProcesses/GPJax/pull/412
  • Fix AnalyticalGuassianIntegrator by @meta-inf in https://github.com/JaxGaussianProcesses/GPJax/pull/414
  • Fix bug and add test. by @daniel-dodd in https://github.com/JaxGaussianProcesses/GPJax/pull/416
  • Fix typo in CollapsedELBO by @meta-inf in https://github.com/JaxGaussianProcesses/GPJax/pull/417
  • Bump version by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/411
  • Cleanup src by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/419
  • Update README.md by @daniel-dodd in https://github.com/JaxGaussianProcesses/GPJax/pull/418
  • Update typing.py by @daniel-dodd in https://github.com/JaxGaussianProcesses/GPJax/pull/423
  • Namespace cleanup by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/408

New Contributors

  • @meta-inf made their first contribution in https://github.com/JaxGaussianProcesses/GPJax/pull/414

Full Changelog: https://github.com/JaxGaussianProcesses/GPJax/compare/v0.7.0...v0.8.0

Scientific Software - Peer-reviewed - Python
Published by thomaspinder over 2 years ago

GPJax - v0.7.3

What's Changed

  • Jaxopt 2 by @henrymoss in https://github.com/JaxGaussianProcesses/GPJax/pull/402
  • fix config import by @henrymoss in https://github.com/JaxGaussianProcesses/GPJax/pull/410
  • LOOCV objective by @henrymoss in https://github.com/JaxGaussianProcesses/GPJax/pull/412
  • Fix AnalyticalGuassianIntegrator by @meta-inf in https://github.com/JaxGaussianProcesses/GPJax/pull/414
  • Fix bug and add test. by @daniel-dodd in https://github.com/JaxGaussianProcesses/GPJax/pull/416
  • Fix typo in CollapsedELBO by @meta-inf in https://github.com/JaxGaussianProcesses/GPJax/pull/417
  • Bump version by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/411

New Contributors

  • @meta-inf made their first contribution in https://github.com/JaxGaussianProcesses/GPJax/pull/414

Full Changelog: https://github.com/JaxGaussianProcesses/GPJax/compare/v0.7.2...0.7.3

Scientific Software - Peer-reviewed - Python
Published by daniel-dodd over 2 years ago

GPJax - v0.7.2

What's Changed

  • bump cola to v0.0.5 by @daniel-dodd in https://github.com/JaxGaussianProcesses/GPJax/pull/405

Full Changelog: https://github.com/JaxGaussianProcesses/GPJax/compare/v0.7.1...v0.7.2

Scientific Software - Peer-reviewed - Python
Published by thomaspinder over 2 years ago

GPJax - v0.7.1

What's Changed

  • Add search space class for BayesOpt by @Thomas-Christie in https://github.com/JaxGaussianProcesses/GPJax/pull/355
  • Add classes for forming acquisition functions by @Thomas-Christie in https://github.com/JaxGaussianProcesses/GPJax/pull/359
  • Add classes for handling posteriors during the decision making loop by @Thomas-Christie in https://github.com/JaxGaussianProcesses/GPJax/pull/362
  • Add logic for running a decision making loop by @Thomas-Christie in https://github.com/JaxGaussianProcesses/GPJax/pull/365
  • Prepare for future batching by @Thomas-Christie in https://github.com/JaxGaussianProcesses/GPJax/pull/385
  • Add decision making functionality by @Thomas-Christie in https://github.com/JaxGaussianProcesses/GPJax/pull/386
  • formatting and spelling by @ivanshalashilin in https://github.com/JaxGaussianProcesses/GPJax/pull/387
  • Multi output by @ingmarschuster in https://github.com/JaxGaussianProcesses/GPJax/pull/360
  • Quick fix to remove duplicate file by @henrymoss in https://github.com/JaxGaussianProcesses/GPJax/pull/395
  • Add governance doc by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/398
  • Fix obs_noise confusion by @henrymoss in https://github.com/JaxGaussianProcesses/GPJax/pull/400

Full Changelog: https://github.com/JaxGaussianProcesses/GPJax/compare/v0.7.0...v0.7.1

Scientific Software - Peer-reviewed - Python
Published by thomaspinder over 2 years ago

GPJax - v0.7.0

What's Changed

  • Benchmarking by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/319
  • CoLA integration by @daniel-dodd in https://github.com/JaxGaussianProcesses/GPJax/pull/370
  • Vector Fields Notebook by @ivanshalashilin in https://github.com/JaxGaussianProcesses/GPJax/pull/341

New Contributors

  • @ivanshalashilin made their first contribution in https://github.com/JaxGaussianProcesses/GPJax/pull/341

Full Changelog: https://github.com/JaxGaussianProcesses/GPJax/compare/v0.6.9...v0.7.0

What's Changed

  • Update README.md by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/250
  • Bump linkify-it-py from 2.0.0 to 2.0.2 by @dependabot in https://github.com/JaxGaussianProcesses/GPJax/pull/251
  • Bump JamesIves/github-pages-deploy-action from 4.1.6 to 4.4.1 by @dependabot in https://github.com/JaxGaussianProcesses/GPJax/pull/249
  • Bump actions/checkout from 2.3.1 to 3.5.2 by @dependabot in https://github.com/JaxGaussianProcesses/GPJax/pull/248
  • Bump actions/setup-node from 1 to 3 by @dependabot in https://github.com/JaxGaussianProcesses/GPJax/pull/247
  • Fix latex rending + minor typos. by @daniel-dodd in https://github.com/JaxGaussianProcesses/GPJax/pull/257
  • Update gpu guide to point to JAX installation guide. by @daniel-dodd in https://github.com/JaxGaussianProcesses/GPJax/pull/258
  • Tiny doc improvement by @henrymoss in https://github.com/JaxGaussianProcesses/GPJax/pull/264
  • Autogen code by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/265
  • Update CI by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/266
  • Add sharp bits doc by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/267
  • Add isotropy test by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/271
  • Update sharp_bits.md by @st-- in https://github.com/JaxGaussianProcesses/GPJax/pull/275
  • Fix doc build by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/281
  • Bugfix powered_exponential.py by @ingmarschuster in https://github.com/JaxGaussianProcesses/GPJax/pull/279
  • Static typing fixes by @frazane in https://github.com/JaxGaussianProcesses/GPJax/pull/285
  • WIP by @henrymoss in https://github.com/JaxGaussianProcesses/GPJax/pull/289
  • Abstract integrator by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/283
  • Add cite functionality by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/300
  • Add integrator/likelihoods doc by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/296
  • Smoke testing by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/307
  • Docstring tester by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/317
  • changed schedule peak_value to 1e-2 for the svgp notebook so it does not give nans by @stefanosele in https://github.com/JaxGaussianProcesses/GPJax/pull/324
  • Bugfix in BasisFunctionComputation by @frazane in https://github.com/JaxGaussianProcesses/GPJax/pull/326
  • Decouple kernel computation class initialisation from kernel by @frazane in https://github.com/JaxGaussianProcesses/GPJax/pull/328
  • Update contribution documentation by @Thomas-Christie in https://github.com/JaxGaussianProcesses/GPJax/pull/329
  • Add introductory kernel notebook and change style file path in notebooks by @Thomas-Christie in https://github.com/JaxGaussianProcesses/GPJax/pull/331
  • Add BO notebook by @Thomas-Christie in https://github.com/JaxGaussianProcesses/GPJax/pull/335
  • Fixed Polar GP example by @trsav in https://github.com/JaxGaussianProcesses/GPJax/pull/339
  • Merge in main by @ingmarschuster in https://github.com/JaxGaussianProcesses/GPJax/pull/346
  • Precision check feature by @trsav in https://github.com/JaxGaussianProcesses/GPJax/pull/347
  • Fix objectives tests by @Thomas-Christie in https://github.com/JaxGaussianProcesses/GPJax/pull/348
  • Categorical kernel by @ingmarschuster in https://github.com/JaxGaussianProcesses/GPJax/pull/345
  • Clarify docs by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/353
  • Support for missing values using masked dataset by @frazane in https://github.com/JaxGaussianProcesses/GPJax/pull/340
  • Bump jax and jaxlib versions by @Thomas-Christie in https://github.com/JaxGaussianProcesses/GPJax/pull/366
  • Fix bug in zero mean function and add test by @Thomas-Christie in https://github.com/JaxGaussianProcesses/GPJax/pull/358
  • Benchmarking by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/319
  • CoLA integration by @daniel-dodd in https://github.com/JaxGaussianProcesses/GPJax/pull/370
  • Vector Fields Notebook by @ivanshalashilin in https://github.com/JaxGaussianProcesses/GPJax/pull/341

New Contributors

  • @dependabot made their first contribution in https://github.com/JaxGaussianProcesses/GPJax/pull/251
  • @stefanosele made their first contribution in https://github.com/JaxGaussianProcesses/GPJax/pull/324
  • @trsav made their first contribution in https://github.com/JaxGaussianProcesses/GPJax/pull/339
  • @ivanshalashilin made their first contribution in https://github.com/JaxGaussianProcesses/GPJax/pull/341

Full Changelog: https://github.com/JaxGaussianProcesses/GPJax/compare/v0.6...v0.7.0

Scientific Software - Peer-reviewed - Python
Published by thomaspinder almost 3 years ago

GPJax - v0.6.9

What's Changed

  • Clarify docs by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/353
  • Support for missing values using masked dataset by @frazane in https://github.com/JaxGaussianProcesses/GPJax/pull/340
  • Bump jax and jaxlib versions by @Thomas-Christie in https://github.com/JaxGaussianProcesses/GPJax/pull/366
  • Fix bug in zero mean function and add test by @Thomas-Christie in https://github.com/JaxGaussianProcesses/GPJax/pull/358

Full Changelog: https://github.com/JaxGaussianProcesses/GPJax/compare/v0.6.8...v0.6.9

Scientific Software - Peer-reviewed - Python
Published by thomaspinder almost 3 years ago

GPJax - v0.6.8

What's Changed

  • Decouple kernel computation class initialisation from kernel by @frazane in https://github.com/JaxGaussianProcesses/GPJax/pull/328
  • Update contribution documentation by @Thomas-Christie in https://github.com/JaxGaussianProcesses/GPJax/pull/329
  • Add introductory kernel notebook and change style file path in notebooks by @Thomas-Christie in https://github.com/JaxGaussianProcesses/GPJax/pull/331
  • Add BO notebook by @Thomas-Christie in https://github.com/JaxGaussianProcesses/GPJax/pull/335
  • Fixed Polar GP example by @trsav in https://github.com/JaxGaussianProcesses/GPJax/pull/339
  • Merge in main by @ingmarschuster in https://github.com/JaxGaussianProcesses/GPJax/pull/346
  • Precision check feature by @trsav in https://github.com/JaxGaussianProcesses/GPJax/pull/347
  • Fix objectives tests by @Thomas-Christie in https://github.com/JaxGaussianProcesses/GPJax/pull/348
  • Categorical kernel by @ingmarschuster in https://github.com/JaxGaussianProcesses/GPJax/pull/345

New Contributors

  • @Thomas-Christie made their first contribution in https://github.com/JaxGaussianProcesses/GPJax/pull/329
  • @trsav made their first contribution in https://github.com/JaxGaussianProcesses/GPJax/pull/339

Full Changelog: https://github.com/JaxGaussianProcesses/GPJax/compare/v0.6.7...v0.6.8

Scientific Software - Peer-reviewed - Python
Published by thomaspinder almost 3 years ago

GPJax - v0.6.7

What's Changed

  • Add integrator/likelihoods doc by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/296
  • Smoke testing by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/307
  • Docstring tester by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/317
  • changed schedule peak_value to 1e-2 for the svgp notebook so it does not give nans by @stefanosele in https://github.com/JaxGaussianProcesses/GPJax/pull/324
  • Bugfix in BasisFunctionComputation by @frazane in https://github.com/JaxGaussianProcesses/GPJax/pull/326

New Contributors

  • @stefanosele made their first contribution in https://github.com/JaxGaussianProcesses/GPJax/pull/324

Full Changelog: https://github.com/JaxGaussianProcesses/GPJax/compare/v0.6.4...v0.6.7

Scientific Software - Peer-reviewed - Python
Published by thomaspinder almost 3 years ago

GPJax - v0.6.4

What's Changed

  • Add cite functionality by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/300

Full Changelog: https://github.com/JaxGaussianProcesses/GPJax/compare/v0.6.3...v0.6.4

Scientific Software - Peer-reviewed - Python
Published by thomaspinder about 3 years ago

GPJax - v0.6.3

What's Changed

  • Static typing fixes by @frazane in https://github.com/JaxGaussianProcesses/GPJax/pull/285
  • WIP by @henrymoss in https://github.com/JaxGaussianProcesses/GPJax/pull/289
  • Abstract integrator by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/283

Full Changelog: https://github.com/JaxGaussianProcesses/GPJax/compare/v0.6.2...v0.6.3

Scientific Software - Peer-reviewed - Python
Published by thomaspinder about 3 years ago

GPJax - v0.6.2

What's Changed

  • Fix latex rending + minor typos. by @daniel-dodd in https://github.com/JaxGaussianProcesses/GPJax/pull/257
  • Update gpu guide to point to JAX installation guide. by @daniel-dodd in https://github.com/JaxGaussianProcesses/GPJax/pull/258
  • Tiny doc improvement by @henrymoss in https://github.com/JaxGaussianProcesses/GPJax/pull/264
  • Autogen code by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/265
  • Update CI by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/266
  • Add sharp bits doc by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/267
  • Add isotropy test by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/271
  • Update sharp_bits.md by @st-- in https://github.com/JaxGaussianProcesses/GPJax/pull/275
  • Fix doc build by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/281
  • Bugfix powered_exponential.py by @ingmarschuster in https://github.com/JaxGaussianProcesses/GPJax/pull/279

New Contributors

  • @ingmarschuster made their first contribution in https://github.com/JaxGaussianProcesses/GPJax/pull/279

Full Changelog: https://github.com/JaxGaussianProcesses/GPJax/compare/v0.6.1...v0.6.2

Scientific Software - Peer-reviewed - Python
Published by thomaspinder about 3 years ago

GPJax - v0.6

What's Changed

  • Rectify predictive interval in examples/regression.pct.py by @patel-zeel in https://github.com/JaxGaussianProcesses/GPJax/pull/186
  • typo fixes by @st-- in https://github.com/JaxGaussianProcesses/GPJax/pull/187
  • pyspelling by @st-- in https://github.com/JaxGaussianProcesses/GPJax/pull/188
  • Correct key handling in examples by @frazane in https://github.com/JaxGaussianProcesses/GPJax/pull/191
  • Jaxkern merge by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/197
  • Jaxlinop merge by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/196
  • Docs pytree by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/211
  • Cleanup by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/205
  • Update README by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/220
  • Rff sampler by @henrymoss in https://github.com/JaxGaussianProcesses/GPJax/pull/195
  • Add minimal pytree checks for linops. (Better testing needed in future). by @daniel-dodd in https://github.com/JaxGaussianProcesses/GPJax/pull/222
  • Add pytree tests for gps (tests still need improving). by @daniel-dodd in https://github.com/JaxGaussianProcesses/GPJax/pull/223
  • Add minimal pytree tests for variational (tests need improving). by @daniel-dodd in https://github.com/JaxGaussianProcesses/GPJax/pull/224
  • Add tests for kernels and likelihoods by @frazane in https://github.com/JaxGaussianProcesses/GPJax/pull/225
  • Add save/load fns by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/228
  • Spatial modelling example with decoupled sampling by @frazane in https://github.com/JaxGaussianProcesses/GPJax/pull/234
  • Introduce beartype & fix types by @st-- in https://github.com/JaxGaussianProcesses/GPJax/pull/230
  • pre-commit setup & code changes by @st-- in https://github.com/JaxGaussianProcesses/GPJax/pull/241
  • Poisson likelihood by @frazane in https://github.com/JaxGaussianProcesses/GPJax/pull/231
  • Tidy up RFF and extra tests/formatting by @henrymoss in https://github.com/JaxGaussianProcesses/GPJax/pull/243
  • Arccosine kernel by @henrymoss in https://github.com/JaxGaussianProcesses/GPJax/pull/245
  • Add static field to base, update tests to run on 3.11, fix 3.11 compatibility by @daniel-dodd in https://github.com/JaxGaussianProcesses/GPJax/pull/246
  • Revamp docs by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/233
  • V0.6 by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/212

New Contributors

  • @henrymoss made their first contribution in https://github.com/JaxGaussianProcesses/GPJax/pull/195

Full Changelog: https://github.com/JaxGaussianProcesses/GPJax/compare/v0.5.9...v0.6

Scientific Software - Peer-reviewed - Python
Published by thomaspinder about 3 years ago

GPJax - v0.5.9

What's Changed

  • Update jaxkern dep by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/182

Full Changelog: https://github.com/JaxGaussianProcesses/GPJax/compare/v0.5.8...v0.5.9

Scientific Software - Peer-reviewed - Python
Published by thomaspinder over 3 years ago

GPJax - v0.5.8

Address bug fix StochasticVI variational expectation. (@Daniel-Dodd).

Scientific Software - Peer-reviewed - Python
Published by daniel-dodd over 3 years ago

GPJax - v0.5.7

Overview:

  • Removed Chex as a direct GPJax dependancy (@Daniel-Dodd).
  • Depreciated parameter initialisation (@Daniel-Dodd).
  • Depreciated gpjax.parameters to JaxUtils.parameters (@thomaspinder).
  • Depreciated gpjax.config to JaxUtils.config (@Daniel-Dodd).
  • Deprecated gpjax.utils to JaxUtils.dict (@Daniel-Dodd).
  • Addressed issues with documentation build and checks for new PRs (@thomaspinder).

Remove Chex import and dataclasses

Issue: #157 Fixed: via #176, @Daniel-Dodd Details: Chex has been removed in as a direct dependancy of GPJax.

Note Distrax depends on Chex, so you still need the relevant version of Chex installed to use GPJax.

This means it is recommend that users no longer use Chex's @dataclass decorator, to define objects. Instead, we advise users inherit from abstract types provided in GPJax (e.g., AbstractGP) or should inherit the JaxUtils.PyTree module, to ensure their object is registered as a JAX PyTree.

This decision to remove Chex was given to provide great flexibility of defining new classes, and mitigating pain points with class inheritance issues (resorting use to use mixin classes).

⚠️ WARNING: Given GPJax's objects are no longer Chex.dataclasses note the keyword only argument convention for initialising objects has been removed - users should be careful on the order of their inputs.

Parameter initialisation:

Issue: #172 Fixed: #178, @Daniel-Dodd Details:

To initialise default parameters you should call/define init_param instead of _initialise_params. The latter is being depreciated and will be removed in v0.6.

Example (1):

```python import jaxkern as jk import gpjax as gpx import jax.random as jr prior = gpx.Prior(kernel = jk.RBF())

OLD DO NOT USE:

key = jr.PRNGKey(123) params = prior.initialiseparams(key)

NEW WAY:

key = jr.PRNGKey(123) params = prior.init_params(key) ```

Example (2):

```python from gpjax.likelihoods import AbstractLikelihood from jax.random import KeyArray from typing import Dict

class Poisson(AbstractLikelihood): # Define init, ect as usual.

def init(self, ...) -> None: ....

# Define your default params via the `init_params` method instead of the old `_initialise_params`
def init_params(self, key: KeyArray) -> Dict:
      ....

```

Documentation fix build and add checks

Issue: #170, #169 Fixed: #171 (@thomaspinder). Details:

The docs now builds and checks are in place to ensure successful builds on new PRs made to the master branch.

Note the docs are currently built using a GitHub workflow, while unit tests are run via CircleCI workflows.

Scientific Software - Peer-reviewed - Python
Published by daniel-dodd over 3 years ago

GPJax - V0.5.6

What's Changed

  • Stabilize covariance learning with FillScaleTriL and update config behaviour by @patel-zeel in https://github.com/JaxGaussianProcesses/GPJax/pull/163
  • Circleci by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/168
  • Versioneer by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/166
  • Address Jax/Jaxlib v0.4.x compatibility, incorporate CircleCI testing workflows, incorporate versioneer. by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/164

New Contributors

  • @patel-zeel made their first contribution in https://github.com/JaxGaussianProcesses/GPJax/pull/163

Full Changelog: https://github.com/JaxGaussianProcesses/GPJax/compare/v0.5.5...v0.5.6

Scientific Software - Peer-reviewed - Python
Published by thomaspinder over 3 years ago

GPJax - v0.5.5

Depreciate gpjax.Dataset and gpjax.kernels. These objects will be removed in v0.6.0. @thomaspinder

Scientific Software - Peer-reviewed - Python
Published by daniel-dodd over 3 years ago

GPJax - v0.5.4

Implementation of new kernels and a backend move to using a PyTree in place of a Chex dataclass.

What's Changed

  • More kernels by @thomaspinder in https://github.com/JaxGaussianProcesses/GPJax/pull/148

Full Changelog: https://github.com/JaxGaussianProcesses/GPJax/compare/v0.5.2...v0.5.4

Scientific Software - Peer-reviewed - Python
Published by thomaspinder over 3 years ago

GPJax - v0.5.2

What's Changed

  • Fix typos in introduction doc. by @jondeaton in https://github.com/JaxGaussianProcesses/GPJax/pull/151
  • Change MLL to probability transition kernel only. by @Daniel-Dodd in https://github.com/JaxGaussianProcesses/GPJax/pull/153
  • Incorporate JaxLinOp with GPJax by @Daniel-Dodd in https://github.com/JaxGaussianProcesses/GPJax/pull/154

New Contributors

  • @jondeaton made their first contribution in https://github.com/JaxGaussianProcesses/GPJax/pull/151

Full Changelog: https://github.com/JaxGaussianProcesses/GPJax/compare/v0.5.1...v0.5.2

Scientific Software - Peer-reviewed - Python
Published by thomaspinder over 3 years ago

GPJax - v0.5.1

Fix stability in Matérn kernels.

Scientific Software - Peer-reviewed - Python
Published by daniel-dodd over 3 years ago

GPJax - v0.5

What's Changed

  • Transformations by @Daniel-Dodd in https://github.com/thomaspinder/GPJax/pull/109
  • Natgrads by @Daniel-Dodd in https://github.com/thomaspinder/GPJax/pull/90
  • Fix bug in Matern12 kernel by @thomaspinder in https://github.com/thomaspinder/GPJax/pull/119
  • Intro to GP notebooks by @thomaspinder in https://github.com/thomaspinder/GPJax/pull/117
  • Add verbose option. by @Daniel-Dodd in https://github.com/thomaspinder/GPJax/pull/116
  • Numpyro by @thomaspinder in https://github.com/thomaspinder/GPJax/pull/122
  • Distrax reversion by @thomaspinder in https://github.com/thomaspinder/GPJax/pull/125
  • Kernel compute by @Daniel-Dodd in https://github.com/thomaspinder/GPJax/pull/120
  • Prevent f64 default by @thomaspinder in https://github.com/thomaspinder/GPJax/pull/129
  • Update w/ Dan comments by @thomaspinder in https://github.com/thomaspinder/GPJax/pull/130
  • Cleanup reqs by @thomaspinder in https://github.com/thomaspinder/GPJax/pull/131
  • Update docs by @thomaspinder in https://github.com/thomaspinder/GPJax/pull/137
  • Improve readability and add comments. by @Daniel-Dodd in https://github.com/thomaspinder/GPJax/pull/138
  • Move params to the first slot of each function, class, etc. by @Daniel-Dodd in https://github.com/thomaspinder/GPJax/pull/139
  • V0.5 update by @thomaspinder in https://github.com/thomaspinder/GPJax/pull/123

Full Changelog: https://github.com/thomaspinder/GPJax/compare/v0.4.13...v0.5

Scientific Software - Peer-reviewed - Python
Published by thomaspinder over 3 years ago

GPJax - v0.4.13 - Bump docs and dependencies

What's Changed

  • Refactor docs as markdown documents by @thomaspinder in https://github.com/thomaspinder/GPJax/pull/107
  • Refactor JaxTyping to be compatible with v0.0.2
  • Pin pypa-publish workflow

Full Changelog: https://github.com/thomaspinder/GPJax/compare/v0.4.12...v0.4.13

Scientific Software - Peer-reviewed - Python
Published by thomaspinder almost 4 years ago

GPJax - v0.4.12- Bug fix on bijections

This minor release resolves the issue surrounding Distrax transformations.

Scientific Software - Peer-reviewed - Python
Published by thomaspinder almost 4 years ago

GPJax - v0.4.11 - Parameter seeding

A PRNGKey can now be passed to the initialisation function for reproducible parameter initialisation when parameters are stochastic e.g., RFFs. Further, the return argument of initialise and fit is a dataclass than bundles up the constituent quantities.

Scientific Software - Peer-reviewed - Python
Published by thomaspinder almost 4 years ago

GPJax - v0.4.10

Minor change that fixes a bug in conjugate regression models where the marginal log-likelihood is evaluated on a single datapoint.

Scientific Software - Peer-reviewed - Python
Published by thomaspinder almost 4 years ago

GPJax - v0.4.9 - JOSS Paper & Zenodo

Creating a release for Zenodo archiving and JOSS publication.

Scientific Software - Peer-reviewed - Python
Published by thomaspinder almost 4 years ago

GPJax - v0.4.8 - Titsias Bound

Added implementation and notebook for Titsias 2009.

Scientific Software - Peer-reviewed - Python
Published by thomaspinder almost 4 years ago

GPJax - v0.4.6 - Sparse GPs

In this release the following approaches have been added - Sparse variational GPs - Graph kernels - Variational family abstraction - A more flexible likelihood representation - Docs on barycentres of GPs, deep kernels, graph kernels and sparse regression

Contributors - @thomaspinder @Daniel-Dodd

Scientific Software - Peer-reviewed - Python
Published by thomaspinder about 4 years ago

GPJax - V0.4 - Parameter refactoring

Major changes

  • Parameters are now refactored to impose a greater degree of order and structure.
  • Multiple dispatch has been removed for easier extendability

Minor changes

  • Optax integration provided
  • Matern and Polynomial kernels added
  • Constant mean function added
  • Global parameter updates
  • Significantly slimmer parameter handling code

Scientific Software - Peer-reviewed - Python
Published by thomaspinder over 4 years ago

GPJax - V0.3 - Pure Jax refactoring

Major changes

  • GPJax is now written entirely in Jax with the ObJax dependency removed.
  • All notebooks and unit tests have been updated to reflect this new structure.

Minor changes

  • ARD kernel structures are now easier to define
  • Priors can be placed explicitly on a GP's hyperparameters.

Scientific Software - Peer-reviewed - Python
Published by thomaspinder over 5 years ago

GPJax - Non-conjugate inference now supported

Inference in a non-conjugate Gaussian process is now supported. A notebook demonstrating this functionality for classification data is provided in addition to the underlying code extensions.

Scientific Software - Peer-reviewed - Python
Published by thomaspinder over 5 years ago

GPJax - Initial release

Scientific Software - Peer-reviewed - Python
Published by thomaspinder over 5 years ago