Suppose I have an undirected weighted connected graph. I want to group vertices that have highest edges' value all together (vertices degree). Using clustering algorithms is one way. What clustering algorithms can I consider for this task? I hope it is clear; any question for clarification, please ask. Thanks.
What clustering algorithms can I consider for graph?
250 views Asked by george24 At
1
There are 1 answers
Related Questions in ALGORITHM
- MCNP 6 - Doubts about cells
- Given partially sorted array of type x<y => first apperance of x comes before first of y, sort in average O(n)
- What is the algorithm behind math.gcd and why it is faster Euclidean algorithm?
- Purpose of last 2 while loops in the merge algorithm of merge sort sorting technique
- Dots and Boxes with apha-beta pruning
- What is the average and worst-case time complexity of my string searching algorithm?
- Building a School Schedule Generator
- TC problem 5-2:how to calculate the probability of the indicator random variable?
- LCA of a binary tree implemented in Python
- Identify the checksum algorithm
- Algorithm for finding a subset of nodes in a weighted connected graph such that the distance between any pair nodes are under a postive number?
- Creating an efficent and time-saving algorithm to find difference between greater than and lesser than combination
- Algorithm to find neighbours of point by distance with no repeats
- Asking code suggestions about data structure and algorithm
- Heap sort with multithreading
Related Questions in GRAPH
- Querying Office for National Statistics data using SPARQL
- Which mathematical algorithm is used for interpolation between datapoints in Smooth Line Chart of Echart?
- how can I use coordinates of path walked by multiple subjects
- Creating a Graph/Chart needing TWO secondary axis options for a combination of Clustered and Stacked Graph Columns
- How to stretch specific y axis intervals so the space between some values is larger than between others?
- out of order time points on multi line chart
- What does negative flow on a reverse arc of a graph in Boykov-Kolmogorov max flow algorithm mean?
- how to generate {8,3} regular graphs for large number of vertices
- Why can't I apply ModularityState from graph-tool on a graph in XML format?
- Update Node from OneTBB Library
- Find the smallest set of vertices in a graph such that you can still reach any point in the set when any single vertex is removed
- Graph Neural Network Custom Data
- FIFO-property in graphs
- How to display total count of bars for each group in Google Charts on the right side of the graph or in legend position
- Whats wrong on Graph API permission for selected site
Related Questions in CLUSTER-COMPUTING
- How to Socket.IO Multithreading on a Raspberry Pi?
- Snakemake remote rules re-read config file?
- Why can CPU memory be specified and allocated during instance creation but not GPU memory on the cloud?
- Make a Cluster without using MongoDB Atlas
- Why don't run at multiple thread?
- Imports failing with workaround in Google Dataproc Cluster Notebooks
- Galera Cluster: 3 Node Cluster, One Node does not reconnect after rebooting
- How to install gromacs on gcp HPC
- Slurm - How to run a list of jobs n by n?
- Setup Slurm partition for only interactive jobs
- makeCluster fails with remote server Ubuntu
- Creating a cluster with two laptops (mac)
- How to configure express-fileupload with cluster?
- problem in configuring dataproc cluster from GCP Console since Friday (1 february 2024)
- Kubernetes cluster refused to connect google cloud
Related Questions in CLUSTER-ANALYSIS
- Cluster Analysis after a process
- Threshold scaling along a straight line
- create a bubble plot (or something similar) from cluster analysis in R
- Project idea about clustering and sentences similarity
- Mahalanobis distance computation in Python
- Adding a Bubble Plot as a Complex Heatmap Annotation
- Clustering Medium length (100bp) DNA Sequences
- Indicating the same clusters by colour between two Igraph plots using k mean clustering
- how to specify the maximum number of clusters for the STC algorithm in Solr admin console?
- Text clustering based on “stance” rather than the distribution of embeddings as the basis for clustering
- R ComplexHeatmap cannot reproduce exact row orders when apply row clusters to new matrix
- Principal Component Analysis and Clustering - Better Discrimination between Classes
- Recreating a spectral analysis and cluster graph example from RPUBS using K-means algorithm
- flowMatch metaclustering throws unexpteced error
- How to change 2D k-means algorithm to 2D EM-algorithm?
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
There are two main approach - giving your graph as an input to existing tool, or using expert knowledge you have on this graph (and its domain) in order to create a representation, and then apply machine learning methods on it.
I'll start with the second approach:
If you have only the nodes and edges (no farther data for each node), you first need to think of a representation for each node\edge. I going to explain about nodes, but it should should be similar for edges' case.
The simplest approach is to represent each node
nas a connectivity vector:Every node will be represented as
n=(Ia(n),Ib(n),Ic(n),Id(n),Ie(n)), whereIi(n)=1in case nodenis a 'friend' (neighbor) of nodei, and 0 otherwise. (e.g.a=(0,1,1,0,1))Note that you can decide if a node is a friend of itself.
Second approach, which is quite similar to the first one, is to use edges' weights vector:
n=(W(a,n),W(b,n),W(c,n),W(d,n),W(e,n)), whereW(i,n)is the weight of the edge(i,n).There are a few more ways to represent nodes, but this is enough in order to run some calculations on it.
After you have this presentation, you can start applying some clustering algorithms on it.
kmeans is considered great for this task, and sklearn has a great implementation. It has some parameters you can (and should) configure (i.e. the distance measure).
The product of kmeans, is
kdifferent non-intersecting groups of nodes.If you want to pass you graph to an algorithm and get some measures, there are more advanced algorithms you can apply. community detection is used to find communities in a graph. Again, there is a nice python implementation in the
networkxpackage.