Geomstats v2.6.0
What's Changed
- fixing the typo in docs by @soma2000-lang in #1510
- compute log euclidean in closed form by @SaitejaUtpala in #1516
- Add trapz to backends by @luisfpereira in #1522
- Fix torch import in tests_backends by @luisfpereira in #1521
- Enhance notebook on cell shapes by analyzing with general elastic metric by @ninamiolane in #1526
- vectorization of connection.exp, addition of n_steps as argument in geodesic by @Jules-Deschamps in #1529
- Simple new pullbackdiffeo by @ymontmarin in #1514
- updates to riemannian metric by @Jules-Deschamps in #1535
- Add take to the backend by @luisfpereira in #1532
- Vectorize RiemannianMetric closest_neighbor_index by @luisfpereira in #1530
- SRV changes by @shubhamtalbar96 in #1525
- Use assertTrue and add assertAllEqual by @luisfpereira in #1539
- Simplify WrappedGaussianProcess by @luisfpereira in #1538
- Add pad to backend by @luisfpereira in #1541
- Graph space stratified by @annacalissano in #1488
- Initial docs reorganization by @luisfpereira in #1518
- gamma distributions by @Jules-Deschamps in #1523
- matrices.py: add 'full_matrices=False' to svd call by @ambellan in #1546
- Correct documentation rendering by @qbarthelemy in #1544
- Remove fixme and todo workflows by @luisfpereira in #1548
- Fix and simplify pytorch backend: array, einsum, from_numpy by @luisfpereira in #1550
- Correct documentation rendering, 2nd part by @qbarthelemy in #1549
- Incremetal Frechet Mean estimator for Non Positively Curved Maifolds by @SaitejaUtpala in #1533
- Function spaces implementation : starting with infinite dimensional spheres by @kiranvad in #1257
- Update Doc Website Index + Add Roadmap and Governance Pages by @ninamiolane in #1553
- Small edits to doc website by @ninamiolane in #1554
- Add Figure From Adele Myers' notebook to the main page by @ninamiolane in #1555
- Enhance governance's page by @ninamiolane in #1556
- Fix empty list array creation for torch by @luisfpereira in #1558
- Fix shape of HypersphereMetric and KendallShapeMetric by @ambellan in #1560
- Fix lint issues due to #1560 by @luisfpereira in #1562
- Add clean way of getting backend name by @luisfpereira in #1561
- WaldSpace without Geometry by @JonasLueg in #1455
- Fix functions to work with tensorflow by @luisfpereira in #1563
- Update backend name for more meaningful error messages by @luisfpereira in #1564
- Update roadmap by @ninamiolane in #1566
- Add hackathon page to website by @ninamiolane in #1567
- Improve dependency handling and CI installations by @luisfpereira in #1572
- Clean backend (only a bit) by @luisfpereira in #1570
- Add utils to download remote datasets by @luisfpereira in #1573
- Fix typo in notebooks tests by @luisfpereira in #1577
- Add tests for geodesic regression on Euclidean space (sanity check) and DiscreteCurves by @ninamiolane in #1576
- Fix: Frechet mean of discrete curves by computing in SRV space by @ninamiolane in #1579
- Start fixing inheritance in Product/NFold/Landmarks/Curves Spaces by @ninamiolane in #1581
- Refactor test_examples following test_notebooks strategy by @luisfpereira in #1582
- Real world application: optimization of traffic in Sao Paulo by @Jules-Deschamps in #1569
- Change location of test_examples and test together with notebooks by @luisfpereira in #1583
- Introductory Notebook for the Connection/RiemannianMetric Classes by @adelemyers99 in #1551
- Final Draft of Instructional Notebook for the Connection and RiemannianMetric Classes by @adelemyers99 in #1585
- Continue Refactoring of Landmarks inheriting from NFoldManifold and associated metrics and tests by @ninamiolane in #1590
- Start Refactoring of Discrete Curves by @ninamiolane in #1591
- unskip tests by @SaitejaUtpala in #1595
- Update hackathons.rst by @ninamiolane in #1594
- Simplify computations of the FrechetMean for the ElasticMetric by @ninamiolane in #1592
- Refactor Closed Curves by @ninamiolane in #1596
- Geometric median by @shubhamtalbar96 in #1565
- Use
p
for the rank of Grassmannian manifolds by @p16i in #1586 - Refactor backend and corresponding tests (part 1) by @luisfpereira in #1599
- Improve matching handling in graph space by @luisfpereira in #1584
- Refactor FrechetMean by @luisfpereira in #1601
- Sasaki metric by @ambellan in #1568
- Template for the issue tracker by @nanjekyejoannah in #1603
- TestData inheritance and automatic tests by @luisfpereira in #1517
- Add ability of using kwargs in test functions by @luisfpereira in #1609
- Fix bug in collecting test data by @luisfpereira in #1611
- The contributor guide by @nanjekyejoannah in #1597
- Make
array_from_sparse
more general by @luisfpereira in #1610 - Fix max version of scipy by @luisfpereira in #1619
- Add strategy to vectorize tests during data generation by @luisfpereira in #1613
- FIX: adding inject_radius constraint to enforce minimizing geodesics by @franciscoeacosta in #1621
- Add k_sampling_points as an attribute for spaces of curves by @ninamiolane in #1617
- ADD geodesic for elastic curves + FIX tests inheritance in RiemannianMetric, Connection, & ElasticMetric by @ninamiolane in #1622
- Update information geometry readme by @alebrigant in #1630
- added backend function gs.quantile by @wrongu in #1629
- Create multinomial distributions by @alebrigant in #1633
- Refactor discrete curves using FiberBundle and QuotientMetric by @alebrigant in #1632
- Fix vertical -> horizontal in docstring of discrete curves by @ninamiolane in #1635
- Fix test skipping by @luisfpereira in #1634
- Revert #1621 by @luisfpereira in #1636
- Correct documentation rendering, 3rd part by @qbarthelemy in #1641
- AAC for graph space by @luisfpereira in #1608
- Add ability to globally control default dtype by @luisfpereira in #1615
- Improve code and complete tests for geometric median by @qbarthelemy in #1642
- AAC: save last X by @annacalissano in #1648
- Fix use of "projection" in visualization example by @luisfpereira in #1649
- Update ubuntu version in workflows due to deprecation warning by @luisfpereira in #1650
- Make default_point_type a property by @luisfpereira in #1644
- Simplify super() by @luisfpereira in #1646
- Fix pullback metric for manifolds of dim 1 by @ninamiolane in #1653
- Improve MDM, adding weights and removing n_classes from parameters by @qbarthelemy in #1647
- Fix inheritance of GrassmanianCanonicallMetric, SpecialEuclidean and SpecialOrthogonal by @luisfpereira in #1652
- Remove redundant geomstats.tests by @luisfpereira in #1654
- Remove upper version limit on torch by @luisfpereira in #1661
- Fix expm due to changes in scipy.linalg.expm by @luisfpereira in #1660
- Remove greetings GitHub workflow that often fails by @ninamiolane in #1666
- Fix bug in the autodiff of pullback metric matrix by @ninamiolane in #1664
- Improve jacobian_and_hessian in autograd by @luisfpereira in #1667
- mixins for information geometry by @Jules-Deschamps in #1612
- Skip unit-tests that are failing too often (Stiefel, Gamma, Dirichlet) by @ninamiolane in #1672
- Rename: OpenSet's ambient_space -> embedding_space & SPDMetricXXX -> SPDXXXMetric by @ninamiolane in #1671
- Add curvature tensors - Follow-up from PR #1606 by @ninamiolane in #1668
- Second fundamental form + mean curvature vector of pull back metric by @ninamiolane in #1673
- Remove unnecessary use of metric as property and fix SpecialEuclideanMatrixCanonicalLeftMetric name by @luisfpereira in #1674
- Add hermitian matrices, follow-up from PR 1593 by @ninamiolane in #1675
- Consistency fix in visualization of Sphere/Circle by @ballerin in #1677
- Fix wrong scaling in NormalMetric by @alebrigant in #1676
- Fixes math renderings in notebook tutorials by @jubrau in #1679
- Change docstrings on random_point methods by @johnharveymath in #1688
- Vectorization of metric_matrix by @johnharveymath in #1693
- Remove CDTYPE = gs.get_default_cdtype() from complex manifolds by @YannCabanes in #1698
- ProductManifold and ProductRiemannianMetric by @johnharveymath in #1689
- Improve comments and error for random_tangent_vec by @jubrau in #1713
- Cherry pick changes from #1712 by @luisfpereira in #1719
- Make gs.random.rand consistent across backends for complex fields by @luisfpereira in #1721
- Add sectional curvature of univariate normal distributions + tests by @ninamiolane in #1723
- Add sectional curvature for the multinomials + missing tests by @ninamiolane in #1722
- Add HPD matrices by @YannCabanes in #1682
- Add Siegel by @YannCabanes in #1687
- Add statistical manifold of multivariate diagonal normal distributions by @antoinecollas in #1710
- Fix _pool_outputs_from_function in ProductManifold by @luisfpereira in #1728
- Fix complex manifold inheritance structure by @luisfpereira in #1732
- Update README.rst by @ninamiolane in #1735
- Fix Siegel log and exp errors for zero matrices by @YannCabanes in #1731
- Add conda install guidelines by @nguigs in #1733
- Add siegel sectional curvature by @YannCabanes in #1730
- "Outputs" of ihp hackathon by @luisfpereira in #1716
- Create multivariate normal distributions by @alebrigant in #1729
- Make submersion and tangent_submersion abstract in LevelSet by @luisfpereira in #1681
- Amend errors.check_point_shape by @johnharveymath in #1736
- Update backend random distributions to accept complex type by @luisfpereira in #1741
- Fix point shapes by @luisfpereira in #1739
- Add the positive reals manifold by @YannCabanes in #1701
- Update sr metric and create notebook and tests by @mortenapedersen in #1467
- Fix autograd value_and_grad to avoid duplicate computation of value by @luisfpereira in #1743
- Update gsod.rst with Case Study by @ninamiolane in #1744
- Update gsod.rst: Edits on case study by @ninamiolane in #1745
- Simplify univariate normal metric matrix by @tramy1258 in #1746
- Fix FisherRaoMetric inner product derivative matrix by @luisfpereira in #1747
- Fix learning algorithms to work with last sklearn version by @luisfpereira in #1754
- Add complex poincare disk by @YannCabanes in #1709
- Simplify PositiveRealsMetric by @luisfpereira in #1756
- Two different versions of the scalar product metric. by @johnharveymath in #1740
- Support product manifolds of matrices by @YannCabanes in #1737
- Correct scaling in ScalarProductMetric by @johnharveymath in #1763
- Reserve
scale
parameter to ScalarProductMetric by @johnharveymath in #1761 - Remove code duplication in ProductManifold and ProductManifoldMetric by @luisfpereira in #1762
- Add product hpd matrices and siegel disks by @YannCabanes in #1727
- Fix
SiegelMetric
for tf by @luisfpereira in #1766 - Remove unnecessary metric specification in ProductHPDMatricesAndSiegelDisks by @YannCabanes in #1765
- Remove scales product manifold by @luisfpereira in #1768
- Allow gs.stack to receive arrays of different dtypes in tf by @luisfpereira in #1769
- Extend product manifold to handle factors with different fields by @luisfpereira in #1770
- Fixes and improvements coming from test refactoring by @luisfpereira in #1771
- Address deep source issues by @luisfpereira in #1772
- Stop tf tests in CI by @luisfpereira in #1773
- Fix typos and dead link for issues. by @johmathe in #1776
- Update PULL_REQUEST_TEMPLATE.md by @johmathe in #1779
- Skip failing tests by @johmathe in #1781
- Remove tf from cov flags by @johmathe in #1782
- Keep sphinx at v 5.3.0 by @johmathe in #1784
- Remove tensorflow backend by @johmathe in #1778
- Fix bugs that arise for complex matrices by @sophiaas in #1787
- Fix graph space notebooks due to new release of networkx by @luisfpereira in #1789
- Add functions and associated tests for Binomial and Exponential Distributions by @tramy1258 in #1755
- Fix sqrtm for pytorch due to changes in scipy by @luisfpereira in #1790
- Follow-up PR #1787 by @ninamiolane in #1791
- Skip failing tests to clean CI by @ninamiolane in #1792
- Update setup.cfg by @johnharveymath in #1793
- Fix link to contributing guide. by @olivierverdier in #1795
- Refactor Product and NFold by @johnharveymath in #1774
- Fix complex output types by @luisfpereira in #1798
- Add product positive reals and complex poincare disks by @YannCabanes in #1764
- Add Poisson and geometric distributions and associated tests by @tramy1258 in #1785
- Fix align in SRVShapeBundle by @alebrigant in #1823
- Freeze black version due to breaking updates by @luisfpereira in #1827
- Correct NotImplementedError log by @monsij in #1799
- Fixes and improvements coming from test refactoring (part 2) by @luisfpereira in #1828
- Allow vectorization for Fisher Rao Metric by @tramy1258 in #1809
- Make SRVMetric on DiscreteCurves inherit from PullbackDiffeoMetric by @alebrigant in #1714
- feat(ci): add
pip
caching to CI by @SauravMaheshkar in #1839 - Fix bad squeezes in random_unit_tangent_vec by @tramy1258 in #1837
- Make torch.linspace accept array-like inputs by @tramy1258 in #1835
- Minor changes so Developer setup works by @HarrisonSantiago in #1840
- ElasticMetric inherits from PullbackDiffeoMetric by @Abdellaoui-Souhail in #1844
- Continue PR 1711 on discrete surfaces by @ninamiolane in #1815
- Added Discrete Surfaces with Elastic Metrics by @emmanuel-hartman in #1711
- Refactor metric to receive space (equip_with_metric behavior) by @luisfpereira in #1836
- Fixes and improvements coming from test refactoring (part 3) by @luisfpereira in #1848
- Dynamic programming algorithm for computing distances and geodesics for the SRV metric by @Abdellaoui-Souhail in #1847
- Numerical solvers for log, exp, geodesic, ... by @luisfpereira in #1845
- Elastic Riemannian metrics of order 2 on parameterized discrete surfaces by @ninamiolane in #1852
- Remove code duplication between numpy and autograd backends by @luisfpereira in #1853
- feat(build): switch to
pyproject.toml
for packaging by @SauravMaheshkar in #1842 - Unfreeze sphinx by @luisfpereira in #1856
- Unfreeze black by @luisfpereira in #1855
- Bump python 3.11 by @luisfpereira in #1854
- Refactor Stiefel by @luisfpereira in #1858
- Refactor information geometry by @luisfpereira in #1860
- Fix product metric by @Abdellaoui-Souhail in #1862
- Update connection to use solvers by @luisfpereira in #1864
- Update README.rst: Python 3.7 --> 3.11 by @ninamiolane in #1865
- Prepare release 2.6.0 by @luisfpereira in #1866
- Correct Zenodo link by @johnharveymath in #1869
- Unfreeze numpy and update code for scipy 1.11.0 by @luisfpereira in #1870
- Fix test_connection due to use of solvers by @luisfpereira in #1867
New Contributors
- @soma2000-lang made their first contribution in #1510
- @ymontmarin made their first contribution in #1514
- @shubhamtalbar96 made their first contribution in #1525
- @ambellan made their first contribution in #1546
- @kiranvad made their first contribution in #1257
- @JonasLueg made their first contribution in #1455
- @nanjekyejoannah made their first contribution in #1603
- @franciscoeacosta made their first contribution in #1621
- @wrongu made their first contribution in #1629
- @ballerin made their first contribution in #1677
- @jubrau made their first contribution in #1679
- @johnharveymath made their first contribution in #1688
- @antoinecollas made their first contribution in #1710
- @tramy1258 made their first contribution in #1746
- @olivierverdier made their first contribution in #1795
- @SauravMaheshkar made their first contribution in #1839
- @HarrisonSantiago made their first contribution in #1840
- @Abdellaoui-Souhail made their first contribution in #1844
- @emmanuel-hartman made their first contribution in #1711
Full Changelog: 2.5.0...2.6.0