Entering edit mode
4.5 years ago
jrleary
▴
210
I'm trying to decide which of the default Seurat v3
clustering algorithms is the most effective. The 3 R-based options are: 1)Louvain, 2) Louvain w/ multilevel refinement, and 3) SLM. The documentation is very vague about what the differences between the algorithms are, and gives no hint as to which algorithm one should use in different situations. I've always just used the original Louvain because it's the default, but are there situations / data that would be better represented using one of the other two algorithms?
In general, the differences between clustering algorithms concern the assumptions made on the data and/or cluster structure and the computational efficiency. These algorithms have been chosen because they work on graphs and can process large graphs but 2 and 3 are variants of the Louvain algorithm. The main difference resides in the granularity of the result ( 2 & 3 should produce more, smaller clusters). As often in clustering, the quality of the result is really a matter of perspective. For example, if you were to cluster protein interactions to find complexes, should the ribosome be one complex or should it be two, one for the 40S subunit and another for the 60S subunit? Or maybe it should be further split into the rRNA subunits and accessory proteins?
They mention the Waltman and van Eck paper in the docs and that discusses the algorithms in more detail.