Skip to main content

Module infer

Module infer 

Source
Expand description

TabICL v2 inference engine — classification only, single pass (no ensembling), no >10-class mixed-radix/hierarchical path. Architecture: three stacked transformers —

  1. Column embedding: each (grouped) feature column is embedded independently by a shared 3-block Set Transformer (InducedSelfAttentionBlock: learned inducing points cross-attend to the training rows only, then the full column cross-attends back to the refined inducing points — O(n) instead of O(n²)), with the training targets folded in beforehand (“target-aware”) and a learned query-aware elementwise attention scale (“SSMax”) on the first attention stage only.
  2. Row interaction: per row, the H (grouped) feature-column embeddings plus 4 learned CLS tokens attend to each other (non-interleaved RoPE over the H+4 position index); the final block reads out via CLS-tokens-as-query cross-attention, concatenated into one embed_dim * 4 row representation.
  3. In-context learning: training targets are folded into their rows’ representations, then a 12-block transformer (SSMax on every block) lets query rows attend to training rows only, followed by a 2-layer decoder head.

Regression (quantile_dist.py’s monotonic quantile-distribution head) and the >10-class mixed-radix/hierarchical classification path are out of scope — see the crate’s Cargo.toml description.

Structs§

TabIclModel