jku-vds-lab/paradime

[feature] time-aligned dimensionality reduction

Opened this issue · 1 comments

Hi,
Really nice approach. Is it possible and relatively simple to implement in paradime time-aligned dimensionality reduction? (e.g. https://umap-learn.readthedocs.io/en/latest/aligned_umap_politics_demo.html, https://umap-learn.readthedocs.io/en/latest/aligned_umap_basic_usage.html, other approaches: lmcinnes/umap#966 ). It'd be great to have it as additional options in your grammar. If yes, could you provide some examples?

Hi, sorry for the late reply. I guess it really depends on how the alignment should be done exactly. I see two main options.

  • Embed everything with a single model. This would require a temporal index and a second loss term that makes sure that representations with the same index remain close together. The trick here would be to get the sampling right. You could use the temporal index with negative edge sampling, but that could conflict with UMAP's required sampling.
  • Embed with two models that are optimized jointly. This is currently not supported at all and would entail major changes in how the optimization is set up behind the scenes.

With regards to the first option, I am currently thinking about how to make the sampling a bit more flexible. At the moment, there are only the two hard-coded sampling options (item- and edge-based). Giving users more control over the sampler would probably make experiments like this easier.