Gabriel166 commited on
Commit
e6a2478
·
verified ·
1 Parent(s): 0c44601

Delete config/rl_v6f_t75.yaml

Browse files
Files changed (1) hide show
  1. config/rl_v6f_t75.yaml +0 -179
config/rl_v6f_t75.yaml DELETED
@@ -1,179 +0,0 @@
1
- # ===== 跑5 (v6f): 基于跑4(v6e) events.jsonl 实测动态调参 =====
2
- # 与跑2/3/4 相比只改 4 项, reward preset / group_size / batch / nft_beta /
3
- # reference_weight / z_clip / seed / shuffle_seed 一律不动。
4
- #
5
- # 1) lr 1e-4 -> 2e-4
6
- # 依据: v6e 全程 grad_norm 0.058-0.086, 而 grad_clip_norm=1.0 -- 比阈值小
7
- # 一个数量级, 裁剪一次都没触发。翻倍后预期 ~0.12-0.17, 仍远低于 1.0。
8
- # 2) lr_min_ratio 0.1 -> 0.3
9
- # 依据: v6e 末段 lr 已衰到 1e-5, 但 batch/good_rate 在 230-263 段达到全程
10
- # 最高 0.4744, reward_mean 仍在 0.52 高位 -- 训练是被 lr 掐死的, 不是收敛的。
11
- # 0.3 让 lr 底线抬到 6e-5。
12
- # 3) epochs 2 -> 3, max_outer_steps / lr_total_steps 263 -> 395
13
- # 依据: reward_mean 分段 0.4231->0.5233 单调上行未饱和, advantage 未退化。
14
- # 4) validation.keep_runs 3 -> 4
15
- # 依据: v6e 曲线真峰值在 step130 (GDT 0.376947), 但 top3 预算把它挤掉了,
16
- # 峰值权重不存在、无法评测。
17
- # ============================================================
18
- data:
19
- pool_manifest: artifacts/evaluation_pools/train_final_v4.pt
20
- ride_checkpoint: saved_models/checkpoint.h5
21
- processed_data: ../data/processed.pt
22
- split_file: ../data/das_split.pt
23
- condition_noise_scale: 0.0
24
- condition_snapshot_enabled: false
25
- x0_representation: one_hot_01
26
- ride_model:
27
- node_in_dim:
28
- - 15
29
- - 4
30
- node_h_dim:
31
- - 256
32
- - 24
33
- edge_in_dim:
34
- - 131
35
- - 3
36
- edge_h_dim:
37
- - 128
38
- - 4
39
- num_layers: 5
40
- drop_rate: 0.5
41
- out_dim: 4
42
- time_cond: true
43
- noise_schedule:
44
- schedule: linear
45
- continuous_beta_0: 0.1
46
- continuous_beta_1: 20.0
47
- eps: 0.001
48
- rollout:
49
- group_size: 8
50
- sampler:
51
- name: x0_renoise
52
- n_steps: 50
53
- version: v1
54
- temperature:
55
- initial: 1.0
56
- min: 0.2
57
- max: 1.5
58
- step: 0.1
59
- rescue:
60
- max_rounds: 1
61
- min_unique_sequences: 2
62
- min_valid_sequences: 2
63
- reward:
64
- oracle:
65
- backend: local_jsonl_worker
66
- python: ${RHOFOLD_PYTHON:-python}
67
- worker_script: scripts/rhofold_oracle_worker.py
68
- ckpt: ${RHOFOLD_CHECKPOINT:-artifacts/models/rhofold/RhoFold_pretrained.pt}
69
- output_dir: outputs/rl_v6f/oracle
70
- timeout_sec: 600
71
- device: cuda:0
72
- fake: false
73
- metric_cache:
74
- dir: ${RIDE_RL_CACHE:-cache/rl_metrics}
75
- metric_version: ride_evaluator_v2_geo6
76
- alignment_config: c4p_kabsch_centered
77
- composer:
78
- # === A/B 实验的唯一变量 ===
79
- # A 组: balanced_cosine_v1 = 三分量加权算术平均
80
- # B 组: geometric_v3 = 六分量加权几何平均, 权重由
81
- # scripts/reward/reward_design_v3.py 在 1224 条真实候选上求解得到
82
- # (gdt .25 / tm .30 / rmsd .30 / scmcc .05 / edefect .05 / composition .05)
83
- # alignment 0.9608 (门槛 0.70), discrimination 1.2061 (门槛 1.20, 唯一紧约束)
84
- # good 门槛由 preset 内部的 threshold_position=0.60 推出, 不再从这里读,
85
- # 保留字段只为与 A 组配置结构完全对齐。
86
- preset: geometric_v3
87
- good:
88
- gdt_ts: 0.5
89
- tm_score: 0.5
90
- rmsd: 4.0
91
- advantage:
92
- group_normalize: true
93
- z_clip: 2.0
94
- scale:
95
- kind: ema
96
- decay: 0.95
97
- epsilon: 1.0e-06
98
- min_valid: 2
99
- trainer:
100
- loss:
101
- nft_beta: 0.1
102
- reference_weight: 0.02
103
- k_t: 8
104
- weighting: uniform_eps
105
- residual_normalization: none
106
- divide_by_beta: true
107
- optim:
108
- lr: 0.0002
109
- weight_decay: 0.0
110
- grad_clip_norm: 1.0
111
- gradient_accumulation_steps: 1
112
- amp: false
113
- microbatch_size: 1
114
- lr_schedule: warmup_cosine
115
- lr_warmup_ratio: 0.05
116
- lr_min_ratio: 0.3
117
- lr_total_steps: 395
118
- ema:
119
- decay_max: 0.999
120
- update_interval: 1
121
- runtime:
122
- seed: 0
123
- device: cuda
124
- mode: train
125
- ranks_per_target: 1
126
- # 527 unique targets * 3 passes / 4 per batch = 395 updates (1581 // 4).
127
- # engine.py: total_steps = len(targets) // batch_targets, so max_outer_steps
128
- # must equal that or the walk clamps it.
129
- epochs: 3
130
- shuffle_targets: true
131
- shuffle_seed: 20260826
132
- budget:
133
- max_outer_steps: 395
134
- max_oracle_calls: 200000
135
- max_wall_hours: 72.0
136
- checkpoint_every_oracle_calls: 128
137
- validation:
138
- enabled: true
139
- # Held-out 153, disjoint from the 527 training pool (verified zero sequence overlap).
140
- pool_manifest: artifacts/evaluation_pools/test_final_v3_std.pt
141
- config: configs/diffv3_te0.yaml
142
- # t75 only has 4 usable cards (PCI 3E:00.0 / 3F:00.0 are disabled -- they drop
143
- # the driver under load), so validation shares them with training instead of
144
- # getting spare cards of its own. This is safe here because the worker is
145
- # fully detached (start_new_session, torchrun env stripped) and never joins the
146
- # process group: the earlier stall came from a mismatched barrier on the
147
- # critical path, not from co-residency. Memory fits -- RhoFold+ peaks under
148
- # 11 GiB and training holds roughly 10 GiB of a 24 GiB 3090.
149
- # 4 shards over 4 cards keeps every card busy during the fold phase.
150
- devices: "cuda:0,cuda:1,cuda:2,cuda:3"
151
- test_freq: 10
152
- # 4 instead of 3: v6e 的真峰值在 step130, 按 top-2+latest 的 top3 预算被挤掉。
153
- keep_runs: 4
154
- before_train: true
155
- n_samples: 8
156
- timeout_sec: 7200.0
157
- usalign_binary: ../third_party/USalign/USalign
158
- logging:
159
- jsonl: outputs/rl_v6f/train.jsonl
160
- wandb:
161
- enabled: true
162
- project: ride-rl
163
- entity: gabriel166714-fudan-university
164
- name: v6f-t75-geometric-v3-lr2e4-min03-3ep-395step
165
- tags:
166
- - v6
167
- - 4gpu
168
- - ddp
169
- - batch4
170
- - grpo
171
- - geometric_v3
172
- - train527
173
- - test153
174
- checkpoint:
175
- dir: outputs/rl_v6f/checkpoints
176
- save_latest: true
177
- evaluation:
178
- deterministic_anchor_temperature: 0.0
179
- group_size: 2