Open haesleinhuepf opened 1 year ago
Alternative: Rapids? https://docs.rapids.ai/api/cuml/nightly/api/#hdbscan
Rapids needs an NVidia GPU, fast-hdbscan not, right? Anyway, I think we might work towards a pluggable interface for dimensionality reduction and clustering methods so that anyone can extend our pulldowns with whatever they like. We could use a similar scheme like the tools menu uses: https://github.com/haesleinhuepf/napari-tools-menu#Usage
It might be worth waiting for npe2 to support custom extension of napari commands and then introduce commands for clustering / dimensionality reduction. Not sure when this will be technically possible. Maybe @andy-sweet can tell?
Hi @haesleinhuepf, when talking about custom extensions of napari commands, do you mean providing commands for napari to insert in menus/keybindings? If so, this work is still currently in progress but we hope to get it in for the next release (whenever that is)
Hey @kne42 ,
thanks for replying! I think one small step ahead: if the napari yaml file allowed to specify not just menus and keybindings, but anything, we could define one entity of anything to be commands with an interface such as table_processing_algorithm(in:pd.DataFrame, ...) -> pd.DataFrame
. We could then ask npe2: "give me all table processing algorithms" and list them in a pulldown. With npe1 such things were very easy to implement (see tools menu link above). Are there any plans for when this might be possible with npe2?
Thank! Robert
If fast-hdbscan works for our purposes (worth exploring), we could replace hdbscan. We can also make it an optional dependency.