lmcinnes / umap

Uniform Manifold Approximation and Projection
BSD 3-Clause "New" or "Revised" License
7.36k stars 799 forks source link

Required mathematical knowledge #652

Open gravitychen opened 3 years ago

gravitychen commented 3 years ago

Very good work!

Can you recommend the mathematical knowledge needed to read umap paper from scratch?

For example, morphism in category theory .etc

thank you so much

lmcinnes commented 3 years ago

This is a challenging question to answer well because mathematical backgrounds can be quite diverse and what might be well understood by one person can be a very complicated topic for another. I think the main key is an understanding of at least the language (and goals) of basic category theory, and then enough algebraic topology to follow categorical formulations thereof (particularly simplicial complexes and simplicial sets). Neither of these are actually all that hard, but they do tend to have a language of their own (a tower of terminology if you will), and there aren't many introductions that provide "only what you need" because these subjects are used in diverse fields and "what you need" can vary greatly depending on your end goal.

gravitychen commented 3 years ago

This is a challenging question to answer well because mathematical backgrounds can be quite diverse and what might be well understood by one person can be a very complicated topic for another. I think the main key is an understanding of at least the language (and goals) of basic category theory, and then enough algebraic topology to follow categorical formulations thereof (particularly simplicial complexes and simplicial sets). Neither of these are actually all that hard, but they do tend to have a language of their own (a tower of terminology if you will), and there aren't many introductions that provide "only what you need" because these subjects are used in diverse fields and "what you need" can vary greatly depending on your end goal.

I see, thank you for your answering. So It really takes time to fully understand all of these. Let's say I want to learn it by myself, can you recommend some methodology or websites or some fantastic online courses to achieve this,(I am currently learning group theory haha and I totally agree that you name it as a tower of terminology)