five

Convex inference for community discovery in signed networks (European Parliament Voting Dataset)

收藏
NIAID Data Ecosystem2026-03-11 收录
下载链接:
https://zenodo.org/records/345950
下载链接
链接失效反馈
官方服务:
资源简介:
This repository contains the necessary tools to reproduce the experiments of the paper G. Santatmaría, V. Gómez (2015) Convex inference for community discovery in signed networks. NIPS 2015 Workshop: Networks in the Social and Information Sciences The method first maps the MAP problem on the Potts model as a hinge-loss minimization problem (see the paper for details). To run the code you need to install psl (included here) and if you want to additionally compare with other inference methods, such as max prod belief propagation or junction tree, you need to install the libDAI library (also included here) The directory europeanCongressData/ (~500 Mb) contains the votings of the EU parlament, including 300 votings events from the actual term, from May 2014 to June 2015, obtained from http://www.votewatch.eu/ data/ : json files with the european votes network.net : signed network built from the votes political_parties.txt : "ground truth" party community_results/ : results for different number of communities and initial vertices dataComputations.py : used to build the signed network dataProcessing.py : used to build the signed network We would appreciate if you cite the paper after using the data or the code. DEPENDENCIES The code has been tested in Linux Mint 18.1 Serena and Ubuntu 14.04 - For PSL library, you need to have     java 1.8     you may need to export JAVAHOME='/usr/lib/jvm/YOURJAVA1.8FOLDER'     maven 3.x - For libDAI you will need:     make doxygen graphviz libboost-dev libboost-graph-dev libboost-program-options-dev libboost-test-dev libgmp-dev cimg-dev libgmp-dev CODE TO RUN THE FOLLOWING EXPERIMENTS: Compare the performance in terms of structural balance of max prod bp and our method against an exact inference method (junction tree), with different number of communities INSTALL To install the experiments you have to follow the next steps: 1 Build the libdai library by doing: make -B on the folder (libdai) 2 Generate the class path of the groovy project: mvn clean install mvn dependency:build-classpath-Dmdep.outputFile=classpath.out on the psl root folder (You need to have java 1.8 and maven 3.x installed) 3 Grant exec permissions to the run.sh script Options The main python file to run the experiments is evaluatebalanceon_sn.py. It accepts the following parameters: 1 (Int) Nodes of the graph. In order to run the junction tree we recommend to set this paremeter to 150 or less 2 (Int) The number of underlying communities 3 (Float) The maximum amount of unbalance for the experiments. We recommend 0.45 4 (Bool) Whether to use an heuristic to find the initial node for each community or to use directly random nodes from the ground truth communities. This heuristic looks alternatively for the nodes with highest negative degree and highest positive degree. For the case when the number of communities is equal to 2 (Ising Model), the heuristic is used by default. An example of execution would be: python evaluate_balance_on_sn.py 120 3 0.45 True True The results of the experiments are save in the folder results/ Scripts The main script of the hinge-loss method can be found in the folder psl/psl-example/src/main/java/edu/umd/cs/example/PottsCommunities.groovy Authors: Guillermo Santamaria & Vicenc Gomez Mar 5, 2017 For further questions, please contact vicen.gomez@upf.edu
创建时间:
2020-01-21
5,000+
优质数据集
54 个
任务类型
进入经典数据集
二维码
社区交流群

面向社区/商业的数据集话题

二维码
科研交流群

面向高校/科研机构的开源数据集话题

数据驱动未来

携手共赢发展

商业合作