Gaze-LIPE / docs /GATED_FUSION_PLAN.md
thanhhuyvan's picture
Initial release of LIPE V2 GOLD
a10ba7f
|
Raw
History Blame Contribute Delete
1.98 kB
# LEAN & MEAN PLAN: DYNAMIC GATED FUSION & SMOOTH FOCAL LOSS
## 1. Triết lý (Philosophy)
Thay vì thêm các lớp xử lý ảnh phức tạp, chúng ta tập trung vào việc tối ưu hóa cách model **kết hợp thông tin** (Fusion) và cách **trọng số hóa lỗi** (Loss Weighting). Mục tiêu là cô lập vấn đề gốc rễ khiến MAE của p08 bị kẹt.
## 2. Thay đổi cốt lõi (Core Changes)
### A. Dynamic Gated Fusion (Thay thế Concat/Shuffle)
Cơ chế này cho phép model tự học cách điều tiết dòng thông tin:
1. **Input:** Đặc trưng Ảnh (App) và đặc trưng Hình học (Geo).
2. **Gate:** `gate = sigmoid(Linear(App + Geo))`.
3. **Output:** `fused = gate * App + (1 - gate) * Geo`.
* **Mục tiêu:** Ép model phải sử dụng đặc trưng Ảnh (mí mắt, con ngươi) khi thông tin Hình học (landmarks) không đủ độ tin cậy hoặc bị anatomical bias (như p08).
### B. Smooth Focal Weighting (Thay thế Step Focal)
Thay thế hàm bước `torch.where` bằng hàm Sigmoid liên tục để ổn định Gradient:
* **Công thức:** `weight = 1.0 + gamma * sigmoid(error - tau)`.
* **Lợi ích:** Tránh hiện tượng "giật" gradient khi lỗi dao động quanh ngưỡng 4.2°, giúp quá trình hội tụ mượt mà và sâu hơn.
## 3. Cấu hình Thử nghiệm (Experiment Setup)
* **Model:** `LIPEV2StudentGated` (Cấu trúc tối giản, quay lại dùng GAP duy nhất để cô lập hiệu quả của Gate).
* **Participants:** `p08`, `p09`.
* **Learning Rate:** `5e-5`.
* **Epochs:** `75`.
* **CPU Optimization:** `num_workers=8`.
## 4. Kịch bản thực thi (Execution Roadmap)
1. Tạo file demo `src/train_gated_fusion_demo.py`.
2. Triển khai lớp `GatedFusion`.
3. Cập nhật hàm `GazeDistillationLoss` với cơ chế Smooth Weighting.
4. Chạy thử nghiệm cho `p08``p09` để so sánh trực tiếp với Hybrid V3.