File size: 2,223 Bytes
0ab2566 | 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 | # ================================================================
# PMPS 分析实验配置 (GPT-2, GSM8K)
# 用于 extract_latent_states.py --extract_pmps
# ================================================================
#
# 需要填写的参数只有 ckpt_dir,其余参数必须和训练时保持一致,
# 否则模型权重会加载失败或结构不匹配。
#
# 判断依据:如果训练时某参数改变了模型结构(如 num_latent, prj_dim,
# pmps_nmb_prototypes),那分析时必须用相同值。
# ==================== 必填:模型和 Checkpoint ====================
model_name_or_path: /data/oss_bucket_0/liqi/models/gpt2 # 基座模型路径
ckpt_dir: /data/oss_bucket_0/liqi/codi_pmps/k24_t0.1_mt0.1_fac0.5_l6_lr3e3_btz256/outputs/checkpoint-58000/ # 例: /data/.../checkpoint-15000
# ==================== 必须和训练一致的参数 ====================
# --- LoRA 结构 ---
lora_r: 128
lora_alpha: 32
lora_init: True
use_lora: True
# --- Latent 结构 ---
num_latent: 6 # 训练时用了几个 latent token
use_prj: True # 是否用 projection layer
prj_dim: 768 # projection hidden dim(GPT-2 用 768)
# --- PMPS/PMPS 结构(决定了 pmps_module 的权重形状)---
pmps_loss_factor: 0.5 # > 0 表示有 pmps_module,分析时会提取 PMPS 内部状态
pmps_nmb_prototypes: 24 # prototype 数量 K
pmps_feat_dim: 128 # 投影特征维度 d
pmps_hidden_mlp: 512 # 投影 MLP 隐藏维度
pmps_use_projector: True # 是否使用投影头
# --- PMPS 超参(不影响结构,但 forward 计算需要)---
pmps_temperature: 0.1
pmps_match_temperature: 0.3
pmps_epsilon: 0.05
pmps_sinkhorn_iterations: 3
pmps_layer: last
# --- PSA(不影响结构,分析时不使用)---
pmps_position_bias_max: 6.0
pmps_position_bias_schedule: cosine
# --- Top-K Embedding ---
enable_top_k: False
latent_top_k: 0
latent_top_k_temperature: 1.0
# --- 其他训练时的配置 ---
remove_eos: True
diversity_loss_factor: 0.0
# ==================== 分析时无关但 parser 需要的参数 ====================
data_name: gsm8k # 决定加载哪个测试集
model_max_length: 512
bf16: True
|