Skip to content

Accelerate t-SNE using Barnes-Hut approximation #66

Open
@andrewdalpino

Description

@andrewdalpino

The current implementation of t-SNE uses the exact method which computes the full pairwise high-dimensional affinity matrix as well as the exact forces applied to the low-dimensional points. Since their original work, the authors of t-SNE have released a subsequent paper detailing the use of spatial trees for efficient nearest neighbor search as well as for approximating the forces of distant bodies of points in low dimensions. Since Rubix ML already employs spatial trees to accelerate other learners and given that the O(n^2) time complexity of computing affinities is intractable for large datasets, I recommend implementing the Barnes-Hut approximation of t-SNE.

Note that t-SNE would require a spatial tree as a dependency instead of a distance kernel which would be a very minor BC break.

Metadata

Metadata

Assignees

No one assigned

    Labels

    help wantedExtra attention is neededoptimizationMake something perform faster

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions