Skip to content

Decide how to handle non-deterministic t-SNE algorithms #8418

Description

@csadorf

PR #8123 closed #2980 by making fixed-seed method="fft" runs byte-deterministic. It did not make method="exact" or method="barnes_hut" deterministic; both can still produce different results with the same random_state because their GPU implementations use nondeterministic parallel operations.

We should decide how to handle the remaining algorithms:

  • Characterize reproducibility, performance, embedding quality, and distinct use cases for exact and barnes_hut.
  • Estimate the cost and performance impact of making each implementation deterministic.
  • Review whether maintaining all three algorithms is still justified now that FFT is the default and the only deterministic implementation.
  • Consider deprecating and eventually removing exact and/or barnes_hut as an alternative to adding deterministic execution paths.
  • If an algorithm remains supported, document its reproducibility guarantees and add appropriate coverage.
  • If deprecation is selected, define the migration guidance, warning period, and removal release.

Follow-up to #2980 and #8123.

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions