ojaffe commited on
Commit
792ff16
·
verified ·
1 Parent(s): f6eebf5

Upload folder using huggingface_hub

Browse files
Files changed (5) hide show
  1. __pycache__/predict.cpython-311.pyc +0 -0
  2. config.json +1 -0
  3. model.pt +3 -0
  4. predict.py +99 -0
  5. train.log +277 -0
__pycache__/predict.cpython-311.pyc ADDED
Binary file (6.46 kB). View file
 
config.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"in_channels": 24, "out_channels": 12, "channels": [32, 64, 128, 256], "context_len": 8, "model_class": "FlowWarpAttnUNet"}
model.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:06d08eedaeed225b294d854f97c1a00cb1df65efaee9394c6e0ddb722b227e49
3
+ size 15223690
predict.py ADDED
@@ -0,0 +1,99 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ """Inference for 2-frame simultaneous predictor with TTA."""
2
+ import json
3
+ import numpy as np
4
+ import torch
5
+ import sys
6
+ sys.path.insert(0, "/home/coder/code")
7
+ from flow_warp_attn_model import FlowWarpAttnUNet
8
+
9
+
10
+ def load_model(model_dir: str):
11
+ with open(f"{model_dir}/config.json") as f:
12
+ config = json.load(f)
13
+ model = FlowWarpAttnUNet(
14
+ in_channels=config["in_channels"],
15
+ channels=config["channels"],
16
+ out_channels=config.get("out_channels", 6)
17
+ )
18
+ sd = torch.load(f"{model_dir}/model.pt", map_location="cpu", weights_only=True)
19
+ sd = {k: v.float() for k, v in sd.items()}
20
+ model.load_state_dict(sd)
21
+ model.eval()
22
+ device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
23
+ model = model.to(device)
24
+ return {
25
+ "model": model,
26
+ "device": device,
27
+ "context_len": config["context_len"],
28
+ "cached_pred2": None,
29
+ }
30
+
31
+
32
+ def _prepare_input(context_frames, context_len):
33
+ N = len(context_frames)
34
+ if N >= context_len:
35
+ frames = context_frames[-context_len:]
36
+ else:
37
+ pad = np.repeat(context_frames[:1], context_len - N, axis=0)
38
+ frames = np.concatenate([pad, context_frames], axis=0)
39
+ frames_f = frames.astype(np.float32) / 255.0
40
+ frames_f = np.transpose(frames_f, (0, 3, 1, 2))
41
+ context = frames_f.reshape(1, -1, 64, 64)
42
+ last_frame = frames_f[-1:]
43
+ return context, last_frame
44
+
45
+
46
+ def _run_model_tta(model, device, ctx, last):
47
+ """Run model with TTA (horizontal flip) and return both predictions."""
48
+ with torch.no_grad():
49
+ ctx_t = torch.from_numpy(ctx).to(device)
50
+ last_t = torch.from_numpy(last).to(device)
51
+ preds1, _ = model(ctx_t, last_t)
52
+
53
+ # Flipped
54
+ ctx_f = torch.from_numpy(ctx[:, :, :, ::-1].copy()).to(device)
55
+ last_f = torch.from_numpy(last[:, :, :, ::-1].copy()).to(device)
56
+ preds2, _ = model(ctx_f, last_f)
57
+
58
+ # Average normal and flipped-back predictions
59
+ pred1 = (preds1[0] + preds2[0].flip(-1)) / 2.0
60
+ pred2 = (preds1[1] + preds2[1].flip(-1)) / 2.0
61
+
62
+ return pred1, pred2
63
+
64
+
65
+ def predict_next_frame(model_dict, context_frames: np.ndarray) -> np.ndarray:
66
+ model = model_dict["model"]
67
+ device = model_dict["device"]
68
+ context_len = model_dict["context_len"]
69
+
70
+ # Determine if this is an even or odd call
71
+ # Even-length context (8, 10, 12, 14): run model, return pred1, cache pred2
72
+ # Odd-length context (9, 11, 13, 15): return cached pred2
73
+ n = len(context_frames)
74
+
75
+ if n % 2 == 0:
76
+ # Run model
77
+ ctx, last = _prepare_input(context_frames, context_len)
78
+ pred1, pred2 = _run_model_tta(model, device, ctx, last)
79
+
80
+ # Cache pred2
81
+ pred2_np = pred2[0].cpu().numpy()
82
+ pred2_np = np.transpose(pred2_np, (1, 2, 0))
83
+ model_dict["cached_pred2"] = (pred2_np * 255.0).clip(0, 255).astype(np.uint8)
84
+
85
+ # Return pred1
86
+ pred1_np = pred1[0].cpu().numpy()
87
+ pred1_np = np.transpose(pred1_np, (1, 2, 0))
88
+ return (pred1_np * 255.0).clip(0, 255).astype(np.uint8)
89
+ else:
90
+ # Return cached pred2
91
+ if model_dict["cached_pred2"] is not None:
92
+ return model_dict["cached_pred2"]
93
+ else:
94
+ # Fallback: run model on context minus last frame
95
+ ctx, last = _prepare_input(context_frames[:-1], context_len)
96
+ pred1, pred2 = _run_model_tta(model, device, ctx, last)
97
+ pred2_np = pred2[0].cpu().numpy()
98
+ pred2_np = np.transpose(pred2_np, (1, 2, 0))
99
+ return (pred2_np * 255.0).clip(0, 255).astype(np.uint8)
train.log ADDED
@@ -0,0 +1,277 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ [00:07:53] Extended head.weight from 6 to 12 output channels
2
+ [00:07:53] Extended head.bias from 6 to 12 output channels
3
+ [00:07:54] Model: 2-frame FlowWarpAttnUNet (12ch out), 7,596,940 params
4
+ [00:07:54] === Phase 1: 2-frame simultaneous (120 epochs) ===
5
+ [00:07:59] Train: 44213, Val: 5434
6
+ [00:08:51] P1 Ep 1/120 | Train: 0.061978 | Val: 0.077449 | LR: 1.00e-04
7
+ [00:08:51] -> Saved (val=0.077449)
8
+ [00:09:43] P1 Ep 2/120 | Train: 0.053971 | Val: 0.075218 | LR: 9.99e-05
9
+ [00:09:43] -> Saved (val=0.075218)
10
+ [00:10:33] P1 Ep 3/120 | Train: 0.051406 | Val: 0.073175 | LR: 9.98e-05
11
+ [00:10:33] -> Saved (val=0.073175)
12
+ [00:11:27] P1 Ep 4/120 | Train: 0.049921 | Val: 0.073100 | LR: 9.97e-05
13
+ [00:11:27] -> Saved (val=0.073100)
14
+ [00:12:19] P1 Ep 5/120 | Train: 0.048883 | Val: 0.072808 | LR: 9.96e-05
15
+ [00:12:19] -> Saved (val=0.072808)
16
+ [00:13:13] P1 Ep 6/120 | Train: 0.048200 | Val: 0.073129 | LR: 9.94e-05
17
+ [00:14:02] P1 Ep 7/120 | Train: 0.047661 | Val: 0.072025 | LR: 9.92e-05
18
+ [00:14:02] -> Saved (val=0.072025)
19
+ [00:14:52] P1 Ep 8/120 | Train: 0.047149 | Val: 0.072146 | LR: 9.89e-05
20
+ [00:15:41] P1 Ep 9/120 | Train: 0.046679 | Val: 0.072246 | LR: 9.86e-05
21
+ [00:16:29] P1 Ep 10/120 | Train: 0.046266 | Val: 0.071369 | LR: 9.83e-05
22
+ [00:16:29] -> Saved (val=0.071369)
23
+ [00:17:25] P1 Ep 11/120 | Train: 0.045865 | Val: 0.072235 | LR: 9.80e-05
24
+ [00:18:24] P1 Ep 12/120 | Train: 0.045547 | Val: 0.072252 | LR: 9.76e-05
25
+ [00:19:18] P1 Ep 13/120 | Train: 0.045204 | Val: 0.071034 | LR: 9.72e-05
26
+ [00:19:18] -> Saved (val=0.071034)
27
+ [00:20:08] P1 Ep 14/120 | Train: 0.044923 | Val: 0.071426 | LR: 9.67e-05
28
+ [00:20:58] P1 Ep 15/120 | Train: 0.044628 | Val: 0.071342 | LR: 9.62e-05
29
+ [00:21:42] P1 Ep 16/120 | Train: 0.044351 | Val: 0.071557 | LR: 9.57e-05
30
+ [00:22:35] P1 Ep 17/120 | Train: 0.044011 | Val: 0.071327 | LR: 9.52e-05
31
+ [00:23:29] P1 Ep 18/120 | Train: 0.043832 | Val: 0.071657 | LR: 9.46e-05
32
+ [00:24:26] P1 Ep 19/120 | Train: 0.043635 | Val: 0.071406 | LR: 9.40e-05
33
+ [00:25:21] P1 Ep 20/120 | Train: 0.043267 | Val: 0.071049 | LR: 9.34e-05
34
+ [00:26:08] P1 Ep 21/120 | Train: 0.043037 | Val: 0.071014 | LR: 9.27e-05
35
+ [00:26:08] -> Saved (val=0.071014)
36
+ [00:27:04] P1 Ep 22/120 | Train: 0.042821 | Val: 0.071219 | LR: 9.20e-05
37
+ [00:27:47] P1 Ep 23/120 | Train: 0.042603 | Val: 0.071098 | LR: 9.13e-05
38
+ [00:28:35] P1 Ep 24/120 | Train: 0.042412 | Val: 0.071377 | LR: 9.05e-05
39
+ [00:29:32] P1 Ep 25/120 | Train: 0.042131 | Val: 0.071263 | LR: 8.98e-05
40
+ [00:30:17] P1 Ep 26/120 | Train: 0.041937 | Val: 0.071581 | LR: 8.90e-05
41
+ [00:31:09] P1 Ep 27/120 | Train: 0.041691 | Val: 0.071339 | LR: 8.81e-05
42
+ [00:32:03] P1 Ep 28/120 | Train: 0.041473 | Val: 0.070890 | LR: 8.73e-05
43
+ [00:32:03] -> Saved (val=0.070890)
44
+ [00:32:47] P1 Ep 29/120 | Train: 0.041367 | Val: 0.071414 | LR: 8.64e-05
45
+ [00:33:38] P1 Ep 30/120 | Train: 0.041044 | Val: 0.071531 | LR: 8.55e-05
46
+ [00:34:31] P1 Ep 31/120 | Train: 0.040797 | Val: 0.071771 | LR: 8.46e-05
47
+ [00:35:28] P1 Ep 32/120 | Train: 0.040726 | Val: 0.071464 | LR: 8.36e-05
48
+ [00:36:26] P1 Ep 33/120 | Train: 0.040450 | Val: 0.071289 | LR: 8.26e-05
49
+ [00:37:16] P1 Ep 34/120 | Train: 0.040327 | Val: 0.071370 | LR: 8.17e-05
50
+ [00:38:08] P1 Ep 35/120 | Train: 0.040060 | Val: 0.071321 | LR: 8.06e-05
51
+ [00:38:53] P1 Ep 36/120 | Train: 0.039915 | Val: 0.071600 | LR: 7.96e-05
52
+ [00:39:45] P1 Ep 37/120 | Train: 0.039755 | Val: 0.071663 | LR: 7.85e-05
53
+ [00:40:33] P1 Ep 38/120 | Train: 0.039553 | Val: 0.071561 | LR: 7.75e-05
54
+ [00:41:26] P1 Ep 39/120 | Train: 0.039335 | Val: 0.071277 | LR: 7.64e-05
55
+ [00:42:21] P1 Ep 40/120 | Train: 0.039180 | Val: 0.071425 | LR: 7.53e-05
56
+ [00:43:16] P1 Ep 41/120 | Train: 0.038976 | Val: 0.071691 | LR: 7.41e-05
57
+ [00:44:12] P1 Ep 42/120 | Train: 0.038873 | Val: 0.071611 | LR: 7.30e-05
58
+ [00:45:09] P1 Ep 43/120 | Train: 0.038630 | Val: 0.071764 | LR: 7.18e-05
59
+ [00:46:08] P1 Ep 44/120 | Train: 0.038469 | Val: 0.071618 | LR: 7.06e-05
60
+ [00:47:06] P1 Ep 45/120 | Train: 0.038363 | Val: 0.071648 | LR: 6.94e-05
61
+ [00:48:04] P1 Ep 46/120 | Train: 0.038163 | Val: 0.071297 | LR: 6.82e-05
62
+ [00:49:01] P1 Ep 47/120 | Train: 0.037992 | Val: 0.071653 | LR: 6.70e-05
63
+ [00:49:44] P1 Ep 48/120 | Train: 0.037851 | Val: 0.071769 | LR: 6.58e-05
64
+ [00:50:27] P1 Ep 49/120 | Train: 0.037710 | Val: 0.071199 | LR: 6.46e-05
65
+ [00:51:21] P1 Ep 50/120 | Train: 0.037520 | Val: 0.071423 | LR: 6.33e-05
66
+ [00:52:17] P1 Ep 51/120 | Train: 0.037375 | Val: 0.071352 | LR: 6.21e-05
67
+ [00:53:13] P1 Ep 52/120 | Train: 0.037263 | Val: 0.071710 | LR: 6.08e-05
68
+ [00:54:07] P1 Ep 53/120 | Train: 0.037123 | Val: 0.071638 | LR: 5.95e-05
69
+ [00:54:58] P1 Ep 54/120 | Train: 0.036962 | Val: 0.071801 | LR: 5.82e-05
70
+ [00:55:50] P1 Ep 55/120 | Train: 0.036795 | Val: 0.071922 | LR: 5.70e-05
71
+ [00:56:48] P1 Ep 56/120 | Train: 0.036670 | Val: 0.071697 | LR: 5.57e-05
72
+ [00:57:47] P1 Ep 57/120 | Train: 0.036539 | Val: 0.071700 | LR: 5.44e-05
73
+ [00:58:46] P1 Ep 58/120 | Train: 0.036368 | Val: 0.071952 | LR: 5.31e-05
74
+ [00:59:41] P1 Ep 59/120 | Train: 0.036264 | Val: 0.072037 | LR: 5.18e-05
75
+ [01:00:36] P1 Ep 60/120 | Train: 0.036165 | Val: 0.072257 | LR: 5.05e-05
76
+ [01:01:35] P1 Ep 61/120 | Train: 0.036005 | Val: 0.071662 | LR: 4.92e-05
77
+ [01:02:32] P1 Ep 62/120 | Train: 0.035873 | Val: 0.072355 | LR: 4.79e-05
78
+ [01:03:23] P1 Ep 63/120 | Train: 0.035757 | Val: 0.071915 | LR: 4.66e-05
79
+ [01:03:59] P1 Ep 64/120 | Train: 0.035610 | Val: 0.072048 | LR: 4.53e-05
80
+ [01:04:37] P1 Ep 65/120 | Train: 0.035487 | Val: 0.072166 | LR: 4.40e-05
81
+ [01:05:34] P1 Ep 66/120 | Train: 0.035391 | Val: 0.072117 | LR: 4.28e-05
82
+ [01:06:28] P1 Ep 67/120 | Train: 0.035244 | Val: 0.072048 | LR: 4.15e-05
83
+ [01:07:27] P1 Ep 68/120 | Train: 0.035153 | Val: 0.072162 | LR: 4.02e-05
84
+ [01:08:23] P1 Ep 69/120 | Train: 0.035067 | Val: 0.071985 | LR: 3.89e-05
85
+ [01:09:19] P1 Ep 70/120 | Train: 0.034909 | Val: 0.072140 | LR: 3.77e-05
86
+ [01:10:11] P1 Ep 71/120 | Train: 0.034856 | Val: 0.072043 | LR: 3.64e-05
87
+ [01:11:06] P1 Ep 72/120 | Train: 0.034716 | Val: 0.072188 | LR: 3.52e-05
88
+ [01:12:00] P1 Ep 73/120 | Train: 0.034623 | Val: 0.072137 | LR: 3.40e-05
89
+ [01:12:59] P1 Ep 74/120 | Train: 0.034535 | Val: 0.072459 | LR: 3.28e-05
90
+ [01:13:51] P1 Ep 75/120 | Train: 0.034420 | Val: 0.072392 | LR: 3.16e-05
91
+ [01:14:48] P1 Ep 76/120 | Train: 0.034344 | Val: 0.072305 | LR: 3.04e-05
92
+ [01:15:45] P1 Ep 77/120 | Train: 0.034259 | Val: 0.072539 | LR: 2.92e-05
93
+ [01:16:44] P1 Ep 78/120 | Train: 0.034162 | Val: 0.072297 | LR: 2.80e-05
94
+ [01:17:40] P1 Ep 79/120 | Train: 0.034062 | Val: 0.072580 | LR: 2.69e-05
95
+ [01:18:33] P1 Ep 80/120 | Train: 0.033952 | Val: 0.072429 | LR: 2.58e-05
96
+ [01:19:30] P1 Ep 81/120 | Train: 0.033902 | Val: 0.072486 | LR: 2.46e-05
97
+ [01:20:25] P1 Ep 82/120 | Train: 0.033823 | Val: 0.072529 | LR: 2.35e-05
98
+ [01:21:19] P1 Ep 83/120 | Train: 0.033754 | Val: 0.072646 | LR: 2.25e-05
99
+ [01:22:16] P1 Ep 84/120 | Train: 0.033659 | Val: 0.072505 | LR: 2.14e-05
100
+ [01:23:14] P1 Ep 85/120 | Train: 0.033570 | Val: 0.072547 | LR: 2.04e-05
101
+ [01:24:10] P1 Ep 86/120 | Train: 0.033534 | Val: 0.072775 | LR: 1.93e-05
102
+ [01:25:07] P1 Ep 87/120 | Train: 0.033473 | Val: 0.072612 | LR: 1.84e-05
103
+ [01:26:02] P1 Ep 88/120 | Train: 0.033390 | Val: 0.072669 | LR: 1.74e-05
104
+ [01:26:58] P1 Ep 89/120 | Train: 0.033307 | Val: 0.072676 | LR: 1.64e-05
105
+ [01:27:55] P1 Ep 90/120 | Train: 0.033262 | Val: 0.072794 | LR: 1.55e-05
106
+ [01:28:51] P1 Ep 91/120 | Train: 0.033206 | Val: 0.072746 | LR: 1.46e-05
107
+ [01:29:46] P1 Ep 92/120 | Train: 0.033152 | Val: 0.072924 | LR: 1.37e-05
108
+ [01:30:42] P1 Ep 93/120 | Train: 0.033113 | Val: 0.072918 | LR: 1.29e-05
109
+ [01:31:15] P1 Ep 94/120 | Train: 0.033024 | Val: 0.072915 | LR: 1.20e-05
110
+ [01:32:11] P1 Ep 95/120 | Train: 0.032998 | Val: 0.072857 | LR: 1.12e-05
111
+ [01:32:50] P1 Ep 96/120 | Train: 0.032968 | Val: 0.072972 | LR: 1.05e-05
112
+ [01:33:38] P1 Ep 97/120 | Train: 0.032916 | Val: 0.072997 | LR: 9.71e-06
113
+ [01:34:06] P1 Ep 98/120 | Train: 0.032856 | Val: 0.073031 | LR: 8.99e-06
114
+ [01:34:53] P1 Ep 99/120 | Train: 0.032819 | Val: 0.073052 | LR: 8.29e-06
115
+ [01:35:49] P1 Ep 100/120 | Train: 0.032779 | Val: 0.073095 | LR: 7.63e-06
116
+ [01:36:46] P1 Ep 101/120 | Train: 0.032743 | Val: 0.073006 | LR: 7.00e-06
117
+ [01:37:43] P1 Ep 102/120 | Train: 0.032724 | Val: 0.073142 | LR: 6.40e-06
118
+ [01:38:38] P1 Ep 103/120 | Train: 0.032695 | Val: 0.073175 | LR: 5.82e-06
119
+ [01:39:35] P1 Ep 104/120 | Train: 0.032665 | Val: 0.073144 | LR: 5.28e-06
120
+ [01:40:32] P1 Ep 105/120 | Train: 0.032630 | Val: 0.073096 | LR: 4.77e-06
121
+ [01:41:30] P1 Ep 106/120 | Train: 0.032615 | Val: 0.073141 | LR: 4.29e-06
122
+ [01:42:25] P1 Ep 107/120 | Train: 0.032578 | Val: 0.073113 | LR: 3.84e-06
123
+ [01:43:12] P1 Ep 108/120 | Train: 0.032569 | Val: 0.073157 | LR: 3.42e-06
124
+ [01:44:08] P1 Ep 109/120 | Train: 0.032576 | Val: 0.073209 | LR: 3.04e-06
125
+ [01:45:01] P1 Ep 110/120 | Train: 0.032547 | Val: 0.073179 | LR: 2.69e-06
126
+ [01:45:57] P1 Ep 111/120 | Train: 0.032556 | Val: 0.073180 | LR: 2.37e-06
127
+ [01:46:55] P1 Ep 112/120 | Train: 0.032527 | Val: 0.073216 | LR: 2.08e-06
128
+ [01:47:52] P1 Ep 113/120 | Train: 0.032491 | Val: 0.073190 | LR: 1.83e-06
129
+ [01:48:49] P1 Ep 114/120 | Train: 0.032485 | Val: 0.073207 | LR: 1.61e-06
130
+ [01:49:45] P1 Ep 115/120 | Train: 0.032484 | Val: 0.073184 | LR: 1.42e-06
131
+ [01:50:35] P1 Ep 116/120 | Train: 0.032462 | Val: 0.073198 | LR: 1.27e-06
132
+ [01:51:30] P1 Ep 117/120 | Train: 0.032458 | Val: 0.073201 | LR: 1.15e-06
133
+ [01:52:24] P1 Ep 118/120 | Train: 0.032469 | Val: 0.073226 | LR: 1.07e-06
134
+ [01:53:20] P1 Ep 119/120 | Train: 0.032486 | Val: 0.073221 | LR: 1.02e-06
135
+ [01:54:17] P1 Ep 120/120 | Train: 0.032437 | Val: 0.073237 | LR: 1.00e-06
136
+ [01:54:17] === Phase 2: 2-pair AR (80 epochs) ===
137
+ [01:54:22] Train: 11098, Val: 1364
138
+ [01:54:55] P2 Ep 1/80 | Train: 0.054557 | Val: 0.106498 | LR: 3.00e-05 | TF: 0.30
139
+ [01:54:55] -> Saved P2 (val=0.106498)
140
+ [01:55:29] P2 Ep 2/80 | Train: 0.054574 | Val: 0.106666 | LR: 3.00e-05 | TF: 0.30
141
+ [01:56:03] P2 Ep 3/80 | Train: 0.053318 | Val: 0.107518 | LR: 2.99e-05 | TF: 0.29
142
+ [01:56:37] P2 Ep 4/80 | Train: 0.052657 | Val: 0.107697 | LR: 2.98e-05 | TF: 0.29
143
+ [01:57:11] P2 Ep 5/80 | Train: 0.051832 | Val: 0.107233 | LR: 2.97e-05 | TF: 0.28
144
+ [01:57:44] P2 Ep 6/80 | Train: 0.051541 | Val: 0.106448 | LR: 2.96e-05 | TF: 0.28
145
+ [01:57:44] -> Saved P2 (val=0.106448)
146
+ [01:58:18] P2 Ep 7/80 | Train: 0.051457 | Val: 0.107375 | LR: 2.95e-05 | TF: 0.28
147
+ [01:58:52] P2 Ep 8/80 | Train: 0.051690 | Val: 0.107256 | LR: 2.93e-05 | TF: 0.27
148
+ [01:59:25] P2 Ep 9/80 | Train: 0.050669 | Val: 0.107383 | LR: 2.91e-05 | TF: 0.27
149
+ [01:59:59] P2 Ep 10/80 | Train: 0.051103 | Val: 0.107907 | LR: 2.89e-05 | TF: 0.27
150
+ [02:00:32] P2 Ep 11/80 | Train: 0.050864 | Val: 0.107474 | LR: 2.87e-05 | TF: 0.26
151
+ [02:01:05] P2 Ep 12/80 | Train: 0.050607 | Val: 0.107356 | LR: 2.84e-05 | TF: 0.26
152
+ [02:01:40] P2 Ep 13/80 | Train: 0.050188 | Val: 0.107834 | LR: 2.82e-05 | TF: 0.26
153
+ [02:02:13] P2 Ep 14/80 | Train: 0.049680 | Val: 0.108136 | LR: 2.79e-05 | TF: 0.25
154
+ [02:02:45] P2 Ep 15/80 | Train: 0.049584 | Val: 0.108029 | LR: 2.76e-05 | TF: 0.25
155
+ [02:03:18] P2 Ep 16/80 | Train: 0.049773 | Val: 0.108143 | LR: 2.72e-05 | TF: 0.24
156
+ [02:03:52] P2 Ep 17/80 | Train: 0.049839 | Val: 0.107671 | LR: 2.69e-05 | TF: 0.24
157
+ [02:04:25] P2 Ep 18/80 | Train: 0.049650 | Val: 0.108371 | LR: 2.65e-05 | TF: 0.24
158
+ [02:04:59] P2 Ep 19/80 | Train: 0.049281 | Val: 0.107904 | LR: 2.61e-05 | TF: 0.23
159
+ [02:05:32] P2 Ep 20/80 | Train: 0.049104 | Val: 0.107936 | LR: 2.58e-05 | TF: 0.23
160
+ [02:06:06] P2 Ep 21/80 | Train: 0.049169 | Val: 0.108025 | LR: 2.53e-05 | TF: 0.22
161
+ [02:06:39] P2 Ep 22/80 | Train: 0.048988 | Val: 0.108295 | LR: 2.49e-05 | TF: 0.22
162
+ [02:07:13] P2 Ep 23/80 | Train: 0.048794 | Val: 0.108466 | LR: 2.45e-05 | TF: 0.22
163
+ [02:07:45] P2 Ep 24/80 | Train: 0.049192 | Val: 0.108640 | LR: 2.40e-05 | TF: 0.21
164
+ [02:08:19] P2 Ep 25/80 | Train: 0.048759 | Val: 0.108915 | LR: 2.36e-05 | TF: 0.21
165
+ [02:08:53] P2 Ep 26/80 | Train: 0.048250 | Val: 0.109006 | LR: 2.31e-05 | TF: 0.21
166
+ [02:09:26] P2 Ep 27/80 | Train: 0.048639 | Val: 0.109548 | LR: 2.26e-05 | TF: 0.20
167
+ [02:10:00] P2 Ep 28/80 | Train: 0.048423 | Val: 0.109665 | LR: 2.21e-05 | TF: 0.20
168
+ [02:10:32] P2 Ep 29/80 | Train: 0.047949 | Val: 0.109045 | LR: 2.16e-05 | TF: 0.20
169
+ [02:11:06] P2 Ep 30/80 | Train: 0.048071 | Val: 0.108845 | LR: 2.10e-05 | TF: 0.19
170
+ [02:11:40] P2 Ep 31/80 | Train: 0.047972 | Val: 0.109285 | LR: 2.05e-05 | TF: 0.19
171
+ [02:12:14] P2 Ep 32/80 | Train: 0.047973 | Val: 0.108996 | LR: 2.00e-05 | TF: 0.18
172
+ [02:12:48] P2 Ep 33/80 | Train: 0.047556 | Val: 0.109569 | LR: 1.94e-05 | TF: 0.18
173
+ [02:13:22] P2 Ep 34/80 | Train: 0.047713 | Val: 0.110014 | LR: 1.89e-05 | TF: 0.18
174
+ [02:13:56] P2 Ep 35/80 | Train: 0.047856 | Val: 0.110129 | LR: 1.83e-05 | TF: 0.17
175
+ [02:14:29] P2 Ep 36/80 | Train: 0.047775 | Val: 0.109471 | LR: 1.78e-05 | TF: 0.17
176
+ [02:15:03] P2 Ep 37/80 | Train: 0.047412 | Val: 0.109849 | LR: 1.72e-05 | TF: 0.17
177
+ [02:15:36] P2 Ep 38/80 | Train: 0.047392 | Val: 0.109965 | LR: 1.66e-05 | TF: 0.16
178
+ [02:16:07] P2 Ep 39/80 | Train: 0.047320 | Val: 0.109771 | LR: 1.61e-05 | TF: 0.16
179
+ [02:16:41] P2 Ep 40/80 | Train: 0.047311 | Val: 0.109923 | LR: 1.55e-05 | TF: 0.15
180
+ [02:17:14] P2 Ep 41/80 | Train: 0.046883 | Val: 0.110259 | LR: 1.49e-05 | TF: 0.15
181
+ [02:17:48] P2 Ep 42/80 | Train: 0.047239 | Val: 0.109966 | LR: 1.44e-05 | TF: 0.15
182
+ [02:18:21] P2 Ep 43/80 | Train: 0.047145 | Val: 0.110113 | LR: 1.38e-05 | TF: 0.14
183
+ [02:18:54] P2 Ep 44/80 | Train: 0.046842 | Val: 0.110258 | LR: 1.32e-05 | TF: 0.14
184
+ [02:19:28] P2 Ep 45/80 | Train: 0.047189 | Val: 0.110256 | LR: 1.27e-05 | TF: 0.13
185
+ [02:20:01] P2 Ep 46/80 | Train: 0.046912 | Val: 0.110545 | LR: 1.21e-05 | TF: 0.13
186
+ [02:20:31] P2 Ep 47/80 | Train: 0.046719 | Val: 0.110554 | LR: 1.16e-05 | TF: 0.13
187
+ [02:21:04] P2 Ep 48/80 | Train: 0.046622 | Val: 0.110318 | LR: 1.10e-05 | TF: 0.12
188
+ [02:21:37] P2 Ep 49/80 | Train: 0.046894 | Val: 0.111087 | LR: 1.05e-05 | TF: 0.12
189
+ [02:22:11] P2 Ep 50/80 | Train: 0.046511 | Val: 0.110787 | LR: 9.95e-06 | TF: 0.12
190
+ [02:22:44] P2 Ep 51/80 | Train: 0.046626 | Val: 0.110765 | LR: 9.43e-06 | TF: 0.11
191
+ [02:23:17] P2 Ep 52/80 | Train: 0.046520 | Val: 0.110935 | LR: 8.92e-06 | TF: 0.11
192
+ [02:23:51] P2 Ep 53/80 | Train: 0.046424 | Val: 0.110928 | LR: 8.41e-06 | TF: 0.10
193
+ [02:24:24] P2 Ep 54/80 | Train: 0.046440 | Val: 0.110769 | LR: 7.92e-06 | TF: 0.10
194
+ [02:24:58] P2 Ep 55/80 | Train: 0.046489 | Val: 0.110981 | LR: 7.44e-06 | TF: 0.10
195
+ [02:25:31] P2 Ep 56/80 | Train: 0.046320 | Val: 0.111142 | LR: 6.98e-06 | TF: 0.09
196
+ [02:26:01] P2 Ep 57/80 | Train: 0.046366 | Val: 0.110924 | LR: 6.52e-06 | TF: 0.09
197
+ [02:26:32] P2 Ep 58/80 | Train: 0.046442 | Val: 0.110997 | LR: 6.08e-06 | TF: 0.09
198
+ [02:27:05] P2 Ep 59/80 | Train: 0.046215 | Val: 0.110918 | LR: 5.66e-06 | TF: 0.08
199
+ [02:27:37] P2 Ep 60/80 | Train: 0.046221 | Val: 0.111078 | LR: 5.25e-06 | TF: 0.08
200
+ [02:28:08] P2 Ep 61/80 | Train: 0.046320 | Val: 0.111255 | LR: 4.85e-06 | TF: 0.07
201
+ [02:28:41] P2 Ep 62/80 | Train: 0.046290 | Val: 0.111131 | LR: 4.47e-06 | TF: 0.07
202
+ [02:29:14] P2 Ep 63/80 | Train: 0.046355 | Val: 0.111194 | LR: 4.11e-06 | TF: 0.07
203
+ [02:29:47] P2 Ep 64/80 | Train: 0.046299 | Val: 0.111137 | LR: 3.77e-06 | TF: 0.06
204
+ [02:30:21] P2 Ep 65/80 | Train: 0.046351 | Val: 0.111013 | LR: 3.44e-06 | TF: 0.06
205
+ [02:30:54] P2 Ep 66/80 | Train: 0.046255 | Val: 0.111259 | LR: 3.14e-06 | TF: 0.06
206
+ [02:31:28] P2 Ep 67/80 | Train: 0.046359 | Val: 0.111343 | LR: 2.85e-06 | TF: 0.05
207
+ [02:32:01] P2 Ep 68/80 | Train: 0.046468 | Val: 0.111270 | LR: 2.58e-06 | TF: 0.05
208
+ [02:32:35] P2 Ep 69/80 | Train: 0.046102 | Val: 0.111267 | LR: 2.33e-06 | TF: 0.05
209
+ [02:33:09] P2 Ep 70/80 | Train: 0.046351 | Val: 0.111322 | LR: 2.10e-06 | TF: 0.04
210
+ [02:33:42] P2 Ep 71/80 | Train: 0.046254 | Val: 0.111232 | LR: 1.90e-06 | TF: 0.04
211
+ [02:34:15] P2 Ep 72/80 | Train: 0.046285 | Val: 0.111315 | LR: 1.71e-06 | TF: 0.03
212
+ [02:34:49] P2 Ep 73/80 | Train: 0.046287 | Val: 0.111381 | LR: 1.54e-06 | TF: 0.03
213
+ [02:35:23] P2 Ep 74/80 | Train: 0.046461 | Val: 0.111264 | LR: 1.40e-06 | TF: 0.03
214
+ [02:35:56] P2 Ep 75/80 | Train: 0.046390 | Val: 0.111400 | LR: 1.28e-06 | TF: 0.02
215
+ [02:36:29] P2 Ep 76/80 | Train: 0.046424 | Val: 0.111390 | LR: 1.18e-06 | TF: 0.02
216
+ [02:37:03] P2 Ep 77/80 | Train: 0.046389 | Val: 0.111377 | LR: 1.10e-06 | TF: 0.02
217
+ [02:37:37] P2 Ep 78/80 | Train: 0.046533 | Val: 0.111417 | LR: 1.04e-06 | TF: 0.01
218
+ [02:38:02] P2 Ep 79/80 | Train: 0.046486 | Val: 0.111412 | LR: 1.01e-06 | TF: 0.01
219
+ [02:38:31] P2 Ep 80/80 | Train: 0.046501 | Val: 0.111431 | LR: 1.00e-06 | TF: 0.00
220
+ [02:38:31] === Phase 3: 4-pair AR (50 epochs) ===
221
+ [02:38:36] Train: 5549, Val: 682
222
+ [02:39:22] P3 Ep 1/50 | Train: 0.092983 | Val: 0.161518 | LR: 9.99e-06
223
+ [02:39:22] -> Saved P3 (val=0.161518)
224
+ [02:40:08] P3 Ep 2/50 | Train: 0.090956 | Val: 0.159641 | LR: 9.96e-06
225
+ [02:40:08] -> Saved P3 (val=0.159641)
226
+ [02:40:54] P3 Ep 3/50 | Train: 0.089849 | Val: 0.160089 | LR: 9.92e-06
227
+ [02:41:39] P3 Ep 4/50 | Train: 0.088783 | Val: 0.160196 | LR: 9.86e-06
228
+ [02:42:24] P3 Ep 5/50 | Train: 0.087803 | Val: 0.159608 | LR: 9.78e-06
229
+ [02:42:24] -> Saved P3 (val=0.159608)
230
+ [02:43:10] P3 Ep 6/50 | Train: 0.086842 | Val: 0.159242 | LR: 9.68e-06
231
+ [02:43:10] -> Saved P3 (val=0.159242)
232
+ [02:43:55] P3 Ep 7/50 | Train: 0.086485 | Val: 0.158938 | LR: 9.57e-06
233
+ [02:43:55] -> Saved P3 (val=0.158938)
234
+ [02:44:40] P3 Ep 8/50 | Train: 0.085548 | Val: 0.159388 | LR: 9.44e-06
235
+ [02:45:27] P3 Ep 9/50 | Train: 0.085003 | Val: 0.159269 | LR: 9.30e-06
236
+ [02:46:13] P3 Ep 10/50 | Train: 0.084472 | Val: 0.159734 | LR: 9.14e-06
237
+ [02:46:59] P3 Ep 11/50 | Train: 0.083980 | Val: 0.159817 | LR: 8.97e-06
238
+ [02:47:45] P3 Ep 12/50 | Train: 0.083577 | Val: 0.160148 | LR: 8.78e-06
239
+ [02:48:30] P3 Ep 13/50 | Train: 0.082901 | Val: 0.160434 | LR: 8.58e-06
240
+ [02:49:16] P3 Ep 14/50 | Train: 0.082547 | Val: 0.159832 | LR: 8.37e-06
241
+ [02:50:02] P3 Ep 15/50 | Train: 0.081991 | Val: 0.160071 | LR: 8.15e-06
242
+ [02:50:47] P3 Ep 16/50 | Train: 0.081574 | Val: 0.161300 | LR: 7.91e-06
243
+ [02:51:33] P3 Ep 17/50 | Train: 0.081306 | Val: 0.160231 | LR: 7.67e-06
244
+ [02:52:19] P3 Ep 18/50 | Train: 0.080770 | Val: 0.160676 | LR: 7.42e-06
245
+ [02:53:02] P3 Ep 19/50 | Train: 0.080645 | Val: 0.160781 | LR: 7.16e-06
246
+ [02:53:46] P3 Ep 20/50 | Train: 0.080037 | Val: 0.160264 | LR: 6.89e-06
247
+ [02:54:32] P3 Ep 21/50 | Train: 0.079980 | Val: 0.161155 | LR: 6.62e-06
248
+ [02:55:18] P3 Ep 22/50 | Train: 0.079747 | Val: 0.161131 | LR: 6.34e-06
249
+ [02:56:01] P3 Ep 23/50 | Train: 0.079374 | Val: 0.161239 | LR: 6.06e-06
250
+ [02:56:42] P3 Ep 24/50 | Train: 0.078940 | Val: 0.161157 | LR: 5.78e-06
251
+ [02:57:27] P3 Ep 25/50 | Train: 0.078968 | Val: 0.161365 | LR: 5.50e-06
252
+ [02:58:13] P3 Ep 26/50 | Train: 0.078512 | Val: 0.161663 | LR: 5.22e-06
253
+ [02:58:58] P3 Ep 27/50 | Train: 0.078491 | Val: 0.161840 | LR: 4.94e-06
254
+ [02:59:43] P3 Ep 28/50 | Train: 0.078196 | Val: 0.162041 | LR: 4.66e-06
255
+ [03:00:28] P3 Ep 29/50 | Train: 0.077853 | Val: 0.162280 | LR: 4.38e-06
256
+ [03:01:14] P3 Ep 30/50 | Train: 0.078080 | Val: 0.162482 | LR: 4.11e-06
257
+ [03:02:00] P3 Ep 31/50 | Train: 0.077797 | Val: 0.162570 | LR: 3.84e-06
258
+ [03:02:45] P3 Ep 32/50 | Train: 0.077377 | Val: 0.162619 | LR: 3.58e-06
259
+ [03:03:30] P3 Ep 33/50 | Train: 0.077283 | Val: 0.163112 | LR: 3.33e-06
260
+ [03:04:16] P3 Ep 34/50 | Train: 0.077065 | Val: 0.162946 | LR: 3.09e-06
261
+ [03:05:01] P3 Ep 35/50 | Train: 0.077059 | Val: 0.162907 | LR: 2.85e-06
262
+ [03:05:47] P3 Ep 36/50 | Train: 0.076751 | Val: 0.162916 | LR: 2.63e-06
263
+ [03:06:34] P3 Ep 37/50 | Train: 0.076734 | Val: 0.162747 | LR: 2.42e-06
264
+ [03:07:19] P3 Ep 38/50 | Train: 0.076768 | Val: 0.163021 | LR: 2.22e-06
265
+ [03:08:04] P3 Ep 39/50 | Train: 0.076613 | Val: 0.162848 | LR: 2.03e-06
266
+ [03:08:49] P3 Ep 40/50 | Train: 0.076496 | Val: 0.163074 | LR: 1.86e-06
267
+ [03:09:34] P3 Ep 41/50 | Train: 0.076267 | Val: 0.163270 | LR: 1.70e-06
268
+ [03:10:18] P3 Ep 42/50 | Train: 0.076485 | Val: 0.163313 | LR: 1.56e-06
269
+ [03:11:05] P3 Ep 43/50 | Train: 0.076129 | Val: 0.163309 | LR: 1.43e-06
270
+ [03:11:50] P3 Ep 44/50 | Train: 0.076036 | Val: 0.163479 | LR: 1.32e-06
271
+ [03:12:35] P3 Ep 45/50 | Train: 0.076064 | Val: 0.163314 | LR: 1.22e-06
272
+ [03:13:22] P3 Ep 46/50 | Train: 0.076116 | Val: 0.163564 | LR: 1.14e-06
273
+ [03:14:08] P3 Ep 47/50 | Train: 0.075992 | Val: 0.163542 | LR: 1.08e-06
274
+ [03:14:53] P3 Ep 48/50 | Train: 0.075949 | Val: 0.163568 | LR: 1.04e-06
275
+ [03:15:38] P3 Ep 49/50 | Train: 0.075827 | Val: 0.163623 | LR: 1.01e-06
276
+ [03:16:24] P3 Ep 50/50 | Train: 0.075700 | Val: 0.163677 | LR: 1.00e-06
277
+ [03:16:24] Training complete.