Skip to content

Add PCA for visualization #23

@robertvava

Description

@robertvava

Objective

Implement PCA for visualization in addition to UMAP. This could be configured by a user in dataset.compute_visualization(method="pca").

Proposed strategy

Depending on mapping types, we could employ different implementations:

euclidean → euclidean: Standard PCA, normalize to [-1, 1]
euclidean → poincare: Standard PCA, then normalize into disk (e.g., tanh scaling)
hyperboloid → euclidean: logmap_0 to tangent space, PCA, normalize to [-1, 1]
hyperboloid → poincare: logmap_0 to tangent space, PCA to 2D, expmap_0 back to B^2

Acceptance criteria

  • compute_visualization(method="pca") runs without error
  • All mapping types can produce a graph
  • Minimal test suite for this method
  • Sufficient error catching with verbose logs for users

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type
    No fields configured for issues without a type.

    Projects

    Status

    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions