801 citations
84 runs

mcl

By Enright A.J., Ouzounis C.A., Last update 1494698999
All tools Run this tool

mcl description

The MCL (Markov Cluster Algorithm) tool implements fast and scalable unsupervised cluster algorithm for graphs (also known as networks) based on simulation of (stochastic) flow in graphs. A single parameter controls the granularity of the output clustering, namely the -I inflation option described further below. In standard usage of the program this parameter is the only one that may require changing. By default it is set to 2.0 and this is a good way to start. If you want to explore cluster structure in graphs with MCL, vary this parameter to obtain clusterings at different levels of granularity. A good set of starting values is 1.4, 2, 4, and 6. The program has a rather large set of options. Except for -I none affects the clustering method itself. The other options are for a variety of aspects, such as study of the underlying MCL process (i.e. dumping of iterands), network preprocessing (incorporated for efficiency), resource allocation options (for large-scale analyses), output naming and placement, output formatting, setting of verbosity levels, and so on. Network construction and reduction techniques should not be considered as part of a clustering algorithm. Nevertheless particular techniques may benefit particular methods or applications. In mcl many transformations are accessible through the -tf option. It can be used for edge weight transformations and selection, as well as transformations that act on a graph as a whole. It is for example possible to remove edges with weight below 0.7 by issuing -tf gq(0.7), where the quotes are necessary to prevent the shell from interpreting the parentheses. The option accepts more complicated sequences, such as -tf gq(0.7),add(-0.7). This causes all remaining edge weights to be shifted to the range [0-0.3], assuming that the input contains correlations. Many more transformations are supported, as documented in mcxio. Examples of graph-wide transformations are #knn() and #ceilnb(). The first only keeps those edges that occur in the list of top- edges of highest weight in both of its incident nodes. The second removes edges from nodes of highest degree first, proceeding until all node degrees satisfy the given threshold. The -pi (pre-inflation) option can be used to increase the contrast in edge weights. This may be useful when clusterings are coarse and fine-grained clusterings are difficult to obtain.


Parent program: mcl

The MCL (Markov Cluster Algorithm) tool implements fast and scalable unsupervised cluster algorithm for graphs (also known as networks) based on simulation of (stochastic) flow in graphs. A single parameter controls the granularity of the output clustering, namely the -I inflation option described further below. In standard usage of the program this parameter is the only one that may require changing. By default it is set to 2.0 and this is a good way to start. If you want to explore cluster structure in graphs with MCL, vary this parameter to obtain clusterings at different levels of granularity. A good set of starting values is 1.4, 2, 4, and 6. The program has a rather large set of options. Except for -I none affects the clustering method itself. The other options are for a variety of aspects, such as study of the underlying MCL process (i.e. dumping of iterands), network preprocessing (incorporated for efficiency), resource allocation options (for large-scale analyses), output naming and placement, output formatting, setting of verbosity levels, and so on. Network construction and reduction techniques should not be considered as part of a clustering algorithm. Nevertheless particular techniques may benefit particular methods or applications. In mcl many transformations are accessible through the -tf option. It can be used for edge weight transformations and selection, as well as transformations that act on a graph as a whole. It is for example possible to remove edges with weight below 0.7 by issuing -tf gq(0.7), where the quotes are necessary to prevent the shell from interpreting the parentheses. The option accepts more complicated sequences, such as -tf gq(0.7),add(-0.7). This causes all remaining edge weights to be shifted to the range [0-0.3], assuming that the input contains correlations. Many more transformations are supported, as documented in mcxio. Examples of graph-wide transformations are #knn() and #ceilnb(). The first only keeps those edges that occur in the list of top- edges of highest weight in both of its incident nodes. The second removes edges from nodes of highest degree first, proceeding until all node degrees satisfy the given threshold. The -pi (pre-inflation) option can be used to increase the contrast in edge weights. This may be useful when clusterings are coarse and fine-grained clusterings are difficult to obtain.