Delete config/rl_v6f_t75.yaml
Browse files- 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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|