-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrun.py
75 lines (69 loc) · 3.28 KB
/
run.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
import os
import math
## Image
methods = ['base', 'spl', 'ttcl', 'mcl', 'screener_net', 'lre', 'mw_net',
'dcl', 'lgl', 'dds', 'dihcl', 'superloss', 'cbs', 'c2f', 'adaptive_cl']
datasets = ['cifar10', 'cifar100', 'tinyimagenet', 'animal10n']
models = ['lenet', 'resnet18', 'vit']
settings = ['', '-noise-0.4', '-imbalance-50']
seeds = [42, 666, 777, 888, 999]
epoch = 200
gpu = 0
for setting in settings:
for dataset in datasets:
for model in models:
for method in methods:
for seed in seeds:
dir_name = 'runs/%s-%s%s-%s-%d-%d' % (method, dataset, setting, model, epoch, seed)
if not os.path.exists(dir_name):
cmd = 'python examples/%s.py --data %s%s --net %s --seed %d --epochs %d --gpu %d' % (method, dataset, setting, model, seed, epoch, gpu)
print(cmd)
os.system(cmd)
else:
print('Already run: %s' % dir_name)
## Text
methods = ['base', 'spl', 'ttcl', 'mcl', 'screener_net', 'lre', 'mw_net',
'dcl', 'dds', 'dihcl', 'superloss', 'adaptive_cl']
datasets = ['rte', 'mrpc', 'stsb', 'cola', 'sst2', 'qnli', 'qqp', 'mnli']
models = ['lstm', 'bert', 'gpt']
settings = ['', '-noise-0.4', '-imbalance-50']
seeds = [42, 666, 777, 888, 999]
epochs = {'lstm': 10, 'bert': 3, 'gpt': 3}
gpu = 0
for setting in settings:
for dataset in datasets:
for model in models:
for method in methods:
for seed in seeds:
dir_name = 'runs/%s-%s%s-%s-%d-%d' % (method, dataset, setting, model, epochs[model], seed)
if not os.path.exists(dir_name):
cmd = 'python examples/%s.py --data %s%s --net %s --seed %d --epochs %d --gpu %d' % (method, dataset, setting, model, seed, epochs[model], gpu)
if method in ['spl', 'ttcl']: cmd += ' --grow_epochs %d' % (int(math.ceil(epochs[model] / 2)))
if method == 'mcl': cmd += ' --warm_epoch 1 --schedule_epoch 1'
if method == 'dihcl': cmd += ' --warm_epoch 1'
if method == 'adaptive_cl': cmd += ' --inv 1'
print(cmd)
os.system(cmd)
else:
print('Already run: %s' % dir_name)
## Graph
methods = ['base', 'spl', 'ttcl', 'mcl', 'screener_net', 'lre', 'mw_net',
'dcl', 'dds', 'dihcl', 'superloss', 'adaptive_cl']
datasets = ['mutag', 'proteins', 'nci1', 'molhiv']
models = ['gcn', 'gat', 'gin']
settings = ['', '-noise-0.4', '-imbalance-50']
seeds = [42, 666, 777, 888, 999]
epoch = 200
gpu = 0
for setting in settings:
for dataset in datasets:
for model in models:
for method in methods:
for seed in seeds:
dir_name = 'runs/%s-%s%s-%s-%d-%d' % (method, dataset, setting, model, epoch, seed)
if not os.path.exists(dir_name):
cmd = 'python examples/%s.py --data %s%s --net %s --seed %d --epochs %d --gpu %d' % (method, dataset, setting, model, seed, epoch, gpu)
print(cmd)
os.system(cmd)
else:
print('Already run: %s' % dir_name)