Skip to content

Commit b973137

Browse files
JacekDabrowski1JacekDabrowski1
authored andcommitted
Update benchmark results to include more algorithms and accurate data
Refactor website content and JavaScript to reflect updated benchmark data for 8 algorithms across 5 datasets, including fixes for log-scale rendering and accuracy claims. Replit-Commit-Author: Agent Replit-Commit-Session-Id: ec794acd-c4a5-47f6-b906-d70ac3c316ee Replit-Commit-Checkpoint-Type: full_checkpoint Replit-Commit-Event-Id: 2a0166a7-7f5d-4f93-8006-43b38e01082e Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/28ec11df-9ccf-40bc-9ff4-d0523e5b6a98/ec794acd-c4a5-47f6-b906-d70ac3c316ee/HwtnOx1 Replit-Helium-Checkpoint-Created: true
1 parent ab1fb04 commit b973137

3 files changed

Lines changed: 315 additions & 246 deletions

File tree

website/static/benchmarks.js

Lines changed: 70 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -19,87 +19,106 @@ const ALGO_COLORS = {
1919
'RandNE': '#ef4444',
2020
'NetMF': '#3b82f6',
2121
'DeepWalk': '#f472b6',
22+
'HOPE': '#34d399',
23+
'GraRep': '#fb923c',
24+
'Node2Vec': '#22d3ee',
2225
};
2326

2427
const DATASETS = ['ego-Facebook', 'Cora', 'CiteSeer', 'PubMed', 'PPI'];
25-
const ALGORITHMS = ['Cleora', 'ProNE', 'RandNE', 'NetMF', 'DeepWalk'];
28+
const ALGORITHMS = ['Cleora', 'ProNE', 'RandNE', 'HOPE', 'NetMF', 'GraRep', 'DeepWalk', 'Node2Vec'];
2629

2730
const SUMMARY_DATA = {
28-
'Cleora': [0.989, 0.816, 0.584, 0.802, 0.103],
29-
'ProNE': [0.062, 0.159, 0.140, 0.324, 0.042],
30-
'RandNE': [0.198, 0.280, 0.250, 0.357, 0.039],
31-
'NetMF': [0.979, 0.808, 0.579, null, null],
32-
'DeepWalk': [0.969, 0.806, 0.587, null, null],
31+
'Cleora': [0.986, 0.763, 0.692, 0.517, 1.000],
32+
'ProNE': [0.075, 0.179, 0.189, 0.339, 0.023],
33+
'RandNE': [0.212, 0.247, 0.244, 0.351, 0.073],
34+
'HOPE': [0.890, 0.821, 0.740, null, null],
35+
'NetMF': [0.957, 0.839, 0.810, null, null],
36+
'GraRep': [null, 0.809, 0.756, null, null],
37+
'DeepWalk': [0.958, 0.835, 0.806, null, null],
38+
'Node2Vec': [0.958, 0.835, 0.806, null, null],
3339
};
3440

3541
const FAILURE_STATUS = {
36-
'NetMF': [null, null, null, 'OOM', 'OOM'],
37-
'DeepWalk': [null, null, null, 'Timed Out', 'Timed Out'],
42+
'HOPE': [null, null, null, 'Timed Out', 'Timed Out'],
43+
'NetMF': [null, null, null, 'OOM', 'OOM'],
44+
'GraRep': ['Timed Out', null, null, 'OOM', 'OOM'],
45+
'DeepWalk': [null, null, null, 'Timed Out', 'Timed Out'],
46+
'Node2Vec': [null, null, null, 'Timed Out', 'Timed Out'],
3847
};
3948

