Incremental training on UMAP?

Hi all,

I am happy to be part of this community - it was long overdue! I have a question regarding fluid.umap~. I am interested in slowing down the iterative process so I can visualize/audition the training of the algorithm. I see there is no such thing as a sleep interval between the iterations.

Any workarounds?

Thanks in advance!

1 Like

You can set the number of iterations to 1 (or something low) and then incrementally message fittransform to the object and plot.

1 Like

Thanks for the reply James! I tried doing that in the fluid.umap~ help file (set the iterations number to 2 and clicked on the fittrasform message a few times) but the clustering wouldn’t change drastically over time. It seems to me that the dataset is not fed back to the umap so it just reiterates the initial dataset every time I send the message.

1 Like

Hello @Tasos - I think you might have found a bug indeed! I’m investigating.

1 Like

Hi @tremblap ! I tried the “dump” message on fluid.umap~ and when routing the output to a dict.view it seems to include the output dataset before it undergoes dimensionality reduction (in the case of the help file that is 1086 26-dimensional datapoints). I assume then this can be routed in turn to the fluid.dataset~ that umap uses as input and incrementally clicking on fittransform as James suggested should progress the UMAP training by the defined iterations number. I didn’t have the time to try this out though.

I don’t think that will work as the idea is to move things from HD to 2D and you would lose the HD space that way after one iteration. At the moment it seems it is not a ‘bug’ but an ‘interesting discrepancy of interface’ as some of our objects support incremental training, and some don’t.

So we are discussing that in the team. It is holidays season so changes/fixes won’t happen soon but there is definitely something to think about here.

p

I see, thanks for considering it! I think it would be interesting to be able to incrementally train all the clustering algorithms and perhaps compare the learning processes and the shaping of the 2D sound map as a result.

It definitely would! That’s what I do here… Learn FluCoMa

1 Like

@jamesbradbury Yeah, I 've seen this tutorial, that’s what drew my attention to this!