# Phase-1 multi-surface model configuration: Fraud Pattern. # # Built on the same encoder + projector + LFM2.5-350M frozen + LoRA # recipe as dispute and collections. Differences: # - probability head: FraudPatternHead (two independent categoricals # emitting 5-class stage + 4-class type from a shared pooled rep). # - encoder: enables 5 Fraud-specific markers at the flagged position # (probe_cluster, post_attack, novel_device, signature_clean, # recent_authorize) — lesson 2 / cross-position signals readable # from the input. # - stage_class_weights up-weight the rare bands (PROBING, # MONETIZATION, EXFILTRATION) since the broad corpus is dominated # by PRE_ATTACK and DORMANT. # # LM head NOT trained (lesson 4: 350M generation is anti-pattern). architecture: surface: fraud_pattern sequence_length: 64 text_max_length: 256 reasoning_max_length: 128 encoder: d_feat: 32 d_encoder: 256 mlp_hidden: 384 enable_fraud_markers: true projector: hidden: null use_layernorm: true backbone: hf_path: LiquidAI/LFM2.5-350M-Base dtype: bfloat16 lora: enabled: true r: 16 alpha: 32 dropout: 0.05 target_modules: - q_proj - k_proj - v_proj - out_proj - lm_head heads: probability: type: fraud_pattern name: fraud_pattern num_stages: 5 num_types: 4 mlp_hidden: 256 dropout: 0.1 num_tx_positions: 64 # Stage class weights: up-weight the rare bands. PRE_ATTACK and # DORMANT are the natural-distribution majority; PROBING / # MONETIZATION / EXFILTRATION are the headline attack signals. # Per-class weights tuned from the v1_targeted distribution. stage_class_weights: [1.0, 2.0, 4.0, 2.0, 1.5] # Type class weights: SCAM_REDIRECTED and DECLINED_LEGIT are rarer # than VICTIM_FRAUD and ACCOUNT_TAKEOVER. type_class_weights: [1.0, 1.0, 2.5, 2.0] attribution: name: fraud_pattern_attribution mlp_hidden: 64 dropout: 0.1 num_tx_positions: 64 # Attribution density is low (~4% mean per audit) because the # attribution highlights specific cluster positions. Higher # pos_weight than collections. pos_weight: 8.0