4049
const SPEED_DATA = {
41-
algorithms: ['Cleora', 'RandNE', 'ProNE', 'NetMF', 'DeepWalk'],
42-
facebook: [0.77, 0.10, 2.78, 44.0, 46.9],
43-
cora: [0.27, 0.05, 0.36, 6.09, 58.8],
44-
citeseer: [0.25, 0.03, 0.12, 18.1, 24.6],
45-
pubmed: [0.65, 0.18, 1.21, null, null],
46-
ppi: [1.46, 0.77, 3.41, null, null],
47-
roadnet: [31.500, null, null, null, null],
50+
algorithms: ['Cleora', 'RandNE', 'ProNE', 'HOPE', 'NetMF', 'GraRep', 'DeepWalk', 'Node2Vec'],
51+
facebook: [0.62, 0.07, 0.26, 31.48, 28.81, null, 59.21, 67.90],
52+
cora: [0.27, 0.03, 0.13, 17.00, 5.92, 29.18, 25.52, 25.99],
53+
citeseer: [0.21, 0.03, 0.13, 38.27, 7.26, 28.26, 30.58, 29.77],
54+
pubmed: [0.24, 0.22, 0.75, null, null, null, null, null],
55+
ppi: [0.29, 0.07, 1.45, null, null, null, null, null],
56+
roadnet: [31.500, null, null, null, null, null, null, null],
4857
};
4958

5059
const SPEED_FAILURE = {
51-
pubmed: [null, null, null, 'OOM', 'Timed Out'],
52-
ppi: [null, null, null, 'OOM', 'Timed Out'],
53-
roadnet: [null, 'OOM', 'OOM', 'OOM', 'OOM'],
60+
facebook: [null, null, null, null, null, 'Timed Out', null, null],
61+
pubmed: [null, null, null, 'Timed Out', 'OOM', 'OOM', 'Timed Out', 'Timed Out'],
62+
ppi: [null, null, null, 'Timed Out', 'OOM', 'OOM', 'Timed Out', 'Timed Out'],
63+
roadnet: [null, 'OOM', 'OOM', 'OOM', 'OOM', 'OOM', 'OOM', 'OOM'],
5464
};
5565

5666
const MEMORY_DATA = {
57-
algorithms: ['Cleora', 'RandNE', 'ProNE', 'DeepWalk', 'NetMF'],
58-
facebook: [21, 40, 64, 538, 1047],
59-
cora: [15, 24, 41, 260, 313],
60-
citeseer: [18, 30, 50, 362, 374],
61-
pubmed: [98, 176, 293, null, null],
62-
ppi: [251, 540, 875, null, null],
63-
roadnet: [4129, null, null, null, null],
67+
algorithms: ['Cleora', 'RandNE', 'ProNE', 'HOPE', 'NetMF', 'GraRep', 'DeepWalk', 'Node2Vec'],
68+
facebook: [22, 42, 67, 857, 1098, null, 572, 572],
69+
cora: [14, 24, 40, 330, 332, 322, 227, 227],
70+
citeseer: [16, 27, 45, 430, 335, 411, 294, 294],
71+
pubmed: [97, 175, 291, null, null, null, null, null],
72+
ppi: [21, 40, 64, null, null, null, null, null],
73+
roadnet: [4129, null, null, null, null, null, null, null],
6474
};
6575

6676
const MEMORY_FAILURE = {
67-
pubmed: [null, null, null, 'OOM', 'OOM'],
68-
ppi: [null, null, null, 'OOM', 'OOM'],
69-
roadnet: [null, 'OOM', 'OOM', 'OOM', 'OOM'],
77+
facebook: [null, null, null, null, null, 'Timed Out', null, null],
78+
pubmed: [null, null, null, 'Timed Out', 'OOM', 'OOM', 'Timed Out', 'Timed Out'],
79+
ppi: [null, null, null, 'Timed Out', 'OOM', 'OOM', 'Timed Out', 'Timed Out'],
80+
roadnet: [null, 'OOM', 'OOM', 'OOM', 'OOM', 'OOM', 'OOM', 'OOM'],
7081
};
7182

7283
const SCATTER_DATA = {
7384
'ego-Facebook': {
74-
'Cleora': { acc: 0.989, time: 0.77 },
75-
'NetMF': { acc: 0.979, time: 44.0 },
76-
'DeepWalk': { acc: 0.969, time: 46.9 },
77-
'RandNE': { acc: 0.198, time: 0.10 },
78-
'ProNE': { acc: 0.062, time: 2.78 },
85+
'Cleora': { acc: 0.986, time: 0.62 },
86+
'ProNE': { acc: 0.075, time: 0.26 },
87+
'RandNE': { acc: 0.212, time: 0.07 },
88+
'HOPE': { acc: 0.890, time: 31.48 },
89+
'NetMF': { acc: 0.957, time: 28.81 },
90+
'DeepWalk': { acc: 0.958, time: 59.21 },
91+
'Node2Vec': { acc: 0.958, time: 67.90 },
7992
},
8093
'Cora': {
81-
'Cleora': { acc: 0.816, time: 0.27 },
82-
'NetMF': { acc: 0.808, time: 6.09 },
83-
'DeepWalk': { acc: 0.806, time: 58.8 },
84-
'RandNE': { acc: 0.280, time: 0.05 },
85-
'ProNE': { acc: 0.159, time: 0.36 },
94+
'Cleora': { acc: 0.763, time: 0.27 },
95+
'ProNE': { acc: 0.179, time: 0.13 },
96+
'RandNE': { acc: 0.247, time: 0.03 },
97+
'HOPE': { acc: 0.821, time: 17.00 },
98+
'NetMF': { acc: 0.839, time: 5.92 },
99+
'GraRep': { acc: 0.809, time: 29.18 },
100+
'DeepWalk': { acc: 0.835, time: 25.52 },
101+
'Node2Vec': { acc: 0.835, time: 25.99 },
86102
},
87103
'CiteSeer': {
88-
'Cleora': { acc: 0.584, time: 0.25 },
89-
'NetMF': { acc: 0.579, time: 18.1 },
90-
'DeepWalk': { acc: 0.587, time: 24.6 },
91-
'RandNE': { acc: 0.250, time: 0.03 },
92-
'ProNE': { acc: 0.140, time: 0.12 },
104+
'Cleora': { acc: 0.692, time: 0.21 },
105+
'ProNE': { acc: 0.189, time: 0.13 },
106+
'RandNE': { acc: 0.244, time: 0.03 },
107+
'HOPE': { acc: 0.740, time: 38.27 },
108+
'NetMF': { acc: 0.810, time: 7.26 },
109+
'GraRep': { acc: 0.756, time: 28.26 },
110+
'DeepWalk': { acc: 0.806, time: 30.58 },
111+
'Node2Vec': { acc: 0.806, time: 29.77 },
93112
},
94113
'PubMed': {
95-
'Cleora': { acc: 0.802, time: 0.65 },
96-
'RandNE': { acc: 0.357, time: 0.18 },
97-
'ProNE': { acc: 0.324, time: 1.21 },
114+
'Cleora': { acc: 0.517, time: 0.24 },
115+
'ProNE': { acc: 0.339, time: 0.75 },
116+
'RandNE': { acc: 0.351, time: 0.22 },
98117
},
99118
'PPI': {
100-
'Cleora': { acc: 0.103, time: 1.46 },
101-
'ProNE': { acc: 0.042, time: 3.41 },
102-
'RandNE': { acc: 0.039, time: 0.77 },
119+
'Cleora': { acc: 1.000, time: 0.29 },
120+
'ProNE': { acc: 0.023, time: 1.45 },
121+
'RandNE': { acc: 0.073, time: 0.07 },
103122
},
104123
};
105124

@@ -173,7 +192,7 @@ const failureBarPlugin = {
173192
ctx.globalAlpha = 0.6;
174193

175194
if (isHorizontal) {
176-
const xStart = valueScale.getPixelForValue(0);
195+
const xStart = valueScale.type === 'logarithmic' ? valueScale.left : valueScale.getPixelForValue(0);
177196
const xEnd = valueScale.right - 20;
178197
const halfH = barWidth / 2;
179198
ctx.strokeRect(xStart, barY - halfH, xEnd - xStart, barWidth);
@@ -193,7 +212,7 @@ const failureBarPlugin = {
193212
ctx.textBaseline = 'middle';
194213
ctx.fillText(failureText, (xStart + xEnd) / 2, barY);
195214
} else {
196-
const yBottom = valueScale.getPixelForValue(0);
215+
const yBottom = valueScale.type === 'logarithmic' ? valueScale.bottom : valueScale.getPixelForValue(0);
197216
const yTop = valueScale.top + 20;
198217
const halfW = barWidth / 2;
199218
ctx.strokeRect(barX - halfW, yTop, barWidth, yBottom - yTop);

0 commit comments

Comments
 (0)