pytyche.bcf.gfr

GPU GFR warm-start (Greedy/Grow-From-Root Forest Refinement) for the GPU BCF.

GFR grows entire trees top-down in one pass per tree per sweep, sampling splits proportional to marginal likelihood (He & Hahn 2021, XBART). This gives much better initial tree structures than cold-start from stumps and is JAX-jit’d for GPU execution.

Architecture

_gfr_grow_tree() — grow one tree from root (level-by-level BFS) _gfr_sweep_forest() — one backfitting pass over all trees in a forest _gfr_warmstart() — multiple GFR sweeps, vmapped over chains

Import graph

This module imports the GPU primitives _fused_scatter_add and _hurdle_evaluate_dual_forest from pytyche.bcf.kernels, and the log-marginal helper _log_marginal_leaves plus per-leaf sufficient statistics _hurdle_sufficient_stats from pytyche.bcf.lml. The orchestrator imports FROM here (specifically _gfr_warmstart); nothing in this module imports back from the orchestrator.