IV. Training Objective, Optimization Strategy & Learning Constraints
Section นี้อธิบายว่า โมเดลใน Section 3 จะถูก "ฝึก (train)" อย่างไร ภายใต้ข้อจำกัดเชิงเวลา ความไม่สมดุลของเหตุการณ์ และความเสี่ยงของข้อมูลรั่ว พร้อมกำหนดวัตถุประสงค์ทางสถิติที่ชัดเจนและตรวจสอบได้
เป้าหมายของ Section คือ
- นิยาม objective function อย่างเป็นทางการ
- อธิบาย วิธีป้องกัน leakage ในระดับ pipeline
- จัดการ class imbalance และ sparsity ของ outcome
- อธิบาย regularization เพื่อความทนทาน (robustness)
- กำหนด regime-aware training framework
4.1 Learning Setting — Time-Consistent Supervised Learning
ให้ sequence ของสินทรัพย์ $a$ ณ เวลาประเมิน $t$:
และนิยาม outcome event (Section 1)
เป้าหมายคือการประมาณ
โดย ใช้เฉพาะข้อมูลที่เกิดก่อน $t$
โครงสร้างนี้คือ causal-valid learning setting ต่างจาก forecasting แบบ time-agnostic
4.2 Time-Based Dataset Splitting (No Random Shuffle)
เพื่อหลีกเลี่ยง leakage การแบ่งชุดข้อมูลทำแบบ
เชิงเวลาเท่านั้น:
ห้ามใช้ random split เนื่องจาก
- เหตุการณ์อนาคตอาจไปปรากฏใน training indirectly
- macro-regime patterns อาจรั่วเข้ามา
หลักการบังคับใช้ใน pipeline
- sequence builder จำกัดเหตุการณ์ ≤ cutoff time
- label builder อ้างอิงเฉพาะอนาคตหลัง cutoff
- model loader ตรวจสอบ time-consistency
4.3 Training Objective Function
ให้ representation สุดท้ายของ sequence คือ $u_t^a$
ฟังก์ชันประมาณความน่าจะเป็น:
นิยาม cross-entropy loss
4.4 Class Imbalance & Event-Sparsity Handling
เนื่องจาก outcome event มักเกิดไม่บ่อย เรากำหนด weighted loss
โดย
- $\omega_k \propto 1/\text{freq}(k)$
- หรือใช้ focal loss เพื่อเน้นตัวอย่างยาก
เหตุผลเชิงวิจัย: เป้าหมายไม่ใช่ balance class เทียม แต่ป้องกันไม่ให้โมเดล "เพิกเฉยต่อเหตุการณ์หายากที่สำคัญ"
4.5 Regularization for Robust Pattern Learning
เพื่อหลีกเลี่ยง over-fitting กับ noise ระยะสั้น เราเพิ่มองค์ประกอบ regularization
(1) Feature-Gating Sparsity
ช่วยบังคับให้ representation คัดเลือก feature ที่จำเป็นเท่านั้น
(2) Token Dropout / Event Masking
ในระดับ sequence
ผลเชิงความหมาย:
- โมเดลต้องเรียนรู้ pattern ที่ ไม่พึ่ง token ตัวเดียว
- เพิ่มความทนทานต่อ missing signals
(3) Temporal Smoothing Penalty
ในกรณี representation แกว่งแรงผิดปกติ
สื่อว่า pattern ควรค่อย ๆ ก่อตัว ไม่ใช่เปลี่ยนโดยไร้เหตุผลตาม noise เดี่ยว
(4) Total Objective
4.6 Macro-Aware Training as Context, Not Filter
สำคัญมาก: regime ไม่ได้ใช้เพื่อ "แยกโมเดล" แต่ใช้เป็น บริบทในลำดับเดียว
ดังนั้น
แต่ representation $u_t^a$ ถูก conditioned บน macro tokens ใน sequence
ทำให้สามารถทดสอบภายหลังได้ว่า
- pattern ใด คงอยู่ข้ามยุค
- pattern ใด เฉพาะบางยุค
โดยไม่สูญเสียข้อมูล
4.7 Leakage Prevention — Formal Checklist
โมเดลถือว่า ไม่ valid หากเกิดกรณีใดกรณีหนึ่ง:
- เหตุการณ์อนาคตแทรกใน sequence
- macro-event นิยามจาก hindsight
- price-derived feature ใช้อนาคตโดยอ้อม
- validation/test มีข้อมูลจาก train regime เดียวกันแบบ overlap
เรากำหนดฟังก์ชันตรวจสอบ
ใช้ใน pipeline ก่อนทุกการ train
4.8 Training as Representation Learning — Not Trading System
จุดยืนทางวิจัย: วัตถุประสงค์ของการเรียนรู้ คือ representation สำหรับตรวจสอบ pattern ไม่ใช่การ optimize performance เพื่อใช้ซื้อขาย
ดังนั้น การตีความผลลัพธ์จะอยู่ในกรอบ:
- ความคงตัวของ representation ข้ามยุค
- ความสัมพันธ์เชิง sequence ต่อ outcome
- ไม่ใช่อัตราผลตอบแทนทางเศรษฐกิจโดยตรง
4.9 Implementation View — ทีม Dev สามารถทำตามขั้นตอนนี้
Training Pipeline
build causal sequence
→ encode tokens
→ transformer sequence encoder
→ attention pooling
→ output head
→ weighted/focal loss
→ add sparsity + temporal penalties
→ optimize
Validation Loop (time aware)
- fixed forward-rolling windows
- prohibit look-ahead
- explicit macro-context in sequence
4.10 Connection to Next Section
Section นี้กำหนด:
- วัตถุประสงค์การเรียนรู้
- ข้อจำกัดเชิงเวลา
- การจัดการความไม่สมดุล
- บทบาท macro ใน training
Section ถัดไปจะไปยัง: Regime-Conditioned Analysis & Post-Training Diagnostics (การวิเคราะห์ pattern หลังฝึก, per-era behavior, explainability)