This project focuses on studying a specific class of graphs known as Power-Law graphs, which are prevalent in social networks. Our objective is to employ Machine Learning algorithms to effectively detect and analyze these graphs. By leveraging the power of machine learning, we aim to gain deeper insights into the structural characteristics and properties of power-law graphs within social networks. This repository serves as a comprehensive resource to document and share our research findings in this field.
- K-Nearest Neighbors
- Support Vector Machines
- Random Forest
- Gradient Boosting
- K-Means
- DBSCAN
- amzn: Amazon Networks
- caid: CAIDA AS Relationships Datasets
- citt: Citation Networks
- clab: Collaboration Networks
- emal: EU Email Communication Network
- euss: EuroSis web-mapping
- gloc: Brightkite ocations by checking-in
- gnut: Gnutella peer-to-peer network
- smcd: Social Media
- webn: Web Networks
- bion: Biological
- enzy: Enzymes
- brai: Brain networks
- eclg: Ecology
- road: Road Maps
- infr: Infrastructure
- ecnm: Economics
- ba: Barabási-Albert
- co: Complete
- cy: Cycle
- gr: Grid
- ld: Ladder
- ln: Log-normal
- pc: PowerLaw Cluster
- pt: Path
- rg: Regular
- sf: Scale Free
The input is any graph file in .gexf format, they must be saved in graphs folder
The graphs2csv.py
script will create a csv file with the following properties of your graphs:
- graph_type
- clustering_coef
- first_quartile
- second_quartile
- third_quartile
- max_triangles
- max_degree
- qtd_max_degree
- min_degree
- qtd_min_degree
- avg_degree
- density
- is_power_law
Script to generate synthetic graphs for my undergraduate research project: Recognizing Power-Law Graphs by Machine Learning Algorithms.
- Chose one of the functions
gen_<type>_graph
and give the quantity of graphs in the parameter. Those functions will generate graphs from NetworkX
- The results will be saved in
graphs
directory with as a .gexf file