Estes são os arquivos suplementares do artigo AlphaCore KDD.
Até que seja empacotado, forneça o arquivo algoritmos/alphaCore.R
g <- erdos.renyi.game(200, 2/200, directed = T)
E(g)$weight <- 1:ecount(g)
V(g)$name <- paste("v", 1:vcount(g), sep="")
> alphaCore(g)
node alpha batch
1: v1 0.3281309 19
2: v2 0.3281309 30
3: v3 0.3724843 34
4: v4 0.3281309 23
5: v5 0.3281309 19
---
196: v196 0.3281309 28
197: v197 0.0000000 1
198: v198 0.3724843 34
199: v199 0.3281309 23
200: v200 0.3281309 23
> alphaCore(g, featureComputeFun = customNodeFeatures(c("indegree", "triangles")))
node alpha batch
1: v1 0.3060040 14
2: v2 0.0000000 6
3: v3 0.0000000 5
4: v4 0.0000000 5
5: v5 0.0000000 6
---
196: v196 0.6381691 19
197: v197 0.0000000 5
198: v198 0.0000000 5
199: v199 0.6381691 19
200: v200 0.0000000 8
> import networkx as nx
> G = nx.erdos_renyi_graph(n=200, seed=1, p=2/200, directed=True)
> for idx, (u,v,w) in enumerate(G.edges(data=True)):
w['value'] = idx
> alphaCore(G)
nodeID alpha batchID
0 18 0.0 0
1 75 0.0 0
2 78 0.0 0
3 25 0.3 5
4 91 0.3 5
... ... ... ...
195 8 0.7 27
196 131 0.7 27
197 185 0.7 27
198 192 0.7 27
199 158 0.7 28
Para executar, primeiro você precisa baixar os três conjuntos de dados:
Os arquivos estão hospedados em: https://zenodo.org/record/4898412 Armazene o transfers.db em data/tokens/transfers.db O arquivo exchangeLabels.csv correspondente deve ser colocado em data/tokens/exchangeLabels.csv
Os links cruzados do reddit fazem parte de http://snap.stanford.edu/conflict/conflict_data.zip No arquivo zip, eles podem ser encontrados em /prediction/detailed_data/ Coloque o arquivo no local data/reddit/post_crosslinks_info.tsv
Obtenha este arquivo em http://opsahl.co.uk/tnet/datasets/openflights.txt e armazene-o em data/flights/openflights.txt.
Abra o arquivo avaliação.R do diretório principal.
Este é o arquivo principal para executar a avaliação. Insira o número de núcleos da CPU e o caminho para o arquivo de banco de dados extraído.
Para executar toda a avaliação, o ideal é fazê-lo em um servidor com Rscript, pois alguns algoritmos, ou seja, algumas centralidades dependendo dos cálculos do caminho mais curto de todos os pares, e nossa própria implementação de k-core ponderado têm tempos de execução muito longos. A execução completa leva de 1 a 3 dias, dependendo do hardware.
AlphaCore com um tamanho de passo decrescente exponencialmente, entretanto, é bastante rápido, embora seja apenas uma implementação R.
Por favor, use a seguinte entrada BibTeX:
@inproceedings{10.1145/3447548.3467322,
author = {Victor, Friedhelm and Akcora, Cuneyt G. and Gel, Yulia R. and Kantarcioglu, Murat},
title = {Alphacore: Data Depth Based Core Decomposition},
year = {2021},
isbn = {9781450383325},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
url = {https://doi.org/10.1145/3447548.3467322},
doi = {10.1145/3447548.3467322},
booktitle = {Proceedings of the 27th ACM SIGKDD Conference on Knowledge Discovery & Data Mining},
pages = {1625–1633},
numpages = {9},
keywords = {core decomposition, networks, data depth},
location = {Virtual Event, Singapore},
series = {KDD '21}
}