poolcoach / scripts /experiments /run_experiments_20260720.bat
masterdanh's picture
deploy: snapshot for HF Space
78738de
Raw
History Blame Contribute Delete
3.64 kB
@echo off
REM ============================================================
REM PoolCoach - Thi nghiem 20/07/2026 toi (double-click de chay)
REM
REM Dataset 10k (seed 124) da sanity PASS: Q xb2 0.874 (~2k: 0.877),
REM b2_lucky 44.6%%, ~87 combo/ban, 12/10000 ban 0-pot, co luu combos.
REM
REM Phase 1: Relabel canonical + sweep pocket-margin {0.05,0.10,0.15}
REM + ban --limit 2000 (tach hieu ung N vs label rule)
REM Phase 2: BC train tren tung ban relabel
REM -> nhin val MSE per-component co THOAT variance baseline khong
REM Phase 3: Eval 1000 cu tung model
REM -> GATE G1: Q|pot > 0.65 va pot >= 10%%
REM Phase 4: Eval 1000 cu 2 model BC v1 (bang FAIL chinh thuc cho luan van)
REM
REM Uoc luong: relabel ~giay; moi BC train ~vai phut; moi eval 1000 ~2-4 phut.
REM ============================================================
if "%~1"=="_go" goto :inner
cmd /k "%~f0" _go
exit /b
:inner
set "VENV=D:\Khoa luan\poolcoach-env\Scripts\activate.bat"
set "REPO=D:\Khoa luan\poolcoach-rl"
set "DS=data\bc_dataset_10000_124.npz"
if not exist "%VENV%" (
echo [loi] Khong tim thay venv: "%VENV%"
goto :eof
)
call "%VENV%"
cd /d "%REPO%"
echo.
echo ===== Phase 1: Relabel (5 ban) =====
python scripts\relabel_bc_dataset.py %DS%
python scripts\relabel_bc_dataset.py %DS% --pocket-margin 0.05
python scripts\relabel_bc_dataset.py %DS% --pocket-margin 0.10
python scripts\relabel_bc_dataset.py %DS% --pocket-margin 0.15
python scripts\relabel_bc_dataset.py %DS% --limit 2000
echo.
echo ===== Phase 2: BC train (5 run) =====
python scripts\train_bc.py --dataset data\bc_dataset_10000_124_canon.npz --run-name bc_canon_20260720
python scripts\train_bc.py --dataset data\bc_dataset_10000_124_canon_p0.05.npz --run-name bc_canon_p005_20260720
python scripts\train_bc.py --dataset data\bc_dataset_10000_124_canon_p0.1.npz --run-name bc_canon_p010_20260720
python scripts\train_bc.py --dataset data\bc_dataset_10000_124_canon_p0.15.npz --run-name bc_canon_p015_20260720
python scripts\train_bc.py --dataset data\bc_dataset_10000_124_canon_n2000.npz --run-name bc_canon_n2000_20260720
echo.
echo ===== Phase 3: Eval 1000 cu (gate G1: Q^|pot ^> 0.65, pot ^>= 10%%) =====
python scripts\eval_position.py models\bc_canon_20260720\bc_model.zip --episodes 1000 --aim-mode any
python scripts\eval_position.py models\bc_canon_p005_20260720\bc_model.zip --episodes 1000 --aim-mode any
python scripts\eval_position.py models\bc_canon_p010_20260720\bc_model.zip --episodes 1000 --aim-mode any
python scripts\eval_position.py models\bc_canon_p015_20260720\bc_model.zip --episodes 1000 --aim-mode any
python scripts\eval_position.py models\bc_canon_n2000_20260720\bc_model.zip --episodes 1000 --aim-mode any
echo.
echo ===== Phase 4: Moc FAIL BC v1 cho bang luan van (eval 1000) =====
python scripts\eval_position.py models\bc_b2_20260720_023456\bc_model.zip --episodes 1000 --aim-mode any
python scripts\eval_position.py models\bc_xb2_20260720_023456\bc_model.zip --episodes 1000 --aim-mode any
echo.
echo ============================================================
echo XONG. Doc ket qua theo thu tu:
echo 1. Phase 1: %% ban giu lai theo pocket-margin (retention vs sach)
echo 2. Phase 2: val MSE per-component - THOAT variance baseline chua?
echo (train_bc tu canh bao neu ^>=2 component van dinh baseline)
echo 3. Phase 3: GATE G1 = Q^|pot ^> 0.65 va pot ^>= 10%%
echo - PASS -^> chot label rule, sang buoc fine-tune PPO --init-from
echo - FAIL -^> v3: pocket-id conditioning / classification head
echo ============================================================