final_test / config /default.yaml
Abdelrahman Almatrooshi
Deploy snapshot from main b7a59b11809483dfc959f196f1930240f2662c49
22a6915
# FocusGuard app and model config. Override with FOCUSGUARD_CONFIG env path if needed.
app:
db_path: "focus_guard.db"
inference_size: [640, 480]
inference_workers: 4
default_model: "mlp"
calibration_verify_target: [0.5, 0.5]
no_face_confidence_cap: 0.1
l2cs_boost:
base_weight: 0.35
l2cs_weight: 0.65
veto_threshold: 0.38
fused_threshold: 0.52
mlp:
model_name: "face_orientation"
epochs: 30
batch_size: 32
lr: 0.001
seed: 42
split_ratios: [0.7, 0.15, 0.15]
hidden_sizes: [64, 32]
xgboost:
n_estimators: 600
max_depth: 8
learning_rate: 0.1489
subsample: 0.9625
colsample_bytree: 0.9013
reg_alpha: 1.1407
reg_lambda: 2.4181
eval_metric: "logloss"
data:
split_ratios: [0.7, 0.15, 0.15]
clip:
yaw: [-45, 45]
pitch: [-30, 30]
roll: [-30, 30]
ear: [0, 0.85]
mar: [0, 1.0]
gaze_offset: [0, 0.50]
perclos: [0, 0.80]
blink_rate: [0, 30.0]
closure_duration: [0, 10.0]
yawn_duration: [0, 10.0]
pipeline:
geometric:
max_angle: 22.0
alpha: 0.7
beta: 0.3
threshold: 0.55
smoother:
alpha_up: 0.55
alpha_down: 0.45
grace_frames: 10
hybrid_defaults:
w_mlp: 0.3
w_geo: 0.7
threshold: 0.35
geo_face_weight: 0.7
geo_eye_weight: 0.3
mlp_threshold: 0.23
xgboost_threshold: 0.28
evaluation:
seed: 42
mlp_sklearn:
hidden_layer_sizes: [64, 32]
max_iter: 200
validation_fraction: 0.15
geo_weights:
face: 0.7
eye: 0.3
threshold_search:
alphas: [0.2, 0.85]
w_mlps: [0.3, 0.85]