D4niel0s commited on
Commit
7b07335
·
verified ·
1 Parent(s): ae29002

Upload 40 files

Browse files

Upload test inference files for all experiments

Files changed (41) hide show
  1. .gitattributes +20 -0
  2. evaluations/cayley_BLIP_no_sagpool/best.json +3 -0
  3. evaluations/cayley_BLIP_no_sagpool/best.out +114 -0
  4. evaluations/cayley_BLIP_no_sagpool/last.json +3 -0
  5. evaluations/cayley_BLIP_no_sagpool/last.out +114 -0
  6. evaluations/cayley_CLIP_no_sagpool/best.json +3 -0
  7. evaluations/cayley_CLIP_no_sagpool/best.out +114 -0
  8. evaluations/cayley_CLIP_no_sagpool/last.json +3 -0
  9. evaluations/cayley_CLIP_no_sagpool/last.out +114 -0
  10. evaluations/cayley_global_sagpool/best.json +3 -0
  11. evaluations/cayley_global_sagpool/best.out +115 -0
  12. evaluations/cayley_global_sagpool/last.json +3 -0
  13. evaluations/cayley_global_sagpool/last.out +115 -0
  14. evaluations/cayley_hierarchical_sagpool/best.json +3 -0
  15. evaluations/cayley_hierarchical_sagpool/best.out +116 -0
  16. evaluations/cayley_hierarchical_sagpool/last.json +3 -0
  17. evaluations/cayley_hierarchical_sagpool/last.out +116 -0
  18. evaluations/cayley_no_sagpool/best.json +3 -0
  19. evaluations/cayley_no_sagpool/best.out +114 -0
  20. evaluations/cayley_no_sagpool/last.json +3 -0
  21. evaluations/cayley_no_sagpool/last.out +114 -0
  22. evaluations/mmg_BLIP_global_sagpool/best.json +3 -0
  23. evaluations/mmg_BLIP_global_sagpool/best.out +130 -0
  24. evaluations/mmg_BLIP_global_sagpool/last.json +3 -0
  25. evaluations/mmg_BLIP_global_sagpool/last.out +130 -0
  26. evaluations/mmg_CLIP_global_sagpool/best.json +3 -0
  27. evaluations/mmg_CLIP_global_sagpool/best.out +130 -0
  28. evaluations/mmg_CLIP_global_sagpool/last.json +3 -0
  29. evaluations/mmg_CLIP_global_sagpool/last.out +130 -0
  30. evaluations/mmg_global_sagpool/best.json +3 -0
  31. evaluations/mmg_global_sagpool/best.out +130 -0
  32. evaluations/mmg_global_sagpool/last.json +3 -0
  33. evaluations/mmg_global_sagpool/last.out +130 -0
  34. evaluations/mmg_hierarchical_sagpool/best.json +3 -0
  35. evaluations/mmg_hierarchical_sagpool/best.out +131 -0
  36. evaluations/mmg_hierarchical_sagpool/last.json +3 -0
  37. evaluations/mmg_hierarchical_sagpool/last.out +131 -0
  38. evaluations/mmg_no_sagpool/best.json +3 -0
  39. evaluations/mmg_no_sagpool/best.out +128 -0
  40. evaluations/mmg_no_sagpool/last.json +3 -0
  41. evaluations/mmg_no_sagpool/last.out +128 -0
.gitattributes CHANGED
@@ -33,3 +33,23 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
36
+ evaluations/cayley_BLIP_no_sagpool/best.json filter=lfs diff=lfs merge=lfs -text
37
+ evaluations/cayley_BLIP_no_sagpool/last.json filter=lfs diff=lfs merge=lfs -text
38
+ evaluations/cayley_CLIP_no_sagpool/best.json filter=lfs diff=lfs merge=lfs -text
39
+ evaluations/cayley_CLIP_no_sagpool/last.json filter=lfs diff=lfs merge=lfs -text
40
+ evaluations/cayley_global_sagpool/best.json filter=lfs diff=lfs merge=lfs -text
41
+ evaluations/cayley_global_sagpool/last.json filter=lfs diff=lfs merge=lfs -text
42
+ evaluations/cayley_hierarchical_sagpool/best.json filter=lfs diff=lfs merge=lfs -text
43
+ evaluations/cayley_hierarchical_sagpool/last.json filter=lfs diff=lfs merge=lfs -text
44
+ evaluations/cayley_no_sagpool/best.json filter=lfs diff=lfs merge=lfs -text
45
+ evaluations/cayley_no_sagpool/last.json filter=lfs diff=lfs merge=lfs -text
46
+ evaluations/mmg_BLIP_global_sagpool/best.json filter=lfs diff=lfs merge=lfs -text
47
+ evaluations/mmg_BLIP_global_sagpool/last.json filter=lfs diff=lfs merge=lfs -text
48
+ evaluations/mmg_CLIP_global_sagpool/best.json filter=lfs diff=lfs merge=lfs -text
49
+ evaluations/mmg_CLIP_global_sagpool/last.json filter=lfs diff=lfs merge=lfs -text
50
+ evaluations/mmg_global_sagpool/best.json filter=lfs diff=lfs merge=lfs -text
51
+ evaluations/mmg_global_sagpool/last.json filter=lfs diff=lfs merge=lfs -text
52
+ evaluations/mmg_hierarchical_sagpool/best.json filter=lfs diff=lfs merge=lfs -text
53
+ evaluations/mmg_hierarchical_sagpool/last.json filter=lfs diff=lfs merge=lfs -text
54
+ evaluations/mmg_no_sagpool/best.json filter=lfs diff=lfs merge=lfs -text
55
+ evaluations/mmg_no_sagpool/last.json filter=lfs diff=lfs merge=lfs -text
evaluations/cayley_BLIP_no_sagpool/best.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e36f1232aa27f47964d73be0678e24cd8e320694a7d8b9dda726251cbc82d255
3
+ size 20396995
evaluations/cayley_BLIP_no_sagpool/best.out ADDED
@@ -0,0 +1,114 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Config:
2
+ {'adamw_lr': 5e-05,
3
+ 'adamw_weight_decay': 0.05,
4
+ 'add_lap_pe': True,
5
+ 'ans2idx_path': '/home/yandex/MLWG2025/danielvolkov/Documents/GAMER/data/VQA/answer2idx.json',
6
+ 'batch_size': 32,
7
+ 'checkpoint_dir': '/home/yandex/MLWG2025/danielvolkov/checkpoints',
8
+ 'checkpoint_interval_updates': 1000,
9
+ 'dataset_path': '/home/yandex/MLWG2025/danielvolkov/datasets/VQA_w_BLIP_embeds',
10
+ 'embeds_type': 'BLIP',
11
+ 'grad_acc_steps': 2,
12
+ 'graph_construction_method': 'cayley',
13
+ 'lap_pe_dim': 16,
14
+ 'log_every_n_updates': 10,
15
+ 'max_grad_norm': 1.0,
16
+ 'num_epochs': 12,
17
+ 'num_fusion_nodes': 6,
18
+ 'num_text_global_nodes': 2,
19
+ 'num_workers': 8,
20
+ 'persistent_workers': True,
21
+ 'pin_memory': True,
22
+ 'resume_checkpoint': '/home/yandex/MLWG2025/danielvolkov/BLIP_cayley_none_checks/best_ckpt_update_72000.pt',
23
+ 'save_best': True,
24
+ 'self_loops_in_image_graph': True,
25
+ 'use_amp': True,
26
+ 'val_batches': 1000,
27
+ 'val_interval_updates': 3000,
28
+ 'warmup_fraction': 0.05}
29
+ Model config:
30
+ {'dropout': 0.2,
31
+ 'edge_dim': 0,
32
+ 'global_pool_method': 'mean',
33
+ 'global_sagpool_ratio': 0.5,
34
+ 'heads': 8,
35
+ 'hidden_dim': 512,
36
+ 'mlps_hidden_layers': 3,
37
+ 'node_dim': 768,
38
+ 'num_layers': 4,
39
+ 'output_dim': 3000,
40
+ 'pe_dim': 16,
41
+ 'sagpool_layer2ratio': {1: 0.7, 2: 0.7, 3: 0.8},
42
+ 'sagpool_mode': 'none'}
43
+ Model:
44
+ GraphGPSNet(
45
+ (node_mlp): Sequential(
46
+ (0): Linear(784, 512, bias=True)
47
+ (1): GELU(approximate='none')
48
+ (2): Dropout(p=0.2, inplace=False)
49
+ (3): Linear(512, 512, bias=True)
50
+ (4): GELU(approximate='none')
51
+ (5): Dropout(p=0.2, inplace=False)
52
+ (6): Linear(512, 512, bias=True)
53
+ (7): GELU(approximate='none')
54
+ (8): Dropout(p=0.2, inplace=False)
55
+ (9): Linear(512, 512, bias=True)
56
+ (10): GELU(approximate='none')
57
+ (11): Dropout(p=0.2, inplace=False)
58
+ (12): Linear(512, 512, bias=True)
59
+ )
60
+ (layers): ModuleList(
61
+ (0-3): 4 x GPSConv(512, conv=GINConv(nn=Sequential(
62
+ (0): Linear(512, 512, bias=True)
63
+ (1): GELU(approximate='none')
64
+ (2): Dropout(p=0.2, inplace=False)
65
+ (3): Linear(512, 512, bias=True)
66
+ (4): GELU(approximate='none')
67
+ (5): Dropout(p=0.2, inplace=False)
68
+ (6): Linear(512, 512, bias=True)
69
+ (7): GELU(approximate='none')
70
+ (8): Dropout(p=0.2, inplace=False)
71
+ (9): Linear(512, 512, bias=True)
72
+ (10): GELU(approximate='none')
73
+ (11): Dropout(p=0.2, inplace=False)
74
+ (12): Linear(512, 512, bias=True)
75
+ )), heads=8, attn_type=multihead)
76
+ )
77
+ (pools): ModuleList(
78
+ (0-3): 4 x None
79
+ )
80
+ (postnet): Sequential(
81
+ (0): Linear(512, 512, bias=True)
82
+ (1): GELU(approximate='none')
83
+ (2): Dropout(p=0.2, inplace=False)
84
+ (3): Linear(512, 512, bias=True)
85
+ (4): GELU(approximate='none')
86
+ (5): Dropout(p=0.2, inplace=False)
87
+ (6): Linear(512, 512, bias=True)
88
+ (7): GELU(approximate='none')
89
+ (8): Dropout(p=0.2, inplace=False)
90
+ (9): Linear(512, 512, bias=True)
91
+ (10): GELU(approximate='none')
92
+ (11): Dropout(p=0.2, inplace=False)
93
+ (12): Linear(512, 512, bias=True)
94
+ )
95
+ (readout): Sequential(
96
+ (0): Linear(512, 512, bias=True)
97
+ (1): GELU(approximate='none')
98
+ (2): Dropout(p=0.2, inplace=False)
99
+ (3): Linear(512, 512, bias=True)
100
+ (4): GELU(approximate='none')
101
+ (5): Dropout(p=0.2, inplace=False)
102
+ (6): Linear(512, 512, bias=True)
103
+ (7): GELU(approximate='none')
104
+ (8): Dropout(p=0.2, inplace=False)
105
+ (9): Linear(512, 512, bias=True)
106
+ (10): GELU(approximate='none')
107
+ (11): Dropout(p=0.2, inplace=False)
108
+ (12): Linear(512, 3000, bias=True)
109
+ )
110
+ )
111
+ Loaded /home/yandex/MLWG2025/danielvolkov/BLIP_cayley_none_checks/best_ckpt_update_72000.pt to model
112
+ Validation VQA accuracy: 0.4275
113
+ Saved test predictions to /home/yandex/MLWG2025/danielvolkov/evaluations/cayley_BLIP_no_sagpool/best.json
114
+ Test predictions saved to /home/yandex/MLWG2025/danielvolkov/evaluations/cayley_BLIP_no_sagpool/best.json
evaluations/cayley_BLIP_no_sagpool/last.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:46b832fccf61dae709dc95ae5208e5285c1b25b6c655043261fb0a3f0485ed55
3
+ size 20400295
evaluations/cayley_BLIP_no_sagpool/last.out ADDED
@@ -0,0 +1,114 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Config:
2
+ {'adamw_lr': 5e-05,
3
+ 'adamw_weight_decay': 0.05,
4
+ 'add_lap_pe': True,
5
+ 'ans2idx_path': '/home/yandex/MLWG2025/danielvolkov/Documents/GAMER/data/VQA/answer2idx.json',
6
+ 'batch_size': 32,
7
+ 'checkpoint_dir': '/home/yandex/MLWG2025/danielvolkov/checkpoints',
8
+ 'checkpoint_interval_updates': 1000,
9
+ 'dataset_path': '/home/yandex/MLWG2025/danielvolkov/datasets/VQA_w_BLIP_embeds',
10
+ 'embeds_type': 'BLIP',
11
+ 'grad_acc_steps': 2,
12
+ 'graph_construction_method': 'cayley',
13
+ 'lap_pe_dim': 16,
14
+ 'log_every_n_updates': 10,
15
+ 'max_grad_norm': 1.0,
16
+ 'num_epochs': 12,
17
+ 'num_fusion_nodes': 6,
18
+ 'num_text_global_nodes': 2,
19
+ 'num_workers': 8,
20
+ 'persistent_workers': True,
21
+ 'pin_memory': True,
22
+ 'resume_checkpoint': '/home/yandex/MLWG2025/danielvolkov/BLIP_cayley_none_checks/ckpt_update_81000.pt',
23
+ 'save_best': True,
24
+ 'self_loops_in_image_graph': True,
25
+ 'use_amp': True,
26
+ 'val_batches': 1000,
27
+ 'val_interval_updates': 3000,
28
+ 'warmup_fraction': 0.05}
29
+ Model config:
30
+ {'dropout': 0.2,
31
+ 'edge_dim': 0,
32
+ 'global_pool_method': 'mean',
33
+ 'global_sagpool_ratio': 0.5,
34
+ 'heads': 8,
35
+ 'hidden_dim': 512,
36
+ 'mlps_hidden_layers': 3,
37
+ 'node_dim': 768,
38
+ 'num_layers': 4,
39
+ 'output_dim': 3000,
40
+ 'pe_dim': 16,
41
+ 'sagpool_layer2ratio': {1: 0.7, 2: 0.7, 3: 0.8},
42
+ 'sagpool_mode': 'none'}
43
+ Model:
44
+ GraphGPSNet(
45
+ (node_mlp): Sequential(
46
+ (0): Linear(784, 512, bias=True)
47
+ (1): GELU(approximate='none')
48
+ (2): Dropout(p=0.2, inplace=False)
49
+ (3): Linear(512, 512, bias=True)
50
+ (4): GELU(approximate='none')
51
+ (5): Dropout(p=0.2, inplace=False)
52
+ (6): Linear(512, 512, bias=True)
53
+ (7): GELU(approximate='none')
54
+ (8): Dropout(p=0.2, inplace=False)
55
+ (9): Linear(512, 512, bias=True)
56
+ (10): GELU(approximate='none')
57
+ (11): Dropout(p=0.2, inplace=False)
58
+ (12): Linear(512, 512, bias=True)
59
+ )
60
+ (layers): ModuleList(
61
+ (0-3): 4 x GPSConv(512, conv=GINConv(nn=Sequential(
62
+ (0): Linear(512, 512, bias=True)
63
+ (1): GELU(approximate='none')
64
+ (2): Dropout(p=0.2, inplace=False)
65
+ (3): Linear(512, 512, bias=True)
66
+ (4): GELU(approximate='none')
67
+ (5): Dropout(p=0.2, inplace=False)
68
+ (6): Linear(512, 512, bias=True)
69
+ (7): GELU(approximate='none')
70
+ (8): Dropout(p=0.2, inplace=False)
71
+ (9): Linear(512, 512, bias=True)
72
+ (10): GELU(approximate='none')
73
+ (11): Dropout(p=0.2, inplace=False)
74
+ (12): Linear(512, 512, bias=True)
75
+ )), heads=8, attn_type=multihead)
76
+ )
77
+ (pools): ModuleList(
78
+ (0-3): 4 x None
79
+ )
80
+ (postnet): Sequential(
81
+ (0): Linear(512, 512, bias=True)
82
+ (1): GELU(approximate='none')
83
+ (2): Dropout(p=0.2, inplace=False)
84
+ (3): Linear(512, 512, bias=True)
85
+ (4): GELU(approximate='none')
86
+ (5): Dropout(p=0.2, inplace=False)
87
+ (6): Linear(512, 512, bias=True)
88
+ (7): GELU(approximate='none')
89
+ (8): Dropout(p=0.2, inplace=False)
90
+ (9): Linear(512, 512, bias=True)
91
+ (10): GELU(approximate='none')
92
+ (11): Dropout(p=0.2, inplace=False)
93
+ (12): Linear(512, 512, bias=True)
94
+ )
95
+ (readout): Sequential(
96
+ (0): Linear(512, 512, bias=True)
97
+ (1): GELU(approximate='none')
98
+ (2): Dropout(p=0.2, inplace=False)
99
+ (3): Linear(512, 512, bias=True)
100
+ (4): GELU(approximate='none')
101
+ (5): Dropout(p=0.2, inplace=False)
102
+ (6): Linear(512, 512, bias=True)
103
+ (7): GELU(approximate='none')
104
+ (8): Dropout(p=0.2, inplace=False)
105
+ (9): Linear(512, 512, bias=True)
106
+ (10): GELU(approximate='none')
107
+ (11): Dropout(p=0.2, inplace=False)
108
+ (12): Linear(512, 3000, bias=True)
109
+ )
110
+ )
111
+ Loaded /home/yandex/MLWG2025/danielvolkov/BLIP_cayley_none_checks/ckpt_update_81000.pt to model
112
+ Validation VQA accuracy: 0.4283
113
+ Saved test predictions to /home/yandex/MLWG2025/danielvolkov/evaluations/cayley_BLIP_no_sagpool/last.json
114
+ Test predictions saved to /home/yandex/MLWG2025/danielvolkov/evaluations/cayley_BLIP_no_sagpool/last.json
evaluations/cayley_CLIP_no_sagpool/best.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:0069f006c530d5a047e5cb03387bec8468518127b5be3f5497daa8156fec0aae
3
+ size 20390999
evaluations/cayley_CLIP_no_sagpool/best.out ADDED
@@ -0,0 +1,114 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Config:
2
+ {'adamw_lr': 5e-05,
3
+ 'adamw_weight_decay': 0.05,
4
+ 'add_lap_pe': True,
5
+ 'ans2idx_path': '/home/yandex/MLWG2025/danielvolkov/Documents/GAMER/data/VQA/answer2idx.json',
6
+ 'batch_size': 32,
7
+ 'checkpoint_dir': '/home/yandex/MLWG2025/danielvolkov/checkpoints',
8
+ 'checkpoint_interval_updates': 1000,
9
+ 'dataset_path': '/home/yandex/MLWG2025/danielvolkov/datasets/VQA_w_CLIP_embeds',
10
+ 'embeds_type': 'CLIP',
11
+ 'grad_acc_steps': 2,
12
+ 'graph_construction_method': 'cayley',
13
+ 'lap_pe_dim': 16,
14
+ 'log_every_n_updates': 10,
15
+ 'max_grad_norm': 1.0,
16
+ 'num_epochs': 12,
17
+ 'num_fusion_nodes': 6,
18
+ 'num_text_global_nodes': 2,
19
+ 'num_workers': 8,
20
+ 'persistent_workers': True,
21
+ 'pin_memory': True,
22
+ 'resume_checkpoint': '/home/yandex/MLWG2025/danielvolkov/cayley_none_CLIP_checks/best_ckpt_update_75000.pt',
23
+ 'save_best': True,
24
+ 'self_loops_in_image_graph': True,
25
+ 'use_amp': True,
26
+ 'val_batches': 1000,
27
+ 'val_interval_updates': 3000,
28
+ 'warmup_fraction': 0.05}
29
+ Model config:
30
+ {'dropout': 0.2,
31
+ 'edge_dim': 0,
32
+ 'global_pool_method': 'mean',
33
+ 'global_sagpool_ratio': 0.5,
34
+ 'heads': 8,
35
+ 'hidden_dim': 512,
36
+ 'mlps_hidden_layers': 3,
37
+ 'node_dim': 512,
38
+ 'num_layers': 4,
39
+ 'output_dim': 3000,
40
+ 'pe_dim': 16,
41
+ 'sagpool_layer2ratio': {1: 0.7, 2: 0.7, 3: 0.8},
42
+ 'sagpool_mode': 'none'}
43
+ Model:
44
+ GraphGPSNet(
45
+ (node_mlp): Sequential(
46
+ (0): Linear(528, 512, bias=True)
47
+ (1): GELU(approximate='none')
48
+ (2): Dropout(p=0.2, inplace=False)
49
+ (3): Linear(512, 512, bias=True)
50
+ (4): GELU(approximate='none')
51
+ (5): Dropout(p=0.2, inplace=False)
52
+ (6): Linear(512, 512, bias=True)
53
+ (7): GELU(approximate='none')
54
+ (8): Dropout(p=0.2, inplace=False)
55
+ (9): Linear(512, 512, bias=True)
56
+ (10): GELU(approximate='none')
57
+ (11): Dropout(p=0.2, inplace=False)
58
+ (12): Linear(512, 512, bias=True)
59
+ )
60
+ (layers): ModuleList(
61
+ (0-3): 4 x GPSConv(512, conv=GINConv(nn=Sequential(
62
+ (0): Linear(512, 512, bias=True)
63
+ (1): GELU(approximate='none')
64
+ (2): Dropout(p=0.2, inplace=False)
65
+ (3): Linear(512, 512, bias=True)
66
+ (4): GELU(approximate='none')
67
+ (5): Dropout(p=0.2, inplace=False)
68
+ (6): Linear(512, 512, bias=True)
69
+ (7): GELU(approximate='none')
70
+ (8): Dropout(p=0.2, inplace=False)
71
+ (9): Linear(512, 512, bias=True)
72
+ (10): GELU(approximate='none')
73
+ (11): Dropout(p=0.2, inplace=False)
74
+ (12): Linear(512, 512, bias=True)
75
+ )), heads=8, attn_type=multihead)
76
+ )
77
+ (pools): ModuleList(
78
+ (0-3): 4 x None
79
+ )
80
+ (postnet): Sequential(
81
+ (0): Linear(512, 512, bias=True)
82
+ (1): GELU(approximate='none')
83
+ (2): Dropout(p=0.2, inplace=False)
84
+ (3): Linear(512, 512, bias=True)
85
+ (4): GELU(approximate='none')
86
+ (5): Dropout(p=0.2, inplace=False)
87
+ (6): Linear(512, 512, bias=True)
88
+ (7): GELU(approximate='none')
89
+ (8): Dropout(p=0.2, inplace=False)
90
+ (9): Linear(512, 512, bias=True)
91
+ (10): GELU(approximate='none')
92
+ (11): Dropout(p=0.2, inplace=False)
93
+ (12): Linear(512, 512, bias=True)
94
+ )
95
+ (readout): Sequential(
96
+ (0): Linear(512, 512, bias=True)
97
+ (1): GELU(approximate='none')
98
+ (2): Dropout(p=0.2, inplace=False)
99
+ (3): Linear(512, 512, bias=True)
100
+ (4): GELU(approximate='none')
101
+ (5): Dropout(p=0.2, inplace=False)
102
+ (6): Linear(512, 512, bias=True)
103
+ (7): GELU(approximate='none')
104
+ (8): Dropout(p=0.2, inplace=False)
105
+ (9): Linear(512, 512, bias=True)
106
+ (10): GELU(approximate='none')
107
+ (11): Dropout(p=0.2, inplace=False)
108
+ (12): Linear(512, 3000, bias=True)
109
+ )
110
+ )
111
+ Loaded /home/yandex/MLWG2025/danielvolkov/cayley_none_CLIP_checks/best_ckpt_update_75000.pt to model
112
+ Validation VQA accuracy: 0.4127
113
+ Saved test predictions to /home/yandex/MLWG2025/danielvolkov/evaluations/cayley_CLIP_no_sagpool/best.json
114
+ Test predictions saved to /home/yandex/MLWG2025/danielvolkov/evaluations/cayley_CLIP_no_sagpool/best.json
evaluations/cayley_CLIP_no_sagpool/last.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:c73da458e6de2517a3c588f0f648cbad1e25f5356c407a6df793b2086a442bde
3
+ size 20420796
evaluations/cayley_CLIP_no_sagpool/last.out ADDED
@@ -0,0 +1,114 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Config:
2
+ {'adamw_lr': 5e-05,
3
+ 'adamw_weight_decay': 0.05,
4
+ 'add_lap_pe': True,
5
+ 'ans2idx_path': '/home/yandex/MLWG2025/danielvolkov/Documents/GAMER/data/VQA/answer2idx.json',
6
+ 'batch_size': 32,
7
+ 'checkpoint_dir': '/home/yandex/MLWG2025/danielvolkov/checkpoints',
8
+ 'checkpoint_interval_updates': 1000,
9
+ 'dataset_path': '/home/yandex/MLWG2025/danielvolkov/datasets/VQA_w_CLIP_embeds',
10
+ 'embeds_type': 'CLIP',
11
+ 'grad_acc_steps': 2,
12
+ 'graph_construction_method': 'cayley',
13
+ 'lap_pe_dim': 16,
14
+ 'log_every_n_updates': 10,
15
+ 'max_grad_norm': 1.0,
16
+ 'num_epochs': 12,
17
+ 'num_fusion_nodes': 6,
18
+ 'num_text_global_nodes': 2,
19
+ 'num_workers': 8,
20
+ 'persistent_workers': True,
21
+ 'pin_memory': True,
22
+ 'resume_checkpoint': '/home/yandex/MLWG2025/danielvolkov/cayley_none_CLIP_checks/ckpt_update_77000.pt',
23
+ 'save_best': True,
24
+ 'self_loops_in_image_graph': True,
25
+ 'use_amp': True,
26
+ 'val_batches': 1000,
27
+ 'val_interval_updates': 3000,
28
+ 'warmup_fraction': 0.05}
29
+ Model config:
30
+ {'dropout': 0.2,
31
+ 'edge_dim': 0,
32
+ 'global_pool_method': 'mean',
33
+ 'global_sagpool_ratio': 0.5,
34
+ 'heads': 8,
35
+ 'hidden_dim': 512,
36
+ 'mlps_hidden_layers': 3,
37
+ 'node_dim': 512,
38
+ 'num_layers': 4,
39
+ 'output_dim': 3000,
40
+ 'pe_dim': 16,
41
+ 'sagpool_layer2ratio': {1: 0.7, 2: 0.7, 3: 0.8},
42
+ 'sagpool_mode': 'none'}
43
+ Model:
44
+ GraphGPSNet(
45
+ (node_mlp): Sequential(
46
+ (0): Linear(528, 512, bias=True)
47
+ (1): GELU(approximate='none')
48
+ (2): Dropout(p=0.2, inplace=False)
49
+ (3): Linear(512, 512, bias=True)
50
+ (4): GELU(approximate='none')
51
+ (5): Dropout(p=0.2, inplace=False)
52
+ (6): Linear(512, 512, bias=True)
53
+ (7): GELU(approximate='none')
54
+ (8): Dropout(p=0.2, inplace=False)
55
+ (9): Linear(512, 512, bias=True)
56
+ (10): GELU(approximate='none')
57
+ (11): Dropout(p=0.2, inplace=False)
58
+ (12): Linear(512, 512, bias=True)
59
+ )
60
+ (layers): ModuleList(
61
+ (0-3): 4 x GPSConv(512, conv=GINConv(nn=Sequential(
62
+ (0): Linear(512, 512, bias=True)
63
+ (1): GELU(approximate='none')
64
+ (2): Dropout(p=0.2, inplace=False)
65
+ (3): Linear(512, 512, bias=True)
66
+ (4): GELU(approximate='none')
67
+ (5): Dropout(p=0.2, inplace=False)
68
+ (6): Linear(512, 512, bias=True)
69
+ (7): GELU(approximate='none')
70
+ (8): Dropout(p=0.2, inplace=False)
71
+ (9): Linear(512, 512, bias=True)
72
+ (10): GELU(approximate='none')
73
+ (11): Dropout(p=0.2, inplace=False)
74
+ (12): Linear(512, 512, bias=True)
75
+ )), heads=8, attn_type=multihead)
76
+ )
77
+ (pools): ModuleList(
78
+ (0-3): 4 x None
79
+ )
80
+ (postnet): Sequential(
81
+ (0): Linear(512, 512, bias=True)
82
+ (1): GELU(approximate='none')
83
+ (2): Dropout(p=0.2, inplace=False)
84
+ (3): Linear(512, 512, bias=True)
85
+ (4): GELU(approximate='none')
86
+ (5): Dropout(p=0.2, inplace=False)
87
+ (6): Linear(512, 512, bias=True)
88
+ (7): GELU(approximate='none')
89
+ (8): Dropout(p=0.2, inplace=False)
90
+ (9): Linear(512, 512, bias=True)
91
+ (10): GELU(approximate='none')
92
+ (11): Dropout(p=0.2, inplace=False)
93
+ (12): Linear(512, 512, bias=True)
94
+ )
95
+ (readout): Sequential(
96
+ (0): Linear(512, 512, bias=True)
97
+ (1): GELU(approximate='none')
98
+ (2): Dropout(p=0.2, inplace=False)
99
+ (3): Linear(512, 512, bias=True)
100
+ (4): GELU(approximate='none')
101
+ (5): Dropout(p=0.2, inplace=False)
102
+ (6): Linear(512, 512, bias=True)
103
+ (7): GELU(approximate='none')
104
+ (8): Dropout(p=0.2, inplace=False)
105
+ (9): Linear(512, 512, bias=True)
106
+ (10): GELU(approximate='none')
107
+ (11): Dropout(p=0.2, inplace=False)
108
+ (12): Linear(512, 3000, bias=True)
109
+ )
110
+ )
111
+ Loaded /home/yandex/MLWG2025/danielvolkov/cayley_none_CLIP_checks/ckpt_update_77000.pt to model
112
+ Validation VQA accuracy: 0.4128
113
+ Saved test predictions to /home/yandex/MLWG2025/danielvolkov/evaluations/cayley_CLIP_no_sagpool/last.json
114
+ Test predictions saved to /home/yandex/MLWG2025/danielvolkov/evaluations/cayley_CLIP_no_sagpool/last.json
evaluations/cayley_global_sagpool/best.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:aa8372cfaf6c6dd73b28c2bdaac40d6549b946aa82fcc63e6bb7575144b1ff24
3
+ size 20405034
evaluations/cayley_global_sagpool/best.out ADDED
@@ -0,0 +1,115 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Config:
2
+ {'adamw_lr': 5e-05,
3
+ 'adamw_weight_decay': 0.05,
4
+ 'add_lap_pe': True,
5
+ 'ans2idx_path': '/home/yandex/MLWG2025/danielvolkov/Documents/GAMER/data/VQA/answer2idx.json',
6
+ 'batch_size': 32,
7
+ 'checkpoint_dir': '/home/yandex/MLWG2025/danielvolkov/checkpoints',
8
+ 'checkpoint_interval_updates': 1000,
9
+ 'dataset_path': '/home/yandex/MLWG2025/danielvolkov/datasets/VQA_w_embed',
10
+ 'embeds_type': 'BERT/BEiT',
11
+ 'grad_acc_steps': 2,
12
+ 'graph_construction_method': 'cayley',
13
+ 'lap_pe_dim': 16,
14
+ 'log_every_n_updates': 10,
15
+ 'max_grad_norm': 1.0,
16
+ 'num_epochs': 12,
17
+ 'num_fusion_nodes': 6,
18
+ 'num_text_global_nodes': 2,
19
+ 'num_workers': 8,
20
+ 'persistent_workers': True,
21
+ 'pin_memory': True,
22
+ 'resume_checkpoint': '/home/yandex/MLWG2025/danielvolkov/cayley_glob_sagpool_checks/best_ckpt_update_75000.pt',
23
+ 'save_best': True,
24
+ 'self_loops_in_image_graph': True,
25
+ 'use_amp': True,
26
+ 'val_batches': 1000,
27
+ 'val_interval_updates': 3000,
28
+ 'warmup_fraction': 0.05}
29
+ Model config:
30
+ {'dropout': 0.2,
31
+ 'edge_dim': 0,
32
+ 'global_pool_method': 'mean',
33
+ 'global_sagpool_ratio': 0.5,
34
+ 'heads': 8,
35
+ 'hidden_dim': 512,
36
+ 'mlps_hidden_layers': 3,
37
+ 'node_dim': 768,
38
+ 'num_layers': 4,
39
+ 'output_dim': 3000,
40
+ 'pe_dim': 16,
41
+ 'sagpool_layer2ratio': {1: 0.7, 2: 0.7, 3: 0.8},
42
+ 'sagpool_mode': 'global'}
43
+ Model:
44
+ GraphGPSNet(
45
+ (node_mlp): Sequential(
46
+ (0): Linear(784, 512, bias=True)
47
+ (1): GELU(approximate='none')
48
+ (2): Dropout(p=0.2, inplace=False)
49
+ (3): Linear(512, 512, bias=True)
50
+ (4): GELU(approximate='none')
51
+ (5): Dropout(p=0.2, inplace=False)
52
+ (6): Linear(512, 512, bias=True)
53
+ (7): GELU(approximate='none')
54
+ (8): Dropout(p=0.2, inplace=False)
55
+ (9): Linear(512, 512, bias=True)
56
+ (10): GELU(approximate='none')
57
+ (11): Dropout(p=0.2, inplace=False)
58
+ (12): Linear(512, 512, bias=True)
59
+ )
60
+ (layers): ModuleList(
61
+ (0-3): 4 x GPSConv(512, conv=GINConv(nn=Sequential(
62
+ (0): Linear(512, 512, bias=True)
63
+ (1): GELU(approximate='none')
64
+ (2): Dropout(p=0.2, inplace=False)
65
+ (3): Linear(512, 512, bias=True)
66
+ (4): GELU(approximate='none')
67
+ (5): Dropout(p=0.2, inplace=False)
68
+ (6): Linear(512, 512, bias=True)
69
+ (7): GELU(approximate='none')
70
+ (8): Dropout(p=0.2, inplace=False)
71
+ (9): Linear(512, 512, bias=True)
72
+ (10): GELU(approximate='none')
73
+ (11): Dropout(p=0.2, inplace=False)
74
+ (12): Linear(512, 512, bias=True)
75
+ )), heads=8, attn_type=multihead)
76
+ )
77
+ (pools): ModuleList(
78
+ (0-3): 4 x None
79
+ )
80
+ (postnet): Sequential(
81
+ (0): Linear(512, 512, bias=True)
82
+ (1): GELU(approximate='none')
83
+ (2): Dropout(p=0.2, inplace=False)
84
+ (3): Linear(512, 512, bias=True)
85
+ (4): GELU(approximate='none')
86
+ (5): Dropout(p=0.2, inplace=False)
87
+ (6): Linear(512, 512, bias=True)
88
+ (7): GELU(approximate='none')
89
+ (8): Dropout(p=0.2, inplace=False)
90
+ (9): Linear(512, 512, bias=True)
91
+ (10): GELU(approximate='none')
92
+ (11): Dropout(p=0.2, inplace=False)
93
+ (12): Linear(512, 512, bias=True)
94
+ )
95
+ (global_sagpool): SAGPooling(GATConv, 512, ratio=0.5, multiplier=1.0)
96
+ (readout): Sequential(
97
+ (0): Linear(512, 512, bias=True)
98
+ (1): GELU(approximate='none')
99
+ (2): Dropout(p=0.2, inplace=False)
100
+ (3): Linear(512, 512, bias=True)
101
+ (4): GELU(approximate='none')
102
+ (5): Dropout(p=0.2, inplace=False)
103
+ (6): Linear(512, 512, bias=True)
104
+ (7): GELU(approximate='none')
105
+ (8): Dropout(p=0.2, inplace=False)
106
+ (9): Linear(512, 512, bias=True)
107
+ (10): GELU(approximate='none')
108
+ (11): Dropout(p=0.2, inplace=False)
109
+ (12): Linear(512, 3000, bias=True)
110
+ )
111
+ )
112
+ Loaded /home/yandex/MLWG2025/danielvolkov/cayley_glob_sagpool_checks/best_ckpt_update_75000.pt to model
113
+ Validation VQA accuracy: 0.4347
114
+ Saved test predictions to /home/yandex/MLWG2025/danielvolkov/evaluations/cayley_global_sagpool/best.json
115
+ Test predictions saved to /home/yandex/MLWG2025/danielvolkov/evaluations/cayley_global_sagpool/best.json
evaluations/cayley_global_sagpool/last.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e71d2c4363cdd6ba87934c6b071e5da7020122c539818bb0222dae54a734af7f
3
+ size 20405668
evaluations/cayley_global_sagpool/last.out ADDED
@@ -0,0 +1,115 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Config:
2
+ {'adamw_lr': 5e-05,
3
+ 'adamw_weight_decay': 0.05,
4
+ 'add_lap_pe': True,
5
+ 'ans2idx_path': '/home/yandex/MLWG2025/danielvolkov/Documents/GAMER/data/VQA/answer2idx.json',
6
+ 'batch_size': 32,
7
+ 'checkpoint_dir': '/home/yandex/MLWG2025/danielvolkov/checkpoints',
8
+ 'checkpoint_interval_updates': 1000,
9
+ 'dataset_path': '/home/yandex/MLWG2025/danielvolkov/datasets/VQA_w_embed',
10
+ 'embeds_type': 'BERT/BEiT',
11
+ 'grad_acc_steps': 2,
12
+ 'graph_construction_method': 'cayley',
13
+ 'lap_pe_dim': 16,
14
+ 'log_every_n_updates': 10,
15
+ 'max_grad_norm': 1.0,
16
+ 'num_epochs': 12,
17
+ 'num_fusion_nodes': 6,
18
+ 'num_text_global_nodes': 2,
19
+ 'num_workers': 8,
20
+ 'persistent_workers': True,
21
+ 'pin_memory': True,
22
+ 'resume_checkpoint': '/home/yandex/MLWG2025/danielvolkov/cayley_glob_sagpool_checks/ckpt_update_81000.pt',
23
+ 'save_best': True,
24
+ 'self_loops_in_image_graph': True,
25
+ 'use_amp': True,
26
+ 'val_batches': 1000,
27
+ 'val_interval_updates': 3000,
28
+ 'warmup_fraction': 0.05}
29
+ Model config:
30
+ {'dropout': 0.2,
31
+ 'edge_dim': 0,
32
+ 'global_pool_method': 'mean',
33
+ 'global_sagpool_ratio': 0.5,
34
+ 'heads': 8,
35
+ 'hidden_dim': 512,
36
+ 'mlps_hidden_layers': 3,
37
+ 'node_dim': 768,
38
+ 'num_layers': 4,
39
+ 'output_dim': 3000,
40
+ 'pe_dim': 16,
41
+ 'sagpool_layer2ratio': {1: 0.7, 2: 0.7, 3: 0.8},
42
+ 'sagpool_mode': 'global'}
43
+ Model:
44
+ GraphGPSNet(
45
+ (node_mlp): Sequential(
46
+ (0): Linear(784, 512, bias=True)
47
+ (1): GELU(approximate='none')
48
+ (2): Dropout(p=0.2, inplace=False)
49
+ (3): Linear(512, 512, bias=True)
50
+ (4): GELU(approximate='none')
51
+ (5): Dropout(p=0.2, inplace=False)
52
+ (6): Linear(512, 512, bias=True)
53
+ (7): GELU(approximate='none')
54
+ (8): Dropout(p=0.2, inplace=False)
55
+ (9): Linear(512, 512, bias=True)
56
+ (10): GELU(approximate='none')
57
+ (11): Dropout(p=0.2, inplace=False)
58
+ (12): Linear(512, 512, bias=True)
59
+ )
60
+ (layers): ModuleList(
61
+ (0-3): 4 x GPSConv(512, conv=GINConv(nn=Sequential(
62
+ (0): Linear(512, 512, bias=True)
63
+ (1): GELU(approximate='none')
64
+ (2): Dropout(p=0.2, inplace=False)
65
+ (3): Linear(512, 512, bias=True)
66
+ (4): GELU(approximate='none')
67
+ (5): Dropout(p=0.2, inplace=False)
68
+ (6): Linear(512, 512, bias=True)
69
+ (7): GELU(approximate='none')
70
+ (8): Dropout(p=0.2, inplace=False)
71
+ (9): Linear(512, 512, bias=True)
72
+ (10): GELU(approximate='none')
73
+ (11): Dropout(p=0.2, inplace=False)
74
+ (12): Linear(512, 512, bias=True)
75
+ )), heads=8, attn_type=multihead)
76
+ )
77
+ (pools): ModuleList(
78
+ (0-3): 4 x None
79
+ )
80
+ (postnet): Sequential(
81
+ (0): Linear(512, 512, bias=True)
82
+ (1): GELU(approximate='none')
83
+ (2): Dropout(p=0.2, inplace=False)
84
+ (3): Linear(512, 512, bias=True)
85
+ (4): GELU(approximate='none')
86
+ (5): Dropout(p=0.2, inplace=False)
87
+ (6): Linear(512, 512, bias=True)
88
+ (7): GELU(approximate='none')
89
+ (8): Dropout(p=0.2, inplace=False)
90
+ (9): Linear(512, 512, bias=True)
91
+ (10): GELU(approximate='none')
92
+ (11): Dropout(p=0.2, inplace=False)
93
+ (12): Linear(512, 512, bias=True)
94
+ )
95
+ (global_sagpool): SAGPooling(GATConv, 512, ratio=0.5, multiplier=1.0)
96
+ (readout): Sequential(
97
+ (0): Linear(512, 512, bias=True)
98
+ (1): GELU(approximate='none')
99
+ (2): Dropout(p=0.2, inplace=False)
100
+ (3): Linear(512, 512, bias=True)
101
+ (4): GELU(approximate='none')
102
+ (5): Dropout(p=0.2, inplace=False)
103
+ (6): Linear(512, 512, bias=True)
104
+ (7): GELU(approximate='none')
105
+ (8): Dropout(p=0.2, inplace=False)
106
+ (9): Linear(512, 512, bias=True)
107
+ (10): GELU(approximate='none')
108
+ (11): Dropout(p=0.2, inplace=False)
109
+ (12): Linear(512, 3000, bias=True)
110
+ )
111
+ )
112
+ Loaded /home/yandex/MLWG2025/danielvolkov/cayley_glob_sagpool_checks/ckpt_update_81000.pt to model
113
+ Validation VQA accuracy: 0.4348
114
+ Saved test predictions to /home/yandex/MLWG2025/danielvolkov/evaluations/cayley_global_sagpool/last.json
115
+ Test predictions saved to /home/yandex/MLWG2025/danielvolkov/evaluations/cayley_global_sagpool/last.json
evaluations/cayley_hierarchical_sagpool/best.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:dbb55ec23cba79b9a9bb14946a26e689821105317a50ab9c70ace60705933115
3
+ size 20424873
evaluations/cayley_hierarchical_sagpool/best.out ADDED
@@ -0,0 +1,116 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Config:
2
+ {'adamw_lr': 5e-05,
3
+ 'adamw_weight_decay': 0.05,
4
+ 'add_lap_pe': True,
5
+ 'ans2idx_path': '/home/yandex/MLWG2025/danielvolkov/Documents/GAMER/data/VQA/answer2idx.json',
6
+ 'batch_size': 32,
7
+ 'checkpoint_dir': '/home/yandex/MLWG2025/danielvolkov/checkpoints',
8
+ 'checkpoint_interval_updates': 1000,
9
+ 'dataset_path': '/home/yandex/MLWG2025/danielvolkov/datasets/VQA_w_embed',
10
+ 'embeds_type': 'BERT/BEiT',
11
+ 'grad_acc_steps': 2,
12
+ 'graph_construction_method': 'cayley',
13
+ 'lap_pe_dim': 16,
14
+ 'log_every_n_updates': 10,
15
+ 'max_grad_norm': 1.0,
16
+ 'num_epochs': 12,
17
+ 'num_fusion_nodes': 6,
18
+ 'num_text_global_nodes': 2,
19
+ 'num_workers': 8,
20
+ 'persistent_workers': True,
21
+ 'pin_memory': True,
22
+ 'resume_checkpoint': '/home/yandex/MLWG2025/danielvolkov/cayley_hierarchical_sagpool_checks/best_ckpt_update_72000.pt',
23
+ 'save_best': True,
24
+ 'self_loops_in_image_graph': True,
25
+ 'use_amp': True,
26
+ 'val_batches': 1000,
27
+ 'val_interval_updates': 3000,
28
+ 'warmup_fraction': 0.05}
29
+ Model config:
30
+ {'dropout': 0.2,
31
+ 'edge_dim': 0,
32
+ 'global_pool_method': 'mean',
33
+ 'global_sagpool_ratio': 0.5,
34
+ 'heads': 8,
35
+ 'hidden_dim': 512,
36
+ 'mlps_hidden_layers': 3,
37
+ 'node_dim': 768,
38
+ 'num_layers': 4,
39
+ 'output_dim': 3000,
40
+ 'pe_dim': 16,
41
+ 'sagpool_layer2ratio': {1: 0.7, 2: 0.7, 3: 0.8},
42
+ 'sagpool_mode': 'hierarchical'}
43
+ Model:
44
+ GraphGPSNet(
45
+ (node_mlp): Sequential(
46
+ (0): Linear(784, 512, bias=True)
47
+ (1): GELU(approximate='none')
48
+ (2): Dropout(p=0.2, inplace=False)
49
+ (3): Linear(512, 512, bias=True)
50
+ (4): GELU(approximate='none')
51
+ (5): Dropout(p=0.2, inplace=False)
52
+ (6): Linear(512, 512, bias=True)
53
+ (7): GELU(approximate='none')
54
+ (8): Dropout(p=0.2, inplace=False)
55
+ (9): Linear(512, 512, bias=True)
56
+ (10): GELU(approximate='none')
57
+ (11): Dropout(p=0.2, inplace=False)
58
+ (12): Linear(512, 512, bias=True)
59
+ )
60
+ (layers): ModuleList(
61
+ (0-3): 4 x GPSConv(512, conv=GINConv(nn=Sequential(
62
+ (0): Linear(512, 512, bias=True)
63
+ (1): GELU(approximate='none')
64
+ (2): Dropout(p=0.2, inplace=False)
65
+ (3): Linear(512, 512, bias=True)
66
+ (4): GELU(approximate='none')
67
+ (5): Dropout(p=0.2, inplace=False)
68
+ (6): Linear(512, 512, bias=True)
69
+ (7): GELU(approximate='none')
70
+ (8): Dropout(p=0.2, inplace=False)
71
+ (9): Linear(512, 512, bias=True)
72
+ (10): GELU(approximate='none')
73
+ (11): Dropout(p=0.2, inplace=False)
74
+ (12): Linear(512, 512, bias=True)
75
+ )), heads=8, attn_type=multihead)
76
+ )
77
+ (pools): ModuleList(
78
+ (0): None
79
+ (1-2): 2 x SAGPooling(GATConv, 512, ratio=0.7, multiplier=1.0)
80
+ (3): SAGPooling(GATConv, 512, ratio=0.8, multiplier=1.0)
81
+ )
82
+ (postnet): Sequential(
83
+ (0): Linear(512, 512, bias=True)
84
+ (1): GELU(approximate='none')
85
+ (2): Dropout(p=0.2, inplace=False)
86
+ (3): Linear(512, 512, bias=True)
87
+ (4): GELU(approximate='none')
88
+ (5): Dropout(p=0.2, inplace=False)
89
+ (6): Linear(512, 512, bias=True)
90
+ (7): GELU(approximate='none')
91
+ (8): Dropout(p=0.2, inplace=False)
92
+ (9): Linear(512, 512, bias=True)
93
+ (10): GELU(approximate='none')
94
+ (11): Dropout(p=0.2, inplace=False)
95
+ (12): Linear(512, 512, bias=True)
96
+ )
97
+ (readout): Sequential(
98
+ (0): Linear(512, 512, bias=True)
99
+ (1): GELU(approximate='none')
100
+ (2): Dropout(p=0.2, inplace=False)
101
+ (3): Linear(512, 512, bias=True)
102
+ (4): GELU(approximate='none')
103
+ (5): Dropout(p=0.2, inplace=False)
104
+ (6): Linear(512, 512, bias=True)
105
+ (7): GELU(approximate='none')
106
+ (8): Dropout(p=0.2, inplace=False)
107
+ (9): Linear(512, 512, bias=True)
108
+ (10): GELU(approximate='none')
109
+ (11): Dropout(p=0.2, inplace=False)
110
+ (12): Linear(512, 3000, bias=True)
111
+ )
112
+ )
113
+ Loaded /home/yandex/MLWG2025/danielvolkov/cayley_hierarchical_sagpool_checks/best_ckpt_update_72000.pt to model
114
+ Validation VQA accuracy: 0.4362
115
+ Saved test predictions to /home/yandex/MLWG2025/danielvolkov/evaluations/cayley_hierarchical_sagpool/best.json
116
+ Test predictions saved to /home/yandex/MLWG2025/danielvolkov/evaluations/cayley_hierarchical_sagpool/best.json
evaluations/cayley_hierarchical_sagpool/last.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:928cb860c4d53148738cd4256bfe7b6ab367c7b13ef1c1191f6f3e0888cfd7ca
3
+ size 20435239
evaluations/cayley_hierarchical_sagpool/last.out ADDED
@@ -0,0 +1,116 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Config:
2
+ {'adamw_lr': 5e-05,
3
+ 'adamw_weight_decay': 0.05,
4
+ 'add_lap_pe': True,
5
+ 'ans2idx_path': '/home/yandex/MLWG2025/danielvolkov/Documents/GAMER/data/VQA/answer2idx.json',
6
+ 'batch_size': 32,
7
+ 'checkpoint_dir': '/home/yandex/MLWG2025/danielvolkov/checkpoints',
8
+ 'checkpoint_interval_updates': 1000,
9
+ 'dataset_path': '/home/yandex/MLWG2025/danielvolkov/datasets/VQA_w_embed',
10
+ 'embeds_type': 'BERT/BEiT',
11
+ 'grad_acc_steps': 2,
12
+ 'graph_construction_method': 'cayley',
13
+ 'lap_pe_dim': 16,
14
+ 'log_every_n_updates': 10,
15
+ 'max_grad_norm': 1.0,
16
+ 'num_epochs': 12,
17
+ 'num_fusion_nodes': 6,
18
+ 'num_text_global_nodes': 2,
19
+ 'num_workers': 8,
20
+ 'persistent_workers': True,
21
+ 'pin_memory': True,
22
+ 'resume_checkpoint': '/home/yandex/MLWG2025/danielvolkov/cayley_hierarchical_sagpool_checks/interrupt_ckpt_update_81000.pt',
23
+ 'save_best': True,
24
+ 'self_loops_in_image_graph': True,
25
+ 'use_amp': True,
26
+ 'val_batches': 1000,
27
+ 'val_interval_updates': 3000,
28
+ 'warmup_fraction': 0.05}
29
+ Model config:
30
+ {'dropout': 0.2,
31
+ 'edge_dim': 0,
32
+ 'global_pool_method': 'mean',
33
+ 'global_sagpool_ratio': 0.5,
34
+ 'heads': 8,
35
+ 'hidden_dim': 512,
36
+ 'mlps_hidden_layers': 3,
37
+ 'node_dim': 768,
38
+ 'num_layers': 4,
39
+ 'output_dim': 3000,
40
+ 'pe_dim': 16,
41
+ 'sagpool_layer2ratio': {1: 0.7, 2: 0.7, 3: 0.8},
42
+ 'sagpool_mode': 'hierarchical'}
43
+ Model:
44
+ GraphGPSNet(
45
+ (node_mlp): Sequential(
46
+ (0): Linear(784, 512, bias=True)
47
+ (1): GELU(approximate='none')
48
+ (2): Dropout(p=0.2, inplace=False)
49
+ (3): Linear(512, 512, bias=True)
50
+ (4): GELU(approximate='none')
51
+ (5): Dropout(p=0.2, inplace=False)
52
+ (6): Linear(512, 512, bias=True)
53
+ (7): GELU(approximate='none')
54
+ (8): Dropout(p=0.2, inplace=False)
55
+ (9): Linear(512, 512, bias=True)
56
+ (10): GELU(approximate='none')
57
+ (11): Dropout(p=0.2, inplace=False)
58
+ (12): Linear(512, 512, bias=True)
59
+ )
60
+ (layers): ModuleList(
61
+ (0-3): 4 x GPSConv(512, conv=GINConv(nn=Sequential(
62
+ (0): Linear(512, 512, bias=True)
63
+ (1): GELU(approximate='none')
64
+ (2): Dropout(p=0.2, inplace=False)
65
+ (3): Linear(512, 512, bias=True)
66
+ (4): GELU(approximate='none')
67
+ (5): Dropout(p=0.2, inplace=False)
68
+ (6): Linear(512, 512, bias=True)
69
+ (7): GELU(approximate='none')
70
+ (8): Dropout(p=0.2, inplace=False)
71
+ (9): Linear(512, 512, bias=True)
72
+ (10): GELU(approximate='none')
73
+ (11): Dropout(p=0.2, inplace=False)
74
+ (12): Linear(512, 512, bias=True)
75
+ )), heads=8, attn_type=multihead)
76
+ )
77
+ (pools): ModuleList(
78
+ (0): None
79
+ (1-2): 2 x SAGPooling(GATConv, 512, ratio=0.7, multiplier=1.0)
80
+ (3): SAGPooling(GATConv, 512, ratio=0.8, multiplier=1.0)
81
+ )
82
+ (postnet): Sequential(
83
+ (0): Linear(512, 512, bias=True)
84
+ (1): GELU(approximate='none')
85
+ (2): Dropout(p=0.2, inplace=False)
86
+ (3): Linear(512, 512, bias=True)
87
+ (4): GELU(approximate='none')
88
+ (5): Dropout(p=0.2, inplace=False)
89
+ (6): Linear(512, 512, bias=True)
90
+ (7): GELU(approximate='none')
91
+ (8): Dropout(p=0.2, inplace=False)
92
+ (9): Linear(512, 512, bias=True)
93
+ (10): GELU(approximate='none')
94
+ (11): Dropout(p=0.2, inplace=False)
95
+ (12): Linear(512, 512, bias=True)
96
+ )
97
+ (readout): Sequential(
98
+ (0): Linear(512, 512, bias=True)
99
+ (1): GELU(approximate='none')
100
+ (2): Dropout(p=0.2, inplace=False)
101
+ (3): Linear(512, 512, bias=True)
102
+ (4): GELU(approximate='none')
103
+ (5): Dropout(p=0.2, inplace=False)
104
+ (6): Linear(512, 512, bias=True)
105
+ (7): GELU(approximate='none')
106
+ (8): Dropout(p=0.2, inplace=False)
107
+ (9): Linear(512, 512, bias=True)
108
+ (10): GELU(approximate='none')
109
+ (11): Dropout(p=0.2, inplace=False)
110
+ (12): Linear(512, 3000, bias=True)
111
+ )
112
+ )
113
+ Loaded /home/yandex/MLWG2025/danielvolkov/cayley_hierarchical_sagpool_checks/interrupt_ckpt_update_81000.pt to model
114
+ Validation VQA accuracy: 0.4369
115
+ Saved test predictions to /home/yandex/MLWG2025/danielvolkov/evaluations/cayley_hierarchical_sagpool/last.json
116
+ Test predictions saved to /home/yandex/MLWG2025/danielvolkov/evaluations/cayley_hierarchical_sagpool/last.json
evaluations/cayley_no_sagpool/best.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:c34bcb14ab749daa8b93cfe9327523e8bad65947216d6cf289a2c1ba1ab46018
3
+ size 20416693
evaluations/cayley_no_sagpool/best.out ADDED
@@ -0,0 +1,114 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Config:
2
+ {'adamw_lr': 5e-05,
3
+ 'adamw_weight_decay': 0.05,
4
+ 'add_lap_pe': True,
5
+ 'ans2idx_path': '/home/yandex/MLWG2025/danielvolkov/Documents/GAMER/data/VQA/answer2idx.json',
6
+ 'batch_size': 32,
7
+ 'checkpoint_dir': '/home/yandex/MLWG2025/danielvolkov/checkpoints',
8
+ 'checkpoint_interval_updates': 1000,
9
+ 'dataset_path': '/home/yandex/MLWG2025/danielvolkov/datasets/VQA_w_embed',
10
+ 'embeds_type': 'BERT/BEiT',
11
+ 'grad_acc_steps': 2,
12
+ 'graph_construction_method': 'cayley',
13
+ 'lap_pe_dim': 16,
14
+ 'log_every_n_updates': 10,
15
+ 'max_grad_norm': 1.0,
16
+ 'num_epochs': 12,
17
+ 'num_fusion_nodes': 6,
18
+ 'num_text_global_nodes': 2,
19
+ 'num_workers': 8,
20
+ 'persistent_workers': True,
21
+ 'pin_memory': True,
22
+ 'resume_checkpoint': '/home/yandex/MLWG2025/danielvolkov/cayley_checkpoints/best_ckpt_update_81000.pt',
23
+ 'save_best': True,
24
+ 'self_loops_in_image_graph': True,
25
+ 'use_amp': True,
26
+ 'val_batches': 1000,
27
+ 'val_interval_updates': 3000,
28
+ 'warmup_fraction': 0.05}
29
+ Model config:
30
+ {'dropout': 0.2,
31
+ 'edge_dim': 0,
32
+ 'global_pool_method': 'mean',
33
+ 'global_sagpool_ratio': 0.5,
34
+ 'heads': 8,
35
+ 'hidden_dim': 512,
36
+ 'mlps_hidden_layers': 3,
37
+ 'node_dim': 768,
38
+ 'num_layers': 4,
39
+ 'output_dim': 3000,
40
+ 'pe_dim': 16,
41
+ 'sagpool_layer2ratio': {1: 0.7, 2: 0.7, 3: 0.8},
42
+ 'sagpool_mode': 'none'}
43
+ Model:
44
+ GraphGPSNet(
45
+ (node_mlp): Sequential(
46
+ (0): Linear(784, 512, bias=True)
47
+ (1): GELU(approximate='none')
48
+ (2): Dropout(p=0.2, inplace=False)
49
+ (3): Linear(512, 512, bias=True)
50
+ (4): GELU(approximate='none')
51
+ (5): Dropout(p=0.2, inplace=False)
52
+ (6): Linear(512, 512, bias=True)
53
+ (7): GELU(approximate='none')
54
+ (8): Dropout(p=0.2, inplace=False)
55
+ (9): Linear(512, 512, bias=True)
56
+ (10): GELU(approximate='none')
57
+ (11): Dropout(p=0.2, inplace=False)
58
+ (12): Linear(512, 512, bias=True)
59
+ )
60
+ (layers): ModuleList(
61
+ (0-3): 4 x GPSConv(512, conv=GINConv(nn=Sequential(
62
+ (0): Linear(512, 512, bias=True)
63
+ (1): GELU(approximate='none')
64
+ (2): Dropout(p=0.2, inplace=False)
65
+ (3): Linear(512, 512, bias=True)
66
+ (4): GELU(approximate='none')
67
+ (5): Dropout(p=0.2, inplace=False)
68
+ (6): Linear(512, 512, bias=True)
69
+ (7): GELU(approximate='none')
70
+ (8): Dropout(p=0.2, inplace=False)
71
+ (9): Linear(512, 512, bias=True)
72
+ (10): GELU(approximate='none')
73
+ (11): Dropout(p=0.2, inplace=False)
74
+ (12): Linear(512, 512, bias=True)
75
+ )), heads=8, attn_type=multihead)
76
+ )
77
+ (pools): ModuleList(
78
+ (0-3): 4 x None
79
+ )
80
+ (postnet): Sequential(
81
+ (0): Linear(512, 512, bias=True)
82
+ (1): GELU(approximate='none')
83
+ (2): Dropout(p=0.2, inplace=False)
84
+ (3): Linear(512, 512, bias=True)
85
+ (4): GELU(approximate='none')
86
+ (5): Dropout(p=0.2, inplace=False)
87
+ (6): Linear(512, 512, bias=True)
88
+ (7): GELU(approximate='none')
89
+ (8): Dropout(p=0.2, inplace=False)
90
+ (9): Linear(512, 512, bias=True)
91
+ (10): GELU(approximate='none')
92
+ (11): Dropout(p=0.2, inplace=False)
93
+ (12): Linear(512, 512, bias=True)
94
+ )
95
+ (readout): Sequential(
96
+ (0): Linear(512, 512, bias=True)
97
+ (1): GELU(approximate='none')
98
+ (2): Dropout(p=0.2, inplace=False)
99
+ (3): Linear(512, 512, bias=True)
100
+ (4): GELU(approximate='none')
101
+ (5): Dropout(p=0.2, inplace=False)
102
+ (6): Linear(512, 512, bias=True)
103
+ (7): GELU(approximate='none')
104
+ (8): Dropout(p=0.2, inplace=False)
105
+ (9): Linear(512, 512, bias=True)
106
+ (10): GELU(approximate='none')
107
+ (11): Dropout(p=0.2, inplace=False)
108
+ (12): Linear(512, 3000, bias=True)
109
+ )
110
+ )
111
+ Loaded /home/yandex/MLWG2025/danielvolkov/cayley_checkpoints/best_ckpt_update_81000.pt to model
112
+ Validation VQA accuracy: 0.4461
113
+ Saved test predictions to /home/yandex/MLWG2025/danielvolkov/evaluations/cayley_no_sagpool/best.json
114
+ Test predictions saved to /home/yandex/MLWG2025/danielvolkov/evaluations/cayley_no_sagpool/best.json
evaluations/cayley_no_sagpool/last.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:4378eb4ca3990dd2d557d8a06e22f4313b421973de09f272cf29fe9b33360a4d
3
+ size 20416736
evaluations/cayley_no_sagpool/last.out ADDED
@@ -0,0 +1,114 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Config:
2
+ {'adamw_lr': 5e-05,
3
+ 'adamw_weight_decay': 0.05,
4
+ 'add_lap_pe': True,
5
+ 'ans2idx_path': '/home/yandex/MLWG2025/danielvolkov/Documents/GAMER/data/VQA/answer2idx.json',
6
+ 'batch_size': 32,
7
+ 'checkpoint_dir': '/home/yandex/MLWG2025/danielvolkov/checkpoints',
8
+ 'checkpoint_interval_updates': 1000,
9
+ 'dataset_path': '/home/yandex/MLWG2025/danielvolkov/datasets/VQA_w_embed',
10
+ 'embeds_type': 'BERT/BEiT',
11
+ 'grad_acc_steps': 2,
12
+ 'graph_construction_method': 'cayley',
13
+ 'lap_pe_dim': 16,
14
+ 'log_every_n_updates': 10,
15
+ 'max_grad_norm': 1.0,
16
+ 'num_epochs': 12,
17
+ 'num_fusion_nodes': 6,
18
+ 'num_text_global_nodes': 2,
19
+ 'num_workers': 8,
20
+ 'persistent_workers': True,
21
+ 'pin_memory': True,
22
+ 'resume_checkpoint': '/home/yandex/MLWG2025/danielvolkov/cayley_checkpoints/ckpt_update_82000.pt',
23
+ 'save_best': True,
24
+ 'self_loops_in_image_graph': True,
25
+ 'use_amp': True,
26
+ 'val_batches': 1000,
27
+ 'val_interval_updates': 3000,
28
+ 'warmup_fraction': 0.05}
29
+ Model config:
30
+ {'dropout': 0.2,
31
+ 'edge_dim': 0,
32
+ 'global_pool_method': 'mean',
33
+ 'global_sagpool_ratio': 0.5,
34
+ 'heads': 8,
35
+ 'hidden_dim': 512,
36
+ 'mlps_hidden_layers': 3,
37
+ 'node_dim': 768,
38
+ 'num_layers': 4,
39
+ 'output_dim': 3000,
40
+ 'pe_dim': 16,
41
+ 'sagpool_layer2ratio': {1: 0.7, 2: 0.7, 3: 0.8},
42
+ 'sagpool_mode': 'none'}
43
+ Model:
44
+ GraphGPSNet(
45
+ (node_mlp): Sequential(
46
+ (0): Linear(784, 512, bias=True)
47
+ (1): GELU(approximate='none')
48
+ (2): Dropout(p=0.2, inplace=False)
49
+ (3): Linear(512, 512, bias=True)
50
+ (4): GELU(approximate='none')
51
+ (5): Dropout(p=0.2, inplace=False)
52
+ (6): Linear(512, 512, bias=True)
53
+ (7): GELU(approximate='none')
54
+ (8): Dropout(p=0.2, inplace=False)
55
+ (9): Linear(512, 512, bias=True)
56
+ (10): GELU(approximate='none')
57
+ (11): Dropout(p=0.2, inplace=False)
58
+ (12): Linear(512, 512, bias=True)
59
+ )
60
+ (layers): ModuleList(
61
+ (0-3): 4 x GPSConv(512, conv=GINConv(nn=Sequential(
62
+ (0): Linear(512, 512, bias=True)
63
+ (1): GELU(approximate='none')
64
+ (2): Dropout(p=0.2, inplace=False)
65
+ (3): Linear(512, 512, bias=True)
66
+ (4): GELU(approximate='none')
67
+ (5): Dropout(p=0.2, inplace=False)
68
+ (6): Linear(512, 512, bias=True)
69
+ (7): GELU(approximate='none')
70
+ (8): Dropout(p=0.2, inplace=False)
71
+ (9): Linear(512, 512, bias=True)
72
+ (10): GELU(approximate='none')
73
+ (11): Dropout(p=0.2, inplace=False)
74
+ (12): Linear(512, 512, bias=True)
75
+ )), heads=8, attn_type=multihead)
76
+ )
77
+ (pools): ModuleList(
78
+ (0-3): 4 x None
79
+ )
80
+ (postnet): Sequential(
81
+ (0): Linear(512, 512, bias=True)
82
+ (1): GELU(approximate='none')
83
+ (2): Dropout(p=0.2, inplace=False)
84
+ (3): Linear(512, 512, bias=True)
85
+ (4): GELU(approximate='none')
86
+ (5): Dropout(p=0.2, inplace=False)
87
+ (6): Linear(512, 512, bias=True)
88
+ (7): GELU(approximate='none')
89
+ (8): Dropout(p=0.2, inplace=False)
90
+ (9): Linear(512, 512, bias=True)
91
+ (10): GELU(approximate='none')
92
+ (11): Dropout(p=0.2, inplace=False)
93
+ (12): Linear(512, 512, bias=True)
94
+ )
95
+ (readout): Sequential(
96
+ (0): Linear(512, 512, bias=True)
97
+ (1): GELU(approximate='none')
98
+ (2): Dropout(p=0.2, inplace=False)
99
+ (3): Linear(512, 512, bias=True)
100
+ (4): GELU(approximate='none')
101
+ (5): Dropout(p=0.2, inplace=False)
102
+ (6): Linear(512, 512, bias=True)
103
+ (7): GELU(approximate='none')
104
+ (8): Dropout(p=0.2, inplace=False)
105
+ (9): Linear(512, 512, bias=True)
106
+ (10): GELU(approximate='none')
107
+ (11): Dropout(p=0.2, inplace=False)
108
+ (12): Linear(512, 3000, bias=True)
109
+ )
110
+ )
111
+ Loaded /home/yandex/MLWG2025/danielvolkov/cayley_checkpoints/ckpt_update_82000.pt to model
112
+ Validation VQA accuracy: 0.4460
113
+ Saved test predictions to /home/yandex/MLWG2025/danielvolkov/evaluations/cayley_no_sagpool/last.json
114
+ Test predictions saved to /home/yandex/MLWG2025/danielvolkov/evaluations/cayley_no_sagpool/last.json
evaluations/mmg_BLIP_global_sagpool/best.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:2f9d90eea8e2a8055eb1c5fb6616fc77986a5cfc1b3ac57da0c5b2d4ee90531b
3
+ size 20399753
evaluations/mmg_BLIP_global_sagpool/best.out ADDED
@@ -0,0 +1,130 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Config:
2
+ {'adamw_lr': 5e-05,
3
+ 'adamw_weight_decay': 0.05,
4
+ 'add_lap_pe': True,
5
+ 'ans2idx_path': '/home/yandex/MLWG2025/danielvolkov/Documents/GAMER/data/VQA/answer2idx.json',
6
+ 'batch_size': 32,
7
+ 'checkpoint_dir': '/home/yandex/MLWG2025/danielvolkov/checkpoints',
8
+ 'checkpoint_interval_updates': 1000,
9
+ 'dataset_path': '/home/yandex/MLWG2025/danielvolkov/datasets/VQA_w_BLIP_embeds',
10
+ 'embeds_type': 'BLIP',
11
+ 'grad_acc_steps': 2,
12
+ 'graph_construction_method': 'mmg',
13
+ 'lap_pe_dim': 16,
14
+ 'log_every_n_updates': 10,
15
+ 'max_grad_norm': 1.0,
16
+ 'num_epochs': 12,
17
+ 'num_fusion_nodes': 6,
18
+ 'num_text_global_nodes': 2,
19
+ 'num_workers': 8,
20
+ 'persistent_workers': True,
21
+ 'pin_memory': True,
22
+ 'resume_checkpoint': '/home/yandex/MLWG2025/danielvolkov/BLIP_mmg_global_checks/best_ckpt_update_78000.pt',
23
+ 'save_best': True,
24
+ 'self_loops_in_image_graph': True,
25
+ 'use_amp': True,
26
+ 'val_batches': 1000,
27
+ 'val_interval_updates': 3000,
28
+ 'warmup_fraction': 0.05}
29
+ Model config:
30
+ {'dropout': 0.2,
31
+ 'edge_dim': 6,
32
+ 'global_pool_method': 'mean',
33
+ 'global_sagpool_ratio': 0.5,
34
+ 'heads': 8,
35
+ 'hidden_dim': 512,
36
+ 'mlps_hidden_layers': 3,
37
+ 'node_dim': 773,
38
+ 'num_layers': 4,
39
+ 'output_dim': 3000,
40
+ 'pe_dim': 16,
41
+ 'sagpool_layer2ratio': {1: 0.7, 2: 0.7, 3: 0.8},
42
+ 'sagpool_mode': 'global'}
43
+ Model:
44
+ GraphGPSNet(
45
+ (node_mlp): Sequential(
46
+ (0): Linear(789, 512, bias=True)
47
+ (1): GELU(approximate='none')
48
+ (2): Dropout(p=0.2, inplace=False)
49
+ (3): Linear(512, 512, bias=True)
50
+ (4): GELU(approximate='none')
51
+ (5): Dropout(p=0.2, inplace=False)
52
+ (6): Linear(512, 512, bias=True)
53
+ (7): GELU(approximate='none')
54
+ (8): Dropout(p=0.2, inplace=False)
55
+ (9): Linear(512, 512, bias=True)
56
+ (10): GELU(approximate='none')
57
+ (11): Dropout(p=0.2, inplace=False)
58
+ (12): Linear(512, 512, bias=True)
59
+ )
60
+ (edge_mlp): Sequential(
61
+ (0): Linear(6, 512, bias=True)
62
+ (1): GELU(approximate='none')
63
+ (2): Dropout(p=0.2, inplace=False)
64
+ (3): Linear(512, 512, bias=True)
65
+ (4): GELU(approximate='none')
66
+ (5): Dropout(p=0.2, inplace=False)
67
+ (6): Linear(512, 512, bias=True)
68
+ (7): GELU(approximate='none')
69
+ (8): Dropout(p=0.2, inplace=False)
70
+ (9): Linear(512, 512, bias=True)
71
+ (10): GELU(approximate='none')
72
+ (11): Dropout(p=0.2, inplace=False)
73
+ (12): Linear(512, 512, bias=True)
74
+ )
75
+ (layers): ModuleList(
76
+ (0-3): 4 x GPSConv(512, conv=GINEConv(nn=Sequential(
77
+ (0): Linear(512, 512, bias=True)
78
+ (1): GELU(approximate='none')
79
+ (2): Dropout(p=0.2, inplace=False)
80
+ (3): Linear(512, 512, bias=True)
81
+ (4): GELU(approximate='none')
82
+ (5): Dropout(p=0.2, inplace=False)
83
+ (6): Linear(512, 512, bias=True)
84
+ (7): GELU(approximate='none')
85
+ (8): Dropout(p=0.2, inplace=False)
86
+ (9): Linear(512, 512, bias=True)
87
+ (10): GELU(approximate='none')
88
+ (11): Dropout(p=0.2, inplace=False)
89
+ (12): Linear(512, 512, bias=True)
90
+ )), heads=8, attn_type=multihead)
91
+ )
92
+ (pools): ModuleList(
93
+ (0-3): 4 x None
94
+ )
95
+ (postnet): Sequential(
96
+ (0): Linear(512, 512, bias=True)
97
+ (1): GELU(approximate='none')
98
+ (2): Dropout(p=0.2, inplace=False)
99
+ (3): Linear(512, 512, bias=True)
100
+ (4): GELU(approximate='none')
101
+ (5): Dropout(p=0.2, inplace=False)
102
+ (6): Linear(512, 512, bias=True)
103
+ (7): GELU(approximate='none')
104
+ (8): Dropout(p=0.2, inplace=False)
105
+ (9): Linear(512, 512, bias=True)
106
+ (10): GELU(approximate='none')
107
+ (11): Dropout(p=0.2, inplace=False)
108
+ (12): Linear(512, 512, bias=True)
109
+ )
110
+ (global_sagpool): SAGPooling(GATConv, 512, ratio=0.5, multiplier=1.0)
111
+ (readout): Sequential(
112
+ (0): Linear(512, 512, bias=True)
113
+ (1): GELU(approximate='none')
114
+ (2): Dropout(p=0.2, inplace=False)
115
+ (3): Linear(512, 512, bias=True)
116
+ (4): GELU(approximate='none')
117
+ (5): Dropout(p=0.2, inplace=False)
118
+ (6): Linear(512, 512, bias=True)
119
+ (7): GELU(approximate='none')
120
+ (8): Dropout(p=0.2, inplace=False)
121
+ (9): Linear(512, 512, bias=True)
122
+ (10): GELU(approximate='none')
123
+ (11): Dropout(p=0.2, inplace=False)
124
+ (12): Linear(512, 3000, bias=True)
125
+ )
126
+ )
127
+ Loaded /home/yandex/MLWG2025/danielvolkov/BLIP_mmg_global_checks/best_ckpt_update_78000.pt to model
128
+ Validation VQA accuracy: 0.4382
129
+ Saved test predictions to /home/yandex/MLWG2025/danielvolkov/evaluations/mmg_BLIP_global_sagpool/best.json
130
+ Test predictions saved to /home/yandex/MLWG2025/danielvolkov/evaluations/mmg_BLIP_global_sagpool/best.json
evaluations/mmg_BLIP_global_sagpool/last.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:0af7958b41643776c3347ef0abc4b3622652c077210fc7c94e34e2defc360710
3
+ size 20396948
evaluations/mmg_BLIP_global_sagpool/last.out ADDED
@@ -0,0 +1,130 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Config:
2
+ {'adamw_lr': 5e-05,
3
+ 'adamw_weight_decay': 0.05,
4
+ 'add_lap_pe': True,
5
+ 'ans2idx_path': '/home/yandex/MLWG2025/danielvolkov/Documents/GAMER/data/VQA/answer2idx.json',
6
+ 'batch_size': 32,
7
+ 'checkpoint_dir': '/home/yandex/MLWG2025/danielvolkov/checkpoints',
8
+ 'checkpoint_interval_updates': 1000,
9
+ 'dataset_path': '/home/yandex/MLWG2025/danielvolkov/datasets/VQA_w_BLIP_embeds',
10
+ 'embeds_type': 'BLIP',
11
+ 'grad_acc_steps': 2,
12
+ 'graph_construction_method': 'mmg',
13
+ 'lap_pe_dim': 16,
14
+ 'log_every_n_updates': 10,
15
+ 'max_grad_norm': 1.0,
16
+ 'num_epochs': 12,
17
+ 'num_fusion_nodes': 6,
18
+ 'num_text_global_nodes': 2,
19
+ 'num_workers': 8,
20
+ 'persistent_workers': True,
21
+ 'pin_memory': True,
22
+ 'resume_checkpoint': '/home/yandex/MLWG2025/danielvolkov/BLIP_mmg_global_checks/ckpt_update_81000.pt',
23
+ 'save_best': True,
24
+ 'self_loops_in_image_graph': True,
25
+ 'use_amp': True,
26
+ 'val_batches': 1000,
27
+ 'val_interval_updates': 3000,
28
+ 'warmup_fraction': 0.05}
29
+ Model config:
30
+ {'dropout': 0.2,
31
+ 'edge_dim': 6,
32
+ 'global_pool_method': 'mean',
33
+ 'global_sagpool_ratio': 0.5,
34
+ 'heads': 8,
35
+ 'hidden_dim': 512,
36
+ 'mlps_hidden_layers': 3,
37
+ 'node_dim': 773,
38
+ 'num_layers': 4,
39
+ 'output_dim': 3000,
40
+ 'pe_dim': 16,
41
+ 'sagpool_layer2ratio': {1: 0.7, 2: 0.7, 3: 0.8},
42
+ 'sagpool_mode': 'global'}
43
+ Model:
44
+ GraphGPSNet(
45
+ (node_mlp): Sequential(
46
+ (0): Linear(789, 512, bias=True)
47
+ (1): GELU(approximate='none')
48
+ (2): Dropout(p=0.2, inplace=False)
49
+ (3): Linear(512, 512, bias=True)
50
+ (4): GELU(approximate='none')
51
+ (5): Dropout(p=0.2, inplace=False)
52
+ (6): Linear(512, 512, bias=True)
53
+ (7): GELU(approximate='none')
54
+ (8): Dropout(p=0.2, inplace=False)
55
+ (9): Linear(512, 512, bias=True)
56
+ (10): GELU(approximate='none')
57
+ (11): Dropout(p=0.2, inplace=False)
58
+ (12): Linear(512, 512, bias=True)
59
+ )
60
+ (edge_mlp): Sequential(
61
+ (0): Linear(6, 512, bias=True)
62
+ (1): GELU(approximate='none')
63
+ (2): Dropout(p=0.2, inplace=False)
64
+ (3): Linear(512, 512, bias=True)
65
+ (4): GELU(approximate='none')
66
+ (5): Dropout(p=0.2, inplace=False)
67
+ (6): Linear(512, 512, bias=True)
68
+ (7): GELU(approximate='none')
69
+ (8): Dropout(p=0.2, inplace=False)
70
+ (9): Linear(512, 512, bias=True)
71
+ (10): GELU(approximate='none')
72
+ (11): Dropout(p=0.2, inplace=False)
73
+ (12): Linear(512, 512, bias=True)
74
+ )
75
+ (layers): ModuleList(
76
+ (0-3): 4 x GPSConv(512, conv=GINEConv(nn=Sequential(
77
+ (0): Linear(512, 512, bias=True)
78
+ (1): GELU(approximate='none')
79
+ (2): Dropout(p=0.2, inplace=False)
80
+ (3): Linear(512, 512, bias=True)
81
+ (4): GELU(approximate='none')
82
+ (5): Dropout(p=0.2, inplace=False)
83
+ (6): Linear(512, 512, bias=True)
84
+ (7): GELU(approximate='none')
85
+ (8): Dropout(p=0.2, inplace=False)
86
+ (9): Linear(512, 512, bias=True)
87
+ (10): GELU(approximate='none')
88
+ (11): Dropout(p=0.2, inplace=False)
89
+ (12): Linear(512, 512, bias=True)
90
+ )), heads=8, attn_type=multihead)
91
+ )
92
+ (pools): ModuleList(
93
+ (0-3): 4 x None
94
+ )
95
+ (postnet): Sequential(
96
+ (0): Linear(512, 512, bias=True)
97
+ (1): GELU(approximate='none')
98
+ (2): Dropout(p=0.2, inplace=False)
99
+ (3): Linear(512, 512, bias=True)
100
+ (4): GELU(approximate='none')
101
+ (5): Dropout(p=0.2, inplace=False)
102
+ (6): Linear(512, 512, bias=True)
103
+ (7): GELU(approximate='none')
104
+ (8): Dropout(p=0.2, inplace=False)
105
+ (9): Linear(512, 512, bias=True)
106
+ (10): GELU(approximate='none')
107
+ (11): Dropout(p=0.2, inplace=False)
108
+ (12): Linear(512, 512, bias=True)
109
+ )
110
+ (global_sagpool): SAGPooling(GATConv, 512, ratio=0.5, multiplier=1.0)
111
+ (readout): Sequential(
112
+ (0): Linear(512, 512, bias=True)
113
+ (1): GELU(approximate='none')
114
+ (2): Dropout(p=0.2, inplace=False)
115
+ (3): Linear(512, 512, bias=True)
116
+ (4): GELU(approximate='none')
117
+ (5): Dropout(p=0.2, inplace=False)
118
+ (6): Linear(512, 512, bias=True)
119
+ (7): GELU(approximate='none')
120
+ (8): Dropout(p=0.2, inplace=False)
121
+ (9): Linear(512, 512, bias=True)
122
+ (10): GELU(approximate='none')
123
+ (11): Dropout(p=0.2, inplace=False)
124
+ (12): Linear(512, 3000, bias=True)
125
+ )
126
+ )
127
+ Loaded /home/yandex/MLWG2025/danielvolkov/BLIP_mmg_global_checks/ckpt_update_81000.pt to model
128
+ Validation VQA accuracy: 0.4385
129
+ Saved test predictions to /home/yandex/MLWG2025/danielvolkov/evaluations/mmg_BLIP_global_sagpool/last.json
130
+ Test predictions saved to /home/yandex/MLWG2025/danielvolkov/evaluations/mmg_BLIP_global_sagpool/last.json
evaluations/mmg_CLIP_global_sagpool/best.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:e34e3d049893b3f0e38259bcf1135ed2968fb2d8d4079071953165dba2efb4fe
3
+ size 20368214
evaluations/mmg_CLIP_global_sagpool/best.out ADDED
@@ -0,0 +1,130 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Config:
2
+ {'adamw_lr': 5e-05,
3
+ 'adamw_weight_decay': 0.05,
4
+ 'add_lap_pe': True,
5
+ 'ans2idx_path': '/home/yandex/MLWG2025/danielvolkov/Documents/GAMER/data/VQA/answer2idx.json',
6
+ 'batch_size': 32,
7
+ 'checkpoint_dir': '/home/yandex/MLWG2025/danielvolkov/checkpoints',
8
+ 'checkpoint_interval_updates': 1000,
9
+ 'dataset_path': '/home/yandex/MLWG2025/danielvolkov/datasets/VQA_w_CLIP_embeds',
10
+ 'embeds_type': 'CLIP',
11
+ 'grad_acc_steps': 2,
12
+ 'graph_construction_method': 'mmg',
13
+ 'lap_pe_dim': 16,
14
+ 'log_every_n_updates': 10,
15
+ 'max_grad_norm': 1.0,
16
+ 'num_epochs': 12,
17
+ 'num_fusion_nodes': 6,
18
+ 'num_text_global_nodes': 2,
19
+ 'num_workers': 8,
20
+ 'persistent_workers': True,
21
+ 'pin_memory': True,
22
+ 'resume_checkpoint': '/home/yandex/MLWG2025/danielvolkov/mmg_global_CLIP_checks/best_ckpt_update_78000.pt',
23
+ 'save_best': True,
24
+ 'self_loops_in_image_graph': True,
25
+ 'use_amp': True,
26
+ 'val_batches': 1000,
27
+ 'val_interval_updates': 3000,
28
+ 'warmup_fraction': 0.05}
29
+ Model config:
30
+ {'dropout': 0.2,
31
+ 'edge_dim': 6,
32
+ 'global_pool_method': 'mean',
33
+ 'global_sagpool_ratio': 0.5,
34
+ 'heads': 8,
35
+ 'hidden_dim': 512,
36
+ 'mlps_hidden_layers': 3,
37
+ 'node_dim': 517,
38
+ 'num_layers': 4,
39
+ 'output_dim': 3000,
40
+ 'pe_dim': 16,
41
+ 'sagpool_layer2ratio': {1: 0.7, 2: 0.7, 3: 0.8},
42
+ 'sagpool_mode': 'global'}
43
+ Model:
44
+ GraphGPSNet(
45
+ (node_mlp): Sequential(
46
+ (0): Linear(533, 512, bias=True)
47
+ (1): GELU(approximate='none')
48
+ (2): Dropout(p=0.2, inplace=False)
49
+ (3): Linear(512, 512, bias=True)
50
+ (4): GELU(approximate='none')
51
+ (5): Dropout(p=0.2, inplace=False)
52
+ (6): Linear(512, 512, bias=True)
53
+ (7): GELU(approximate='none')
54
+ (8): Dropout(p=0.2, inplace=False)
55
+ (9): Linear(512, 512, bias=True)
56
+ (10): GELU(approximate='none')
57
+ (11): Dropout(p=0.2, inplace=False)
58
+ (12): Linear(512, 512, bias=True)
59
+ )
60
+ (edge_mlp): Sequential(
61
+ (0): Linear(6, 512, bias=True)
62
+ (1): GELU(approximate='none')
63
+ (2): Dropout(p=0.2, inplace=False)
64
+ (3): Linear(512, 512, bias=True)
65
+ (4): GELU(approximate='none')
66
+ (5): Dropout(p=0.2, inplace=False)
67
+ (6): Linear(512, 512, bias=True)
68
+ (7): GELU(approximate='none')
69
+ (8): Dropout(p=0.2, inplace=False)
70
+ (9): Linear(512, 512, bias=True)
71
+ (10): GELU(approximate='none')
72
+ (11): Dropout(p=0.2, inplace=False)
73
+ (12): Linear(512, 512, bias=True)
74
+ )
75
+ (layers): ModuleList(
76
+ (0-3): 4 x GPSConv(512, conv=GINEConv(nn=Sequential(
77
+ (0): Linear(512, 512, bias=True)
78
+ (1): GELU(approximate='none')
79
+ (2): Dropout(p=0.2, inplace=False)
80
+ (3): Linear(512, 512, bias=True)
81
+ (4): GELU(approximate='none')
82
+ (5): Dropout(p=0.2, inplace=False)
83
+ (6): Linear(512, 512, bias=True)
84
+ (7): GELU(approximate='none')
85
+ (8): Dropout(p=0.2, inplace=False)
86
+ (9): Linear(512, 512, bias=True)
87
+ (10): GELU(approximate='none')
88
+ (11): Dropout(p=0.2, inplace=False)
89
+ (12): Linear(512, 512, bias=True)
90
+ )), heads=8, attn_type=multihead)
91
+ )
92
+ (pools): ModuleList(
93
+ (0-3): 4 x None
94
+ )
95
+ (postnet): Sequential(
96
+ (0): Linear(512, 512, bias=True)
97
+ (1): GELU(approximate='none')
98
+ (2): Dropout(p=0.2, inplace=False)
99
+ (3): Linear(512, 512, bias=True)
100
+ (4): GELU(approximate='none')
101
+ (5): Dropout(p=0.2, inplace=False)
102
+ (6): Linear(512, 512, bias=True)
103
+ (7): GELU(approximate='none')
104
+ (8): Dropout(p=0.2, inplace=False)
105
+ (9): Linear(512, 512, bias=True)
106
+ (10): GELU(approximate='none')
107
+ (11): Dropout(p=0.2, inplace=False)
108
+ (12): Linear(512, 512, bias=True)
109
+ )
110
+ (global_sagpool): SAGPooling(GATConv, 512, ratio=0.5, multiplier=1.0)
111
+ (readout): Sequential(
112
+ (0): Linear(512, 512, bias=True)
113
+ (1): GELU(approximate='none')
114
+ (2): Dropout(p=0.2, inplace=False)
115
+ (3): Linear(512, 512, bias=True)
116
+ (4): GELU(approximate='none')
117
+ (5): Dropout(p=0.2, inplace=False)
118
+ (6): Linear(512, 512, bias=True)
119
+ (7): GELU(approximate='none')
120
+ (8): Dropout(p=0.2, inplace=False)
121
+ (9): Linear(512, 512, bias=True)
122
+ (10): GELU(approximate='none')
123
+ (11): Dropout(p=0.2, inplace=False)
124
+ (12): Linear(512, 3000, bias=True)
125
+ )
126
+ )
127
+ Loaded /home/yandex/MLWG2025/danielvolkov/mmg_global_CLIP_checks/best_ckpt_update_78000.pt to model
128
+ Validation VQA accuracy: 0.3795
129
+ Saved test predictions to /home/yandex/MLWG2025/danielvolkov/evaluations/mmg_CLIP_global_sagpool/best.json
130
+ Test predictions saved to /home/yandex/MLWG2025/danielvolkov/evaluations/mmg_CLIP_global_sagpool/best.json
evaluations/mmg_CLIP_global_sagpool/last.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:665001e21f6099c627f8a37f1074f39350de33cd1ef51274b3543eaaceb19b61
3
+ size 20306809
evaluations/mmg_CLIP_global_sagpool/last.out ADDED
@@ -0,0 +1,130 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Config:
2
+ {'adamw_lr': 5e-05,
3
+ 'adamw_weight_decay': 0.05,
4
+ 'add_lap_pe': True,
5
+ 'ans2idx_path': '/home/yandex/MLWG2025/danielvolkov/Documents/GAMER/data/VQA/answer2idx.json',
6
+ 'batch_size': 32,
7
+ 'checkpoint_dir': '/home/yandex/MLWG2025/danielvolkov/checkpoints',
8
+ 'checkpoint_interval_updates': 1000,
9
+ 'dataset_path': '/home/yandex/MLWG2025/danielvolkov/datasets/VQA_w_CLIP_embeds',
10
+ 'embeds_type': 'CLIP',
11
+ 'grad_acc_steps': 2,
12
+ 'graph_construction_method': 'mmg',
13
+ 'lap_pe_dim': 16,
14
+ 'log_every_n_updates': 10,
15
+ 'max_grad_norm': 1.0,
16
+ 'num_epochs': 12,
17
+ 'num_fusion_nodes': 6,
18
+ 'num_text_global_nodes': 2,
19
+ 'num_workers': 8,
20
+ 'persistent_workers': True,
21
+ 'pin_memory': True,
22
+ 'resume_checkpoint': '/home/yandex/MLWG2025/danielvolkov/mmg_global_CLIP_checks/ckpt_update_83000.pt',
23
+ 'save_best': True,
24
+ 'self_loops_in_image_graph': True,
25
+ 'use_amp': True,
26
+ 'val_batches': 1000,
27
+ 'val_interval_updates': 3000,
28
+ 'warmup_fraction': 0.05}
29
+ Model config:
30
+ {'dropout': 0.2,
31
+ 'edge_dim': 6,
32
+ 'global_pool_method': 'mean',
33
+ 'global_sagpool_ratio': 0.5,
34
+ 'heads': 8,
35
+ 'hidden_dim': 512,
36
+ 'mlps_hidden_layers': 3,
37
+ 'node_dim': 517,
38
+ 'num_layers': 4,
39
+ 'output_dim': 3000,
40
+ 'pe_dim': 16,
41
+ 'sagpool_layer2ratio': {1: 0.7, 2: 0.7, 3: 0.8},
42
+ 'sagpool_mode': 'global'}
43
+ Model:
44
+ GraphGPSNet(
45
+ (node_mlp): Sequential(
46
+ (0): Linear(533, 512, bias=True)
47
+ (1): GELU(approximate='none')
48
+ (2): Dropout(p=0.2, inplace=False)
49
+ (3): Linear(512, 512, bias=True)
50
+ (4): GELU(approximate='none')
51
+ (5): Dropout(p=0.2, inplace=False)
52
+ (6): Linear(512, 512, bias=True)
53
+ (7): GELU(approximate='none')
54
+ (8): Dropout(p=0.2, inplace=False)
55
+ (9): Linear(512, 512, bias=True)
56
+ (10): GELU(approximate='none')
57
+ (11): Dropout(p=0.2, inplace=False)
58
+ (12): Linear(512, 512, bias=True)
59
+ )
60
+ (edge_mlp): Sequential(
61
+ (0): Linear(6, 512, bias=True)
62
+ (1): GELU(approximate='none')
63
+ (2): Dropout(p=0.2, inplace=False)
64
+ (3): Linear(512, 512, bias=True)
65
+ (4): GELU(approximate='none')
66
+ (5): Dropout(p=0.2, inplace=False)
67
+ (6): Linear(512, 512, bias=True)
68
+ (7): GELU(approximate='none')
69
+ (8): Dropout(p=0.2, inplace=False)
70
+ (9): Linear(512, 512, bias=True)
71
+ (10): GELU(approximate='none')
72
+ (11): Dropout(p=0.2, inplace=False)
73
+ (12): Linear(512, 512, bias=True)
74
+ )
75
+ (layers): ModuleList(
76
+ (0-3): 4 x GPSConv(512, conv=GINEConv(nn=Sequential(
77
+ (0): Linear(512, 512, bias=True)
78
+ (1): GELU(approximate='none')
79
+ (2): Dropout(p=0.2, inplace=False)
80
+ (3): Linear(512, 512, bias=True)
81
+ (4): GELU(approximate='none')
82
+ (5): Dropout(p=0.2, inplace=False)
83
+ (6): Linear(512, 512, bias=True)
84
+ (7): GELU(approximate='none')
85
+ (8): Dropout(p=0.2, inplace=False)
86
+ (9): Linear(512, 512, bias=True)
87
+ (10): GELU(approximate='none')
88
+ (11): Dropout(p=0.2, inplace=False)
89
+ (12): Linear(512, 512, bias=True)
90
+ )), heads=8, attn_type=multihead)
91
+ )
92
+ (pools): ModuleList(
93
+ (0-3): 4 x None
94
+ )
95
+ (postnet): Sequential(
96
+ (0): Linear(512, 512, bias=True)
97
+ (1): GELU(approximate='none')
98
+ (2): Dropout(p=0.2, inplace=False)
99
+ (3): Linear(512, 512, bias=True)
100
+ (4): GELU(approximate='none')
101
+ (5): Dropout(p=0.2, inplace=False)
102
+ (6): Linear(512, 512, bias=True)
103
+ (7): GELU(approximate='none')
104
+ (8): Dropout(p=0.2, inplace=False)
105
+ (9): Linear(512, 512, bias=True)
106
+ (10): GELU(approximate='none')
107
+ (11): Dropout(p=0.2, inplace=False)
108
+ (12): Linear(512, 512, bias=True)
109
+ )
110
+ (global_sagpool): SAGPooling(GATConv, 512, ratio=0.5, multiplier=1.0)
111
+ (readout): Sequential(
112
+ (0): Linear(512, 512, bias=True)
113
+ (1): GELU(approximate='none')
114
+ (2): Dropout(p=0.2, inplace=False)
115
+ (3): Linear(512, 512, bias=True)
116
+ (4): GELU(approximate='none')
117
+ (5): Dropout(p=0.2, inplace=False)
118
+ (6): Linear(512, 512, bias=True)
119
+ (7): GELU(approximate='none')
120
+ (8): Dropout(p=0.2, inplace=False)
121
+ (9): Linear(512, 512, bias=True)
122
+ (10): GELU(approximate='none')
123
+ (11): Dropout(p=0.2, inplace=False)
124
+ (12): Linear(512, 3000, bias=True)
125
+ )
126
+ )
127
+ Loaded /home/yandex/MLWG2025/danielvolkov/mmg_global_CLIP_checks/ckpt_update_83000.pt to model
128
+ Validation VQA accuracy: 0.3834
129
+ Saved test predictions to /home/yandex/MLWG2025/danielvolkov/evaluations/mmg_CLIP_global_sagpool/last.json
130
+ Test predictions saved to /home/yandex/MLWG2025/danielvolkov/evaluations/mmg_CLIP_global_sagpool/last.json
evaluations/mmg_global_sagpool/best.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:8ce89b74930f1f6c965ebce23931c0bbb0b8cf26ce66af5b6e3d784be5abc70e
3
+ size 20417806
evaluations/mmg_global_sagpool/best.out ADDED
@@ -0,0 +1,130 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Config:
2
+ {'adamw_lr': 5e-05,
3
+ 'adamw_weight_decay': 0.05,
4
+ 'add_lap_pe': True,
5
+ 'ans2idx_path': '/home/yandex/MLWG2025/danielvolkov/Documents/GAMER/data/VQA/answer2idx.json',
6
+ 'batch_size': 32,
7
+ 'checkpoint_dir': '/home/yandex/MLWG2025/danielvolkov/checkpoints',
8
+ 'checkpoint_interval_updates': 1000,
9
+ 'dataset_path': '/home/yandex/MLWG2025/danielvolkov/datasets/VQA_w_embed',
10
+ 'embeds_type': 'BERT/BEiT',
11
+ 'grad_acc_steps': 2,
12
+ 'graph_construction_method': 'mmg',
13
+ 'lap_pe_dim': 16,
14
+ 'log_every_n_updates': 10,
15
+ 'max_grad_norm': 1.0,
16
+ 'num_epochs': 12,
17
+ 'num_fusion_nodes': 6,
18
+ 'num_text_global_nodes': 2,
19
+ 'num_workers': 8,
20
+ 'persistent_workers': True,
21
+ 'pin_memory': True,
22
+ 'resume_checkpoint': '/home/yandex/MLWG2025/danielvolkov/mmg_glob_sagpool_checks/best_ckpt_update_72000.pt',
23
+ 'save_best': True,
24
+ 'self_loops_in_image_graph': True,
25
+ 'use_amp': True,
26
+ 'val_batches': 1000,
27
+ 'val_interval_updates': 3000,
28
+ 'warmup_fraction': 0.05}
29
+ Model config:
30
+ {'dropout': 0.2,
31
+ 'edge_dim': 6,
32
+ 'global_pool_method': 'mean',
33
+ 'global_sagpool_ratio': 0.5,
34
+ 'heads': 8,
35
+ 'hidden_dim': 512,
36
+ 'mlps_hidden_layers': 3,
37
+ 'node_dim': 773,
38
+ 'num_layers': 4,
39
+ 'output_dim': 3000,
40
+ 'pe_dim': 16,
41
+ 'sagpool_layer2ratio': {1: 0.7, 2: 0.7, 3: 0.8},
42
+ 'sagpool_mode': 'global'}
43
+ Model:
44
+ GraphGPSNet(
45
+ (node_mlp): Sequential(
46
+ (0): Linear(789, 512, bias=True)
47
+ (1): GELU(approximate='none')
48
+ (2): Dropout(p=0.2, inplace=False)
49
+ (3): Linear(512, 512, bias=True)
50
+ (4): GELU(approximate='none')
51
+ (5): Dropout(p=0.2, inplace=False)
52
+ (6): Linear(512, 512, bias=True)
53
+ (7): GELU(approximate='none')
54
+ (8): Dropout(p=0.2, inplace=False)
55
+ (9): Linear(512, 512, bias=True)
56
+ (10): GELU(approximate='none')
57
+ (11): Dropout(p=0.2, inplace=False)
58
+ (12): Linear(512, 512, bias=True)
59
+ )
60
+ (edge_mlp): Sequential(
61
+ (0): Linear(6, 512, bias=True)
62
+ (1): GELU(approximate='none')
63
+ (2): Dropout(p=0.2, inplace=False)
64
+ (3): Linear(512, 512, bias=True)
65
+ (4): GELU(approximate='none')
66
+ (5): Dropout(p=0.2, inplace=False)
67
+ (6): Linear(512, 512, bias=True)
68
+ (7): GELU(approximate='none')
69
+ (8): Dropout(p=0.2, inplace=False)
70
+ (9): Linear(512, 512, bias=True)
71
+ (10): GELU(approximate='none')
72
+ (11): Dropout(p=0.2, inplace=False)
73
+ (12): Linear(512, 512, bias=True)
74
+ )
75
+ (layers): ModuleList(
76
+ (0-3): 4 x GPSConv(512, conv=GINEConv(nn=Sequential(
77
+ (0): Linear(512, 512, bias=True)
78
+ (1): GELU(approximate='none')
79
+ (2): Dropout(p=0.2, inplace=False)
80
+ (3): Linear(512, 512, bias=True)
81
+ (4): GELU(approximate='none')
82
+ (5): Dropout(p=0.2, inplace=False)
83
+ (6): Linear(512, 512, bias=True)
84
+ (7): GELU(approximate='none')
85
+ (8): Dropout(p=0.2, inplace=False)
86
+ (9): Linear(512, 512, bias=True)
87
+ (10): GELU(approximate='none')
88
+ (11): Dropout(p=0.2, inplace=False)
89
+ (12): Linear(512, 512, bias=True)
90
+ )), heads=8, attn_type=multihead)
91
+ )
92
+ (pools): ModuleList(
93
+ (0-3): 4 x None
94
+ )
95
+ (postnet): Sequential(
96
+ (0): Linear(512, 512, bias=True)
97
+ (1): GELU(approximate='none')
98
+ (2): Dropout(p=0.2, inplace=False)
99
+ (3): Linear(512, 512, bias=True)
100
+ (4): GELU(approximate='none')
101
+ (5): Dropout(p=0.2, inplace=False)
102
+ (6): Linear(512, 512, bias=True)
103
+ (7): GELU(approximate='none')
104
+ (8): Dropout(p=0.2, inplace=False)
105
+ (9): Linear(512, 512, bias=True)
106
+ (10): GELU(approximate='none')
107
+ (11): Dropout(p=0.2, inplace=False)
108
+ (12): Linear(512, 512, bias=True)
109
+ )
110
+ (global_sagpool): SAGPooling(GATConv, 512, ratio=0.5, multiplier=1.0)
111
+ (readout): Sequential(
112
+ (0): Linear(512, 512, bias=True)
113
+ (1): GELU(approximate='none')
114
+ (2): Dropout(p=0.2, inplace=False)
115
+ (3): Linear(512, 512, bias=True)
116
+ (4): GELU(approximate='none')
117
+ (5): Dropout(p=0.2, inplace=False)
118
+ (6): Linear(512, 512, bias=True)
119
+ (7): GELU(approximate='none')
120
+ (8): Dropout(p=0.2, inplace=False)
121
+ (9): Linear(512, 512, bias=True)
122
+ (10): GELU(approximate='none')
123
+ (11): Dropout(p=0.2, inplace=False)
124
+ (12): Linear(512, 3000, bias=True)
125
+ )
126
+ )
127
+ Loaded /home/yandex/MLWG2025/danielvolkov/mmg_glob_sagpool_checks/best_ckpt_update_72000.pt to model
128
+ Validation VQA accuracy: 0.4479
129
+ Saved test predictions to /home/yandex/MLWG2025/danielvolkov/evaluations/mmg_global_sagpool/best.json
130
+ Test predictions saved to /home/yandex/MLWG2025/danielvolkov/evaluations/mmg_global_sagpool/best.json
evaluations/mmg_global_sagpool/last.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3ff2ce81a5e3cdb9565d4586d6b2ee9365f6b2d4751c3e9d81f62d65d8f3c450
3
+ size 20418958
evaluations/mmg_global_sagpool/last.out ADDED
@@ -0,0 +1,130 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Config:
2
+ {'adamw_lr': 5e-05,
3
+ 'adamw_weight_decay': 0.05,
4
+ 'add_lap_pe': True,
5
+ 'ans2idx_path': '/home/yandex/MLWG2025/danielvolkov/Documents/GAMER/data/VQA/answer2idx.json',
6
+ 'batch_size': 32,
7
+ 'checkpoint_dir': '/home/yandex/MLWG2025/danielvolkov/checkpoints',
8
+ 'checkpoint_interval_updates': 1000,
9
+ 'dataset_path': '/home/yandex/MLWG2025/danielvolkov/datasets/VQA_w_embed',
10
+ 'embeds_type': 'BERT/BEiT',
11
+ 'grad_acc_steps': 2,
12
+ 'graph_construction_method': 'mmg',
13
+ 'lap_pe_dim': 16,
14
+ 'log_every_n_updates': 10,
15
+ 'max_grad_norm': 1.0,
16
+ 'num_epochs': 12,
17
+ 'num_fusion_nodes': 6,
18
+ 'num_text_global_nodes': 2,
19
+ 'num_workers': 8,
20
+ 'persistent_workers': True,
21
+ 'pin_memory': True,
22
+ 'resume_checkpoint': '/home/yandex/MLWG2025/danielvolkov/mmg_glob_sagpool_checks/ckpt_update_81000.pt',
23
+ 'save_best': True,
24
+ 'self_loops_in_image_graph': True,
25
+ 'use_amp': True,
26
+ 'val_batches': 1000,
27
+ 'val_interval_updates': 3000,
28
+ 'warmup_fraction': 0.05}
29
+ Model config:
30
+ {'dropout': 0.2,
31
+ 'edge_dim': 6,
32
+ 'global_pool_method': 'mean',
33
+ 'global_sagpool_ratio': 0.5,
34
+ 'heads': 8,
35
+ 'hidden_dim': 512,
36
+ 'mlps_hidden_layers': 3,
37
+ 'node_dim': 773,
38
+ 'num_layers': 4,
39
+ 'output_dim': 3000,
40
+ 'pe_dim': 16,
41
+ 'sagpool_layer2ratio': {1: 0.7, 2: 0.7, 3: 0.8},
42
+ 'sagpool_mode': 'global'}
43
+ Model:
44
+ GraphGPSNet(
45
+ (node_mlp): Sequential(
46
+ (0): Linear(789, 512, bias=True)
47
+ (1): GELU(approximate='none')
48
+ (2): Dropout(p=0.2, inplace=False)
49
+ (3): Linear(512, 512, bias=True)
50
+ (4): GELU(approximate='none')
51
+ (5): Dropout(p=0.2, inplace=False)
52
+ (6): Linear(512, 512, bias=True)
53
+ (7): GELU(approximate='none')
54
+ (8): Dropout(p=0.2, inplace=False)
55
+ (9): Linear(512, 512, bias=True)
56
+ (10): GELU(approximate='none')
57
+ (11): Dropout(p=0.2, inplace=False)
58
+ (12): Linear(512, 512, bias=True)
59
+ )
60
+ (edge_mlp): Sequential(
61
+ (0): Linear(6, 512, bias=True)
62
+ (1): GELU(approximate='none')
63
+ (2): Dropout(p=0.2, inplace=False)
64
+ (3): Linear(512, 512, bias=True)
65
+ (4): GELU(approximate='none')
66
+ (5): Dropout(p=0.2, inplace=False)
67
+ (6): Linear(512, 512, bias=True)
68
+ (7): GELU(approximate='none')
69
+ (8): Dropout(p=0.2, inplace=False)
70
+ (9): Linear(512, 512, bias=True)
71
+ (10): GELU(approximate='none')
72
+ (11): Dropout(p=0.2, inplace=False)
73
+ (12): Linear(512, 512, bias=True)
74
+ )
75
+ (layers): ModuleList(
76
+ (0-3): 4 x GPSConv(512, conv=GINEConv(nn=Sequential(
77
+ (0): Linear(512, 512, bias=True)
78
+ (1): GELU(approximate='none')
79
+ (2): Dropout(p=0.2, inplace=False)
80
+ (3): Linear(512, 512, bias=True)
81
+ (4): GELU(approximate='none')
82
+ (5): Dropout(p=0.2, inplace=False)
83
+ (6): Linear(512, 512, bias=True)
84
+ (7): GELU(approximate='none')
85
+ (8): Dropout(p=0.2, inplace=False)
86
+ (9): Linear(512, 512, bias=True)
87
+ (10): GELU(approximate='none')
88
+ (11): Dropout(p=0.2, inplace=False)
89
+ (12): Linear(512, 512, bias=True)
90
+ )), heads=8, attn_type=multihead)
91
+ )
92
+ (pools): ModuleList(
93
+ (0-3): 4 x None
94
+ )
95
+ (postnet): Sequential(
96
+ (0): Linear(512, 512, bias=True)
97
+ (1): GELU(approximate='none')
98
+ (2): Dropout(p=0.2, inplace=False)
99
+ (3): Linear(512, 512, bias=True)
100
+ (4): GELU(approximate='none')
101
+ (5): Dropout(p=0.2, inplace=False)
102
+ (6): Linear(512, 512, bias=True)
103
+ (7): GELU(approximate='none')
104
+ (8): Dropout(p=0.2, inplace=False)
105
+ (9): Linear(512, 512, bias=True)
106
+ (10): GELU(approximate='none')
107
+ (11): Dropout(p=0.2, inplace=False)
108
+ (12): Linear(512, 512, bias=True)
109
+ )
110
+ (global_sagpool): SAGPooling(GATConv, 512, ratio=0.5, multiplier=1.0)
111
+ (readout): Sequential(
112
+ (0): Linear(512, 512, bias=True)
113
+ (1): GELU(approximate='none')
114
+ (2): Dropout(p=0.2, inplace=False)
115
+ (3): Linear(512, 512, bias=True)
116
+ (4): GELU(approximate='none')
117
+ (5): Dropout(p=0.2, inplace=False)
118
+ (6): Linear(512, 512, bias=True)
119
+ (7): GELU(approximate='none')
120
+ (8): Dropout(p=0.2, inplace=False)
121
+ (9): Linear(512, 512, bias=True)
122
+ (10): GELU(approximate='none')
123
+ (11): Dropout(p=0.2, inplace=False)
124
+ (12): Linear(512, 3000, bias=True)
125
+ )
126
+ )
127
+ Loaded /home/yandex/MLWG2025/danielvolkov/mmg_glob_sagpool_checks/ckpt_update_81000.pt to model
128
+ Validation VQA accuracy: 0.4486
129
+ Saved test predictions to /home/yandex/MLWG2025/danielvolkov/evaluations/mmg_global_sagpool/last.json
130
+ Test predictions saved to /home/yandex/MLWG2025/danielvolkov/evaluations/mmg_global_sagpool/last.json
evaluations/mmg_hierarchical_sagpool/best.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:a50803fb0e60ddb2303d6e4452c6771b4484550a8140a08bf642d779005dd367
3
+ size 20404655
evaluations/mmg_hierarchical_sagpool/best.out ADDED
@@ -0,0 +1,131 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Config:
2
+ {'adamw_lr': 5e-05,
3
+ 'adamw_weight_decay': 0.05,
4
+ 'add_lap_pe': True,
5
+ 'ans2idx_path': '/home/yandex/MLWG2025/danielvolkov/Documents/GAMER/data/VQA/answer2idx.json',
6
+ 'batch_size': 32,
7
+ 'checkpoint_dir': '/home/yandex/MLWG2025/danielvolkov/checkpoints',
8
+ 'checkpoint_interval_updates': 1000,
9
+ 'dataset_path': '/home/yandex/MLWG2025/danielvolkov/datasets/VQA_w_embed',
10
+ 'embeds_type': 'BERT/BEiT',
11
+ 'grad_acc_steps': 2,
12
+ 'graph_construction_method': 'mmg',
13
+ 'lap_pe_dim': 16,
14
+ 'log_every_n_updates': 10,
15
+ 'max_grad_norm': 1.0,
16
+ 'num_epochs': 12,
17
+ 'num_fusion_nodes': 6,
18
+ 'num_text_global_nodes': 2,
19
+ 'num_workers': 8,
20
+ 'persistent_workers': True,
21
+ 'pin_memory': True,
22
+ 'resume_checkpoint': '/home/yandex/MLWG2025/danielvolkov/mmg_hierarchical_sagpool_checks/best_ckpt_update_78000.pt',
23
+ 'save_best': True,
24
+ 'self_loops_in_image_graph': True,
25
+ 'use_amp': True,
26
+ 'val_batches': 1000,
27
+ 'val_interval_updates': 3000,
28
+ 'warmup_fraction': 0.05}
29
+ Model config:
30
+ {'dropout': 0.2,
31
+ 'edge_dim': 6,
32
+ 'global_pool_method': 'mean',
33
+ 'global_sagpool_ratio': 0.5,
34
+ 'heads': 8,
35
+ 'hidden_dim': 512,
36
+ 'mlps_hidden_layers': 3,
37
+ 'node_dim': 773,
38
+ 'num_layers': 4,
39
+ 'output_dim': 3000,
40
+ 'pe_dim': 16,
41
+ 'sagpool_layer2ratio': {1: 0.7, 2: 0.7, 3: 0.8},
42
+ 'sagpool_mode': 'hierarchical'}
43
+ Model:
44
+ GraphGPSNet(
45
+ (node_mlp): Sequential(
46
+ (0): Linear(789, 512, bias=True)
47
+ (1): GELU(approximate='none')
48
+ (2): Dropout(p=0.2, inplace=False)
49
+ (3): Linear(512, 512, bias=True)
50
+ (4): GELU(approximate='none')
51
+ (5): Dropout(p=0.2, inplace=False)
52
+ (6): Linear(512, 512, bias=True)
53
+ (7): GELU(approximate='none')
54
+ (8): Dropout(p=0.2, inplace=False)
55
+ (9): Linear(512, 512, bias=True)
56
+ (10): GELU(approximate='none')
57
+ (11): Dropout(p=0.2, inplace=False)
58
+ (12): Linear(512, 512, bias=True)
59
+ )
60
+ (edge_mlp): Sequential(
61
+ (0): Linear(6, 512, bias=True)
62
+ (1): GELU(approximate='none')
63
+ (2): Dropout(p=0.2, inplace=False)
64
+ (3): Linear(512, 512, bias=True)
65
+ (4): GELU(approximate='none')
66
+ (5): Dropout(p=0.2, inplace=False)
67
+ (6): Linear(512, 512, bias=True)
68
+ (7): GELU(approximate='none')
69
+ (8): Dropout(p=0.2, inplace=False)
70
+ (9): Linear(512, 512, bias=True)
71
+ (10): GELU(approximate='none')
72
+ (11): Dropout(p=0.2, inplace=False)
73
+ (12): Linear(512, 512, bias=True)
74
+ )
75
+ (layers): ModuleList(
76
+ (0-3): 4 x GPSConv(512, conv=GINEConv(nn=Sequential(
77
+ (0): Linear(512, 512, bias=True)
78
+ (1): GELU(approximate='none')
79
+ (2): Dropout(p=0.2, inplace=False)
80
+ (3): Linear(512, 512, bias=True)
81
+ (4): GELU(approximate='none')
82
+ (5): Dropout(p=0.2, inplace=False)
83
+ (6): Linear(512, 512, bias=True)
84
+ (7): GELU(approximate='none')
85
+ (8): Dropout(p=0.2, inplace=False)
86
+ (9): Linear(512, 512, bias=True)
87
+ (10): GELU(approximate='none')
88
+ (11): Dropout(p=0.2, inplace=False)
89
+ (12): Linear(512, 512, bias=True)
90
+ )), heads=8, attn_type=multihead)
91
+ )
92
+ (pools): ModuleList(
93
+ (0): None
94
+ (1-2): 2 x SAGPooling(GATConv, 512, ratio=0.7, multiplier=1.0)
95
+ (3): SAGPooling(GATConv, 512, ratio=0.8, multiplier=1.0)
96
+ )
97
+ (postnet): Sequential(
98
+ (0): Linear(512, 512, bias=True)
99
+ (1): GELU(approximate='none')
100
+ (2): Dropout(p=0.2, inplace=False)
101
+ (3): Linear(512, 512, bias=True)
102
+ (4): GELU(approximate='none')
103
+ (5): Dropout(p=0.2, inplace=False)
104
+ (6): Linear(512, 512, bias=True)
105
+ (7): GELU(approximate='none')
106
+ (8): Dropout(p=0.2, inplace=False)
107
+ (9): Linear(512, 512, bias=True)
108
+ (10): GELU(approximate='none')
109
+ (11): Dropout(p=0.2, inplace=False)
110
+ (12): Linear(512, 512, bias=True)
111
+ )
112
+ (readout): Sequential(
113
+ (0): Linear(512, 512, bias=True)
114
+ (1): GELU(approximate='none')
115
+ (2): Dropout(p=0.2, inplace=False)
116
+ (3): Linear(512, 512, bias=True)
117
+ (4): GELU(approximate='none')
118
+ (5): Dropout(p=0.2, inplace=False)
119
+ (6): Linear(512, 512, bias=True)
120
+ (7): GELU(approximate='none')
121
+ (8): Dropout(p=0.2, inplace=False)
122
+ (9): Linear(512, 512, bias=True)
123
+ (10): GELU(approximate='none')
124
+ (11): Dropout(p=0.2, inplace=False)
125
+ (12): Linear(512, 3000, bias=True)
126
+ )
127
+ )
128
+ Loaded /home/yandex/MLWG2025/danielvolkov/mmg_hierarchical_sagpool_checks/best_ckpt_update_78000.pt to model
129
+ Validation VQA accuracy: 0.4327
130
+ Saved test predictions to /home/yandex/MLWG2025/danielvolkov/evaluations/mmg_hierarchical_sagpool/best.json
131
+ Test predictions saved to /home/yandex/MLWG2025/danielvolkov/evaluations/mmg_hierarchical_sagpool/best.json
evaluations/mmg_hierarchical_sagpool/last.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:5998632ef9783bd4548c790fe56f1b573457c07f075cdf9e14427843c83c084b
3
+ size 20406320
evaluations/mmg_hierarchical_sagpool/last.out ADDED
@@ -0,0 +1,131 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Config:
2
+ {'adamw_lr': 5e-05,
3
+ 'adamw_weight_decay': 0.05,
4
+ 'add_lap_pe': True,
5
+ 'ans2idx_path': '/home/yandex/MLWG2025/danielvolkov/Documents/GAMER/data/VQA/answer2idx.json',
6
+ 'batch_size': 32,
7
+ 'checkpoint_dir': '/home/yandex/MLWG2025/danielvolkov/checkpoints',
8
+ 'checkpoint_interval_updates': 1000,
9
+ 'dataset_path': '/home/yandex/MLWG2025/danielvolkov/datasets/VQA_w_embed',
10
+ 'embeds_type': 'BERT/BEiT',
11
+ 'grad_acc_steps': 2,
12
+ 'graph_construction_method': 'mmg',
13
+ 'lap_pe_dim': 16,
14
+ 'log_every_n_updates': 10,
15
+ 'max_grad_norm': 1.0,
16
+ 'num_epochs': 12,
17
+ 'num_fusion_nodes': 6,
18
+ 'num_text_global_nodes': 2,
19
+ 'num_workers': 8,
20
+ 'persistent_workers': True,
21
+ 'pin_memory': True,
22
+ 'resume_checkpoint': '/home/yandex/MLWG2025/danielvolkov/mmg_hierarchical_sagpool_checks/ckpt_update_79000.pt',
23
+ 'save_best': True,
24
+ 'self_loops_in_image_graph': True,
25
+ 'use_amp': True,
26
+ 'val_batches': 1000,
27
+ 'val_interval_updates': 3000,
28
+ 'warmup_fraction': 0.05}
29
+ Model config:
30
+ {'dropout': 0.2,
31
+ 'edge_dim': 6,
32
+ 'global_pool_method': 'mean',
33
+ 'global_sagpool_ratio': 0.5,
34
+ 'heads': 8,
35
+ 'hidden_dim': 512,
36
+ 'mlps_hidden_layers': 3,
37
+ 'node_dim': 773,
38
+ 'num_layers': 4,
39
+ 'output_dim': 3000,
40
+ 'pe_dim': 16,
41
+ 'sagpool_layer2ratio': {1: 0.7, 2: 0.7, 3: 0.8},
42
+ 'sagpool_mode': 'hierarchical'}
43
+ Model:
44
+ GraphGPSNet(
45
+ (node_mlp): Sequential(
46
+ (0): Linear(789, 512, bias=True)
47
+ (1): GELU(approximate='none')
48
+ (2): Dropout(p=0.2, inplace=False)
49
+ (3): Linear(512, 512, bias=True)
50
+ (4): GELU(approximate='none')
51
+ (5): Dropout(p=0.2, inplace=False)
52
+ (6): Linear(512, 512, bias=True)
53
+ (7): GELU(approximate='none')
54
+ (8): Dropout(p=0.2, inplace=False)
55
+ (9): Linear(512, 512, bias=True)
56
+ (10): GELU(approximate='none')
57
+ (11): Dropout(p=0.2, inplace=False)
58
+ (12): Linear(512, 512, bias=True)
59
+ )
60
+ (edge_mlp): Sequential(
61
+ (0): Linear(6, 512, bias=True)
62
+ (1): GELU(approximate='none')
63
+ (2): Dropout(p=0.2, inplace=False)
64
+ (3): Linear(512, 512, bias=True)
65
+ (4): GELU(approximate='none')
66
+ (5): Dropout(p=0.2, inplace=False)
67
+ (6): Linear(512, 512, bias=True)
68
+ (7): GELU(approximate='none')
69
+ (8): Dropout(p=0.2, inplace=False)
70
+ (9): Linear(512, 512, bias=True)
71
+ (10): GELU(approximate='none')
72
+ (11): Dropout(p=0.2, inplace=False)
73
+ (12): Linear(512, 512, bias=True)
74
+ )
75
+ (layers): ModuleList(
76
+ (0-3): 4 x GPSConv(512, conv=GINEConv(nn=Sequential(
77
+ (0): Linear(512, 512, bias=True)
78
+ (1): GELU(approximate='none')
79
+ (2): Dropout(p=0.2, inplace=False)
80
+ (3): Linear(512, 512, bias=True)
81
+ (4): GELU(approximate='none')
82
+ (5): Dropout(p=0.2, inplace=False)
83
+ (6): Linear(512, 512, bias=True)
84
+ (7): GELU(approximate='none')
85
+ (8): Dropout(p=0.2, inplace=False)
86
+ (9): Linear(512, 512, bias=True)
87
+ (10): GELU(approximate='none')
88
+ (11): Dropout(p=0.2, inplace=False)
89
+ (12): Linear(512, 512, bias=True)
90
+ )), heads=8, attn_type=multihead)
91
+ )
92
+ (pools): ModuleList(
93
+ (0): None
94
+ (1-2): 2 x SAGPooling(GATConv, 512, ratio=0.7, multiplier=1.0)
95
+ (3): SAGPooling(GATConv, 512, ratio=0.8, multiplier=1.0)
96
+ )
97
+ (postnet): Sequential(
98
+ (0): Linear(512, 512, bias=True)
99
+ (1): GELU(approximate='none')
100
+ (2): Dropout(p=0.2, inplace=False)
101
+ (3): Linear(512, 512, bias=True)
102
+ (4): GELU(approximate='none')
103
+ (5): Dropout(p=0.2, inplace=False)
104
+ (6): Linear(512, 512, bias=True)
105
+ (7): GELU(approximate='none')
106
+ (8): Dropout(p=0.2, inplace=False)
107
+ (9): Linear(512, 512, bias=True)
108
+ (10): GELU(approximate='none')
109
+ (11): Dropout(p=0.2, inplace=False)
110
+ (12): Linear(512, 512, bias=True)
111
+ )
112
+ (readout): Sequential(
113
+ (0): Linear(512, 512, bias=True)
114
+ (1): GELU(approximate='none')
115
+ (2): Dropout(p=0.2, inplace=False)
116
+ (3): Linear(512, 512, bias=True)
117
+ (4): GELU(approximate='none')
118
+ (5): Dropout(p=0.2, inplace=False)
119
+ (6): Linear(512, 512, bias=True)
120
+ (7): GELU(approximate='none')
121
+ (8): Dropout(p=0.2, inplace=False)
122
+ (9): Linear(512, 512, bias=True)
123
+ (10): GELU(approximate='none')
124
+ (11): Dropout(p=0.2, inplace=False)
125
+ (12): Linear(512, 3000, bias=True)
126
+ )
127
+ )
128
+ Loaded /home/yandex/MLWG2025/danielvolkov/mmg_hierarchical_sagpool_checks/ckpt_update_79000.pt to model
129
+ Validation VQA accuracy: 0.4324
130
+ Saved test predictions to /home/yandex/MLWG2025/danielvolkov/evaluations/mmg_hierarchical_sagpool/last.json
131
+ Test predictions saved to /home/yandex/MLWG2025/danielvolkov/evaluations/mmg_hierarchical_sagpool/last.json
evaluations/mmg_no_sagpool/best.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:113f998cef7e6d996a10fd33dc22540443d236a0f437123d99116e20f49c7ccb
3
+ size 20432378
evaluations/mmg_no_sagpool/best.out ADDED
@@ -0,0 +1,128 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Config:
2
+ {'adamw_lr': 5e-05,
3
+ 'adamw_weight_decay': 0.05,
4
+ 'add_lap_pe': True,
5
+ 'ans2idx_path': '/home/yandex/MLWG2025/danielvolkov/Documents/GAMER/data/VQA/answer2idx.json',
6
+ 'batch_size': 32,
7
+ 'checkpoint_dir': '/home/yandex/MLWG2025/danielvolkov/checkpoints',
8
+ 'checkpoint_interval_updates': 1000,
9
+ 'dataset_path': '/home/yandex/MLWG2025/danielvolkov/datasets/VQA_w_embed',
10
+ 'grad_acc_steps': 2,
11
+ 'graph_construction_method': 'mmg',
12
+ 'lap_pe_dim': 16,
13
+ 'log_every_n_updates': 10,
14
+ 'max_grad_norm': 1.0,
15
+ 'num_epochs': 12,
16
+ 'num_fusion_nodes': 6,
17
+ 'num_text_global_nodes': 2,
18
+ 'num_workers': 8,
19
+ 'persistent_workers': True,
20
+ 'pin_memory': True,
21
+ 'resume_checkpoint': '/home/yandex/MLWG2025/danielvolkov/mmg_checkpoints/best_ckpt_update_72000.pt',
22
+ 'save_best': True,
23
+ 'self_loops_in_image_graph': True,
24
+ 'use_amp': True,
25
+ 'val_batches': 1000,
26
+ 'val_interval_updates': 3000,
27
+ 'warmup_fraction': 0.05}
28
+ Model config:
29
+ {'dropout': 0.2,
30
+ 'edge_dim': 6,
31
+ 'global_pool_method': 'mean',
32
+ 'global_sagpool_ratio': 0.5,
33
+ 'heads': 8,
34
+ 'hidden_dim': 512,
35
+ 'mlps_hidden_layers': 3,
36
+ 'node_dim': 773,
37
+ 'num_layers': 4,
38
+ 'output_dim': 3000,
39
+ 'pe_dim': 16,
40
+ 'sagpool_layer2ratio': {1: 0.7, 2: 0.7, 3: 0.8},
41
+ 'sagpool_mode': 'none'}
42
+ Model:
43
+ GraphGPSNet(
44
+ (node_mlp): Sequential(
45
+ (0): Linear(789, 512, bias=True)
46
+ (1): GELU(approximate='none')
47
+ (2): Dropout(p=0.2, inplace=False)
48
+ (3): Linear(512, 512, bias=True)
49
+ (4): GELU(approximate='none')
50
+ (5): Dropout(p=0.2, inplace=False)
51
+ (6): Linear(512, 512, bias=True)
52
+ (7): GELU(approximate='none')
53
+ (8): Dropout(p=0.2, inplace=False)
54
+ (9): Linear(512, 512, bias=True)
55
+ (10): GELU(approximate='none')
56
+ (11): Dropout(p=0.2, inplace=False)
57
+ (12): Linear(512, 512, bias=True)
58
+ )
59
+ (edge_mlp): Sequential(
60
+ (0): Linear(6, 512, bias=True)
61
+ (1): GELU(approximate='none')
62
+ (2): Dropout(p=0.2, inplace=False)
63
+ (3): Linear(512, 512, bias=True)
64
+ (4): GELU(approximate='none')
65
+ (5): Dropout(p=0.2, inplace=False)
66
+ (6): Linear(512, 512, bias=True)
67
+ (7): GELU(approximate='none')
68
+ (8): Dropout(p=0.2, inplace=False)
69
+ (9): Linear(512, 512, bias=True)
70
+ (10): GELU(approximate='none')
71
+ (11): Dropout(p=0.2, inplace=False)
72
+ (12): Linear(512, 512, bias=True)
73
+ )
74
+ (layers): ModuleList(
75
+ (0-3): 4 x GPSConv(512, conv=GINEConv(nn=Sequential(
76
+ (0): Linear(512, 512, bias=True)
77
+ (1): GELU(approximate='none')
78
+ (2): Dropout(p=0.2, inplace=False)
79
+ (3): Linear(512, 512, bias=True)
80
+ (4): GELU(approximate='none')
81
+ (5): Dropout(p=0.2, inplace=False)
82
+ (6): Linear(512, 512, bias=True)
83
+ (7): GELU(approximate='none')
84
+ (8): Dropout(p=0.2, inplace=False)
85
+ (9): Linear(512, 512, bias=True)
86
+ (10): GELU(approximate='none')
87
+ (11): Dropout(p=0.2, inplace=False)
88
+ (12): Linear(512, 512, bias=True)
89
+ )), heads=8, attn_type=multihead)
90
+ )
91
+ (pools): ModuleList(
92
+ (0-3): 4 x None
93
+ )
94
+ (postnet): Sequential(
95
+ (0): Linear(512, 512, bias=True)
96
+ (1): GELU(approximate='none')
97
+ (2): Dropout(p=0.2, inplace=False)
98
+ (3): Linear(512, 512, bias=True)
99
+ (4): GELU(approximate='none')
100
+ (5): Dropout(p=0.2, inplace=False)
101
+ (6): Linear(512, 512, bias=True)
102
+ (7): GELU(approximate='none')
103
+ (8): Dropout(p=0.2, inplace=False)
104
+ (9): Linear(512, 512, bias=True)
105
+ (10): GELU(approximate='none')
106
+ (11): Dropout(p=0.2, inplace=False)
107
+ (12): Linear(512, 512, bias=True)
108
+ )
109
+ (readout): Sequential(
110
+ (0): Linear(512, 512, bias=True)
111
+ (1): GELU(approximate='none')
112
+ (2): Dropout(p=0.2, inplace=False)
113
+ (3): Linear(512, 512, bias=True)
114
+ (4): GELU(approximate='none')
115
+ (5): Dropout(p=0.2, inplace=False)
116
+ (6): Linear(512, 512, bias=True)
117
+ (7): GELU(approximate='none')
118
+ (8): Dropout(p=0.2, inplace=False)
119
+ (9): Linear(512, 512, bias=True)
120
+ (10): GELU(approximate='none')
121
+ (11): Dropout(p=0.2, inplace=False)
122
+ (12): Linear(512, 3000, bias=True)
123
+ )
124
+ )
125
+ Loaded /home/yandex/MLWG2025/danielvolkov/mmg_checkpoints/best_ckpt_update_72000.pt to model
126
+ Validation VQA accuracy: 0.4399
127
+ Saved test predictions to /home/yandex/MLWG2025/danielvolkov/evaluations/mmg_no_sagpool/best.json
128
+ Test predictions saved to /home/yandex/MLWG2025/danielvolkov/evaluations/mmg_no_sagpool/best.json
evaluations/mmg_no_sagpool/last.json ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:29182499a32406e88a52e1a17b05e908326b6c7daddcaa4347e8f2eed20d53ca
3
+ size 20439928
evaluations/mmg_no_sagpool/last.out ADDED
@@ -0,0 +1,128 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Config:
2
+ {'adamw_lr': 5e-05,
3
+ 'adamw_weight_decay': 0.05,
4
+ 'add_lap_pe': True,
5
+ 'ans2idx_path': '/home/yandex/MLWG2025/danielvolkov/Documents/GAMER/data/VQA/answer2idx.json',
6
+ 'batch_size': 32,
7
+ 'checkpoint_dir': '/home/yandex/MLWG2025/danielvolkov/checkpoints',
8
+ 'checkpoint_interval_updates': 1000,
9
+ 'dataset_path': '/home/yandex/MLWG2025/danielvolkov/datasets/VQA_w_embed',
10
+ 'grad_acc_steps': 2,
11
+ 'graph_construction_method': 'mmg',
12
+ 'lap_pe_dim': 16,
13
+ 'log_every_n_updates': 10,
14
+ 'max_grad_norm': 1.0,
15
+ 'num_epochs': 12,
16
+ 'num_fusion_nodes': 6,
17
+ 'num_text_global_nodes': 2,
18
+ 'num_workers': 8,
19
+ 'persistent_workers': True,
20
+ 'pin_memory': True,
21
+ 'resume_checkpoint': '/home/yandex/MLWG2025/danielvolkov/mmg_checkpoints/ckpt_update_82000.pt',
22
+ 'save_best': True,
23
+ 'self_loops_in_image_graph': True,
24
+ 'use_amp': True,
25
+ 'val_batches': 1000,
26
+ 'val_interval_updates': 3000,
27
+ 'warmup_fraction': 0.05}
28
+ Model config:
29
+ {'dropout': 0.2,
30
+ 'edge_dim': 6,
31
+ 'global_pool_method': 'mean',
32
+ 'global_sagpool_ratio': 0.5,
33
+ 'heads': 8,
34
+ 'hidden_dim': 512,
35
+ 'mlps_hidden_layers': 3,
36
+ 'node_dim': 773,
37
+ 'num_layers': 4,
38
+ 'output_dim': 3000,
39
+ 'pe_dim': 16,
40
+ 'sagpool_layer2ratio': {1: 0.7, 2: 0.7, 3: 0.8},
41
+ 'sagpool_mode': 'none'}
42
+ Model:
43
+ GraphGPSNet(
44
+ (node_mlp): Sequential(
45
+ (0): Linear(789, 512, bias=True)
46
+ (1): GELU(approximate='none')
47
+ (2): Dropout(p=0.2, inplace=False)
48
+ (3): Linear(512, 512, bias=True)
49
+ (4): GELU(approximate='none')
50
+ (5): Dropout(p=0.2, inplace=False)
51
+ (6): Linear(512, 512, bias=True)
52
+ (7): GELU(approximate='none')
53
+ (8): Dropout(p=0.2, inplace=False)
54
+ (9): Linear(512, 512, bias=True)
55
+ (10): GELU(approximate='none')
56
+ (11): Dropout(p=0.2, inplace=False)
57
+ (12): Linear(512, 512, bias=True)
58
+ )
59
+ (edge_mlp): Sequential(
60
+ (0): Linear(6, 512, bias=True)
61
+ (1): GELU(approximate='none')
62
+ (2): Dropout(p=0.2, inplace=False)
63
+ (3): Linear(512, 512, bias=True)
64
+ (4): GELU(approximate='none')
65
+ (5): Dropout(p=0.2, inplace=False)
66
+ (6): Linear(512, 512, bias=True)
67
+ (7): GELU(approximate='none')
68
+ (8): Dropout(p=0.2, inplace=False)
69
+ (9): Linear(512, 512, bias=True)
70
+ (10): GELU(approximate='none')
71
+ (11): Dropout(p=0.2, inplace=False)
72
+ (12): Linear(512, 512, bias=True)
73
+ )
74
+ (layers): ModuleList(
75
+ (0-3): 4 x GPSConv(512, conv=GINEConv(nn=Sequential(
76
+ (0): Linear(512, 512, bias=True)
77
+ (1): GELU(approximate='none')
78
+ (2): Dropout(p=0.2, inplace=False)
79
+ (3): Linear(512, 512, bias=True)
80
+ (4): GELU(approximate='none')
81
+ (5): Dropout(p=0.2, inplace=False)
82
+ (6): Linear(512, 512, bias=True)
83
+ (7): GELU(approximate='none')
84
+ (8): Dropout(p=0.2, inplace=False)
85
+ (9): Linear(512, 512, bias=True)
86
+ (10): GELU(approximate='none')
87
+ (11): Dropout(p=0.2, inplace=False)
88
+ (12): Linear(512, 512, bias=True)
89
+ )), heads=8, attn_type=multihead)
90
+ )
91
+ (pools): ModuleList(
92
+ (0-3): 4 x None
93
+ )
94
+ (postnet): Sequential(
95
+ (0): Linear(512, 512, bias=True)
96
+ (1): GELU(approximate='none')
97
+ (2): Dropout(p=0.2, inplace=False)
98
+ (3): Linear(512, 512, bias=True)
99
+ (4): GELU(approximate='none')
100
+ (5): Dropout(p=0.2, inplace=False)
101
+ (6): Linear(512, 512, bias=True)
102
+ (7): GELU(approximate='none')
103
+ (8): Dropout(p=0.2, inplace=False)
104
+ (9): Linear(512, 512, bias=True)
105
+ (10): GELU(approximate='none')
106
+ (11): Dropout(p=0.2, inplace=False)
107
+ (12): Linear(512, 512, bias=True)
108
+ )
109
+ (readout): Sequential(
110
+ (0): Linear(512, 512, bias=True)
111
+ (1): GELU(approximate='none')
112
+ (2): Dropout(p=0.2, inplace=False)
113
+ (3): Linear(512, 512, bias=True)
114
+ (4): GELU(approximate='none')
115
+ (5): Dropout(p=0.2, inplace=False)
116
+ (6): Linear(512, 512, bias=True)
117
+ (7): GELU(approximate='none')
118
+ (8): Dropout(p=0.2, inplace=False)
119
+ (9): Linear(512, 512, bias=True)
120
+ (10): GELU(approximate='none')
121
+ (11): Dropout(p=0.2, inplace=False)
122
+ (12): Linear(512, 3000, bias=True)
123
+ )
124
+ )
125
+ Loaded /home/yandex/MLWG2025/danielvolkov/mmg_checkpoints/ckpt_update_82000.pt to model
126
+ Validation VQA accuracy: 0.4404
127
+ Saved test predictions to /home/yandex/MLWG2025/danielvolkov/evaluations/mmg_no_sagpool/last.json
128
+ Test predictions saved to /home/yandex/MLWG2025/danielvolkov/evaluations/mmg_no_sagpool/last.json