• Stars
    star
    203
  • Rank 192,838 (Top 4 %)
  • Language
    C++
  • License
    GNU General Publi...
  • Created almost 8 years ago
  • Updated over 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Some overlapping community detection algorithms (Until 2016). by Yulin Che (https://github.com/CheYulin) for the PhD qualification exam (survey on community detection algorithms)

Community Detection Survey

Introduction

The repository collects and refactors some overlapping Community detection algorithms. Major content is survey, algorithms' implementations, graph input benchmarks, submodules, scripts.

Recommend ide are from jetbrains, namely clion, pycharm and intellij for c++, python and java.

Some Non-Overlapping Community Detections Algorithms could be found in NonOverlappingCodes.

A community-detection survey in Survey, you can have a look, if interested.

Graph Benchmarks

Synthetic Tool

Content Detail Status
2009-LFR-Benchmark LFR Benchmark to generate five types of graphs build success, some files unused

Real-World DataSets(Edge List)

Detailed information is in Datasets.

Newly occurring useful links(Websites for downloading)

Old links

Quality-Evaluation Metrics

Without-Ground-Truth

Evaluation Metric Name Implementation Heuristic
Link-Belonging-Based Modularity link_belong_modularity.py compare to random graph

With-Ground-Truth

Evaluation Metric Name Implementation Heuristic
Overlap-NMI overlap_nmi.py info-theory entropy-measure
Omega-Idx omega_idx.py unadjusted compared to expected

Algorithms

In each algorithm, there is a ReadMe.md, which gives brief introduction of corresponding information of the algorithm and current refactoring status. Category information are extracted, based on Xie's 2013 Survey paper Overlapping Community Detection in Networks: The State-of-the-Art and Comparative Study.

All c++ projects are built with cmake, java projects are built with maven, python projects are not specified how to build.

Algorithm Category Language Dependency Status
2008-CPM clique percolation c++, python lcelib build success
2009-CIS seed expansion c++ build success
2009-EAGLE seed expansion c++ igraph, boost build success
2010-LinkComm link partition python optparse python okay
2010-iLCD seed expansion java args4j, trove4j build success
2010-CONGA dynamics java build success
2010-TopGC statistical inference java build success
2011-GCE seed expansion c++ boost build success
2011-OSLOM seed expansion c++
2011-MOSES fuzzy detection c++ boost build success
2011-SLPA dynamics c++, java, python networkx, numpy build success for java
2012-FastCPM clique percolation python, c++ networkx build success
2012-ParCPM clique percolation c igraph build success
2012-DEMON seed expansion python networkx python okay
2013-SVINET statistical inference c++ gsl, pthread build success
2013-SeedExpansion page-rank c++, matlab graclus, matlab-bgl
2014-HRGrow matrix-exponential c++, matlab, python pylibbvg python okay
2015-LEMON seed expansion python pulp python okay

Presentation Files

survey-presentation-slides-yche.pdf is available.

Some files for my survey presentation is in Presentation, including algorithm visualization scripts, graph serialization related scripts and social network visualization scripts and corresponding figures.

Submodules(Dependencies)

Detailed information is in SubModules.

Submodule Implementation Language Detail
igraph c also provide python wrapper, graph utilities
matlab-bgl c++, matlab matlab implementation with bgl dependency
graclus c++ graph partition algorithm
lcelib c++ graph utilities by CxAalto

Scripts

Some file processing utility python scripts are put in Scripts.

Attention

These codes are all research codes, which I found through the internet. Please do not use them in production environment.

More Repositories

1

SubgraphMatching

In-Memory Subgraph Matching: An In-depth Study by Dr. Shixuan Sun and Prof. Qiong Luo
C++
143
star
2

EngineRaceRapids

Rapids团队 (https://github.com/CheYulin , https://github.com/shixuansun and https://github.com/WANG-lp), Engine Race (Key-Value Store on Intel Optane SSD, https://tianchi.aliyun.com/competition/entrance/231689/rankingList/1 ),线上成绩413.69s, 排名第1
C++
112
star
3

ContinuousSubgraphMatching

Source code and datasets of "An In-Depth Study of Continuous Subgraph Matching", accepted by VLDB'22 - By Xibo Sun, Dr. Shixuan Sun, Prof. Qiong Luo, and Prof. Bingsheng He
C++
40
star
4

RapidMatch

Source code and datasets of "RapidMatch: A Holistic Approach to Subgraph Query Processing", accepted by VLDB'21 - By Shixuan Sun, Xibo Sun, Yulin Che, Prof. Qiong Luo, and Prof. Bingsheng He
C++
34
star
5

ppSCAN

ppSCAN: Parallelizing Pruning-based Graph Structural Clustering (ICPP'18) - by Yulin Che, Shixuan Sun and Prof. Qiong Luo
C++
30
star
6

RapidEC

Source code of "GPU-accelerated elliptic curve digital signature algorithms", accepted by SC'22 - by Zonghao Feng, Qipeng Xie, Qiong Luo, etc.
Cuda
22
star
7

SubgraphContainment

Scaling Up Subgraph Query Processing with Efficient Subgraph Matching by Shixuan Sun and Dr. Qiong Luo
C++
17
star
8

EGSM

Source code and datasets of "Efficient GPU-Accelerated Subgraph Matching", accepted by SIGMOD'23 - By Xibo Sun and Prof. Qiong Luo
Cuda
14
star
9

AccTrussDecomposition

Source code of "Accelerating Truss Decomposition on Heterogeneous Processors", accepted by VLDB'20 - By Yulin Che, Zhuohang Lai, Shixuan Sun, Yue Wang, and Prof. Qiong Luo
C++
14
star
10

SimRank

1) SimRank (single pair query, parallel all pair computation / dynamic updates) - by Yue Wang (https://github.com/KeithYue) and Yulin Che (https://github.com/CheYulin). 2) top-k version (https://github.com/CheYulin/SimRank/tree/develop) by Yue Wang and Zonghao Feng (https://github.com/unisolate)
C++
14
star
11

Graph500KroneckerGraphGenerator

Kronecker Graph Generator (Forked from Graph500, supporting a binary edge list format)
C
10
star
12

PrimitivesAndGraphProcessing-GPU

Survey of Primitives and Graph Processing on GPUs (Until 2016) - by Yulin Che (https://github.com/CheYulin)
10
star
13

DBGC

Source code of "Density-Based Geometry Compression for LiDAR Point Clouds", accepted by EDBT'23 - By Xibo Sun and Prof. Qiong Luo
C++
7
star
14

UNIPAR

UNItig construction in PARallel with CPUs and GPUs
Cuda
6
star
15

hga

Heterogeneous Graph Aligner
Cuda
6
star
16

LIGHT

Source code of "Efficient Parallel Subgraph Enumeration on a Single Machine (ICDE2019)" by Shixuan Sun, Yulin Che, Lipeng Wang and Qiong Luo
C++
6
star
17

VIC-DDPM

source code for paper 'A Conditional Denoising Diffusion Probabilistic Model for Radio Interferometric Image Reconstruction'
Python
6
star
18

pow-bench

Source code of "Evaluating Memory-Hard Proof-of-Work Algorithms on Three Processors", accepted by VLDB'20 - By Zonghao Feng and Qiong Luo
C
5
star
19

AccMultiwayJoins

Source code of "Accelerating Multi-way Joins on the GPU", accepted by VLDBJ'22 - By Dr. Zhuohang Lai, Xibo Sun, Prof. Qiong Luo, and Xiaolong Xie
Cuda
5
star
20

GraphReorderAndConverter

Graph Reorder And Converter (e.g, Parallel OpenMP Implementation of Edge List to CSR with Sorted Neighbors) - by Yulin Che (https://github.com/CheYulin)
C++
5
star
21

cuGridder

Source code of "Efficient Radio Interferometric Imaging on the GPU", accepted by eScience'22 - By Honghao Liu, Qiong Luo, and Feng Wang
Cuda
4
star
22

PolarRec

Source code of 'PolarRec: Improving Radio Interferometric Data Reconstruction Using Polar Coordinates', CVPR'24 accepted. By Ruoqi Wang, Zhuoyang Chen, Jiayi Zhu, Qiong Luo, Feng Wang
Python
4
star
23

manymap

Accelerating Long Read Alignment on Three Processors
C++
3
star
24

KroneckerBinEdgeListToCSR

Parallel Kronecker Binary EdgeList (*.bin) To CSR (Lijun Chang's Format: b_adj.bin, b_degree.bin), Graph Statistics: Parallel TC/Core/DODG Analytics
C++
2
star
25

TriangleCounting

Triangle Counting (DataFoutain, 三角形图计算算法设计及性能优化, top 11)
C
2
star
26

AccTriCnt

Accelerating All-Edge Common Neighbor Counting on Three Processors (ICPP'19) - By Yulin Che, Zhuohang Lai, Shixuan Sun, Prof. Qiong Luo and Yue Wang
C++
2
star
27

mic_bc

Betweenness centrality on Intel Xeon Phi
C++
2
star
28

SyntheticGraphBenchmark

Synthetic Graph Generator (LFR Benchmark, 2009)
C++
1
star
29

Efficient-DPP

Data-parallel primitives implementations in OpenCL their native code versions
Cuda
1
star
30

EngineRace

Engine Race (Key-Value Store for Intel Optane SSD) - By Rapids团队 (https://github.com/CheYulin & https://github.com/shixuansun & https://github.com/WANG-lp)
C++
1
star