Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ENHANCEMENT] provide a way to pas in default UMAP parameters #1028

Closed
mikeldking opened this issue Aug 1, 2023 · 6 comments · Fixed by #1224
Closed

[ENHANCEMENT] provide a way to pas in default UMAP parameters #1028

mikeldking opened this issue Aug 1, 2023 · 6 comments · Fixed by #1224
Assignees
Labels
enhancement New feature or request good first issue Good for newcomers help wanted Extra attention is needed

Comments

@mikeldking
Copy link
Contributor

When using phoenix e.g. via session = px.launch_app(primary=query_ds, corpus=database_ds)
Any way to pass in non-default UMAP Parameters - e.g. n neighbors, n samples per dataset?
Context: trying to get an intuition for the point cloud visualization - was surprised to see when i duplicate my dataframe/ds content (of a small dataset) & put it all in the same ds (so that each row appears twice), identical embeddings had a notable distance between their points
Thinking this might be due to randomness in the dimensionality reduction, so i'm wondering how to reduce this randomness & whether changing the UMAP params could help

@mikeldking mikeldking added the enhancement New feature or request label Aug 1, 2023
@mikeldking
Copy link
Contributor Author

@pbadhe I can assign this ticket to you once you have read access.

I think we should tacke this in parts

  • Add default_umap_parameters` as optional kwargs - e.g. it would take in a UMAPParameters` class that is a dictionary of the configurable params
  • mount this class as context to the server runtime - e.g. make it available on the server via context.config.default_umap_params or something of that nature
  • add a graphQL resolver for Config - that resolves the config for the frontend
  • We will then mount the config at the root of the application or at the root of all embeddings/:dimensionId routes
  • We will then initialize the point-cloud store with these defaults when it's being initialized

Hope that makes sense. Feel free to open a draft - we can review as you go!

@pbadhe
Copy link
Collaborator

pbadhe commented Aug 28, 2023

Hi @mikeldking, sorry for being late, was away for a while.
Can you please tell me from where we check that this config object is successfully received or requested by the frontend? or any details on where to look into for the next steps?

@axiomofjoy
Copy link
Contributor

Hey @pbadhe, thanks for picking this ticket up. Mikyo is on PTO for the week. Give @RogerHYang and I a bit of time to catch up on this thread and we'll see if we can point you in the right direction 😄

@axiomofjoy
Copy link
Contributor

Hey @pbadhe, not sure of the answer here. Are you blocked at the moment?

@pbadhe
Copy link
Collaborator

pbadhe commented Aug 29, 2023

Hey @axiomofjoy, thanks for informing. I am not blocked as such but will try to explore the code a bit deeper gradually. This feature is not high priority so should not be an issue.

@axiomofjoy
Copy link
Contributor

Sounds good @pbadhe.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request good first issue Good for newcomers help wanted Extra attention is needed
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

3 participants