asdf98 commited on
Commit
785614a
·
verified ·
1 Parent(s): 831f50a

Upload luminars/train.py

Browse files
Files changed (1) hide show
  1. luminars/train.py +26 -0
luminars/train.py ADDED
@@ -0,0 +1,26 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ """Staged freeze/thaw training helpers."""
2
+ import torch.nn as nn
3
+
4
+ def freeze(m):
5
+ for p in m.parameters(): p.requires_grad = False
6
+
7
+ def unfreeze(m):
8
+ for p in m.parameters(): p.requires_grad = True
9
+
10
+ def count_trainable(m):
11
+ return sum(p.numel() for p in m.parameters() if p.requires_grad)
12
+
13
+ def setup_stage1(model):
14
+ unfreeze(model)
15
+ return model
16
+
17
+ def setup_stage2(model):
18
+ freeze(model)
19
+ for name, p in model.named_parameters():
20
+ if "xattn" in name or "tproj" in name:
21
+ p.requires_grad = True
22
+ return model
23
+
24
+ def setup_stage3(model):
25
+ unfreeze(model)
26
+ return model