pymde
pymde copied to clipboard
Add different metrics to compute KNN
In this PR, I added the option to use different metrics when creating the KNN.
Basically, I add the metric argument to the preserve_neighbors function and propagated this argument to the sklearn.neighbors.NearestNeighbors and pynndescent.NNDescent methods.
Note: I assumed that the possible values of the metric argument are the same for the both methods, I checked the documentation, and it seems that this is true. However, probably we should have a little more documentation to guide the final user.
Moreover, I don't use the p nor the metric_kwds / metric_params argument of both methods, but it seems that one could do some logic to allow the user to use these parameters.