---
kind: concept
slug: tabular-foundation-model
title: Tabular foundation model
summary: >-
  A tabular foundation model is pretrained on synthetic tables and used as a frozen regressor on a new table, with no training step. Forecasting can use it by turning time into table features. One card so far: about 11M parameters, competitive zero-shot forecasts, strongest with known-future covariates, no trend extrapolation, and much slower per series than the compared baselines.
tags: [tabular, foundation-model, zero-shot, forecasting, in-context-learning]
papers: ["2501.02945"]
related: [time-series-forecasting, foundation-model, in-context-learning, zero-shot-learning, transfer-learning]
status: draft
updated_at: 2026-10-19
---

## Overview

A tabular foundation model is a network that was pretrained on many synthetic
tables. Given a new table, it reads the labelled rows as context and predicts
the unlabelled rows in one forward pass, with no gradient step on the new data
[arxiv:2501.02945 §2] [arxiv:2501.02945 §3.2].

The invariant the variants share is that the pretrained weights stay as they
were released. The work is in turning the task into a table. The one card on
this page does this for time series: each future or past time step becomes a
row of features, and the observed values become the targets [arxiv:2501.02945
§3.1].

## Variants

### Time features with a pretrained regressor

Each row holds a running index, cyclic calendar features, a few automatically
found seasonal periods, and any covariates whose future values are known. The
width is 18 + 2k + D_z, where k is the number of seasonal periods and D_z the
number of covariates [arxiv:2501.02945 §3.1]. The backbone is TabPFN-v2, an
11M-parameter model that was not pretrained on time series [arxiv:2501.02945
§1] [arxiv:2501.02945 §3.2]. Card: [From Tables to Time: Extending TabPFN-v2 to Time Series Forecasting](/papers/2501.02945).

The same formulation handles univariate series and covariate-informed series.
Lagged and autoregressive features are not used, because they need earlier
predictions [arxiv:2501.02945 §3.1].

## When to use which

| Situation | Use | Why |
|---|---|---|
| Future values of the covariates are known (holidays, scheduled prices) | This variant | Strongest overall on 28 covariate-informed fev-bench tasks, author-reported [arxiv:2501.02945 §4.2] |
| Univariate series, no known covariates, and near-zero-shot is enough | This variant, as a competitive option | Close behind the top forecasters on 97 GIFT-Eval tasks, and matches two pretrained baselines with a much smaller model [arxiv:2501.02945 §4.1] |
| Covariates are unknown in the future (weather, for example) | Another method | The method uses only known-future covariates [arxiv:2501.02945 §3.1] |
| Series whose level keeps moving past the context range | Another method, or detrend first | Trends are not extrapolated, for linear and exponential trends [arxiv:2501.02945 §5.1] [arxiv:2501.02945 §6.1] |
| Latency or throughput matters across many series | Another method, if the baselines are acceptable | About 30x the runtime of two compared baselines under the paper's assumptions; each series is a separate forward pass [arxiv:2501.02945 §6.2] |
| No time-series pretraining and no fine-tuning are wanted | This variant | The backbone is used as released, and nothing is trained [arxiv:2501.02945 §1] |

Covariates help most on pulses, ramps and random walks, and not on linear
trends, in the paper's synthetic study [arxiv:2501.02945 §5.3]. Longer context
helps up to 4096 observations; the gains level off after that [arxiv:2501.02945
app.]. Each seasonal period found adds two columns, so the paper's feature
width grows with k [arxiv:2501.02945 §3.1].

## Implementation sketch

Language-agnostic pseudocode of the common core. The variant-specific parts are
the feature blocks and the choice of point estimate.

```pseudocode
# Forecast H steps of one series with a frozen tabular regressor
# [arxiv:2501.02945 §3.1] [arxiv:2501.02945 §3.2]
# Input:  y_hist (C,) observed values; t_all (C+H,) timestamps
#         cov_all (C+H, D_z) known-future covariates, or None
# Output: point forecast (H,), quantile bands (H, Q)

def forecast(y_hist, t_all, cov_all, k, quantiles):
    # One row per time step; index, calendar, seasonal, covariates [§3.1]
    X = stack_features(t_all, y_hist, k, cov_all)
    # First C rows are the context, last H rows are the queries [§3.2]
    X_train, X_test = X[:C], X[C:]
    y_train = y_hist
    # Pretrained regressor; no fitting on the new series [§1] [§3.2]
    dist = tabular_regressor(X_train, y_train, X_test)
    # Mean for squared error, median for absolute error [§3.2]
    point = dist.mean()
    # Quantiles for bands and probabilistic metrics [§3.2]
    bands = dist.quantiles(quantiles)
    return point, bands
```

## Contradictions

None known. Only one card lists this concept. The paper reports its results in
figures, and the card records where the released code differs from the paper,
for example in the number of seasonal periods and the point estimate used by
default. Those differences are about the code, not about conflicting results,
and they are listed on the card's Paper vs code section.

## Papers

- [From Tables to Time: Extending TabPFN-v2 to Time Series Forecasting](/papers/2501.02945): casts forecasting as tabular regression with a pretrained TabPFN-v2 backbone, and reports zero-shot results on GIFT-Eval and fev-bench (author-reported).
