{
  "@context": "https://schema.org",
  "@id": "https://aggr.aymericbeaumet.com/items/huggingface-co/2026-09-29-nvidia-kumo-tabular-sets-a-new-accuracy-efficiency-frontier/#webpage",
  "@type": [
    "WebPage",
    "ArchiveComponent"
  ],
  "articleBody": "## Highlights (TL;DR)\n\nNVIDIA Kumo Tabular, part of the NVIDIA Kumo Structured model collection, is an open foundation model for tabular data now available on [Hugging Face](https://huggingface.co/nvidia/Kumo-Tabular). Given a table of labeled rows, it predicts the labels of new rows in a single forward pass, with no training, no tuning, and no feature engineering, for both classification and regression. It was pretrained only on artificial data, comes in three sizes (28M to 215M parameters), runs through our [open-source library](https://github.com/NVIDIA/structured-data-models), and is released under the [OpenMDW-1.1 license](https://openmdw.ai/license/1-1/) for commercial use. It ranks first on the four benchmarks [TabArena](https://github.com/autogluon/tabarena), [BeyondArena](https://github.com/autogluon/tabarena), [TALENT](https://github.com/LAMDA-Tabular/TALENT) and [ScoringBench](https://github.com/jonaslandsgesell/ScoringBench).\n\n- **Model Code:** [https://github.com/NVIDIA/structured-data-models](https://github.com/NVIDIA/structured-data-models)\n- **Model Weights:** [https://huggingface.co/nvidia/Kumo-Tabular](https://huggingface.co/nvidia/Kumo-Tabular)\n\n## The Shift to Tabular Foundation Models\n\nTabular data is the backbone of enterprise machine learning. Customer records, transactions, sensor logs, claims, and orders all live in tables, and predicting churn, default, demand, or price from them is among the most common machine learning tasks in industry. For two decades, this work has been done with gradient-boosted trees, and it has worked well. But the lifecycle around those models has barely changed. Every new question means collecting labels, engineering features, searching hyperparameters, validating, and deploying a model that knows nothing about tables in general and learns each task from scratch.\n\nLarge Language Models showed a different way of working with new tasks. Given a few examples in the prompt, a pretrained model solves the task without updating a single weight. This is *in-context learning*, and it applies to tables just as well as to text: a model pretrained on millions of tables can read a labeled table as its context and predict the labels of new rows directly.\n\nToday, we are releasing **NVIDIA Kumo Tabular** ([GitHub](https://github.com/NVIDIA/structured-data-models), [HuggingFace](https://huggingface.co/nvidia/Kumo-Tabular)), an open foundation model for tabular classification and regression. Given a table with labeled rows and the rows you want predictions for, Kumo Tabular returns class probabilities or numeric predictions in a single forward pass.\n\n## How Kumo Tabular Works\n\nKumo Tabular is a Transformer built around the structure of a table, utilizing column, row and in-context attention as introduced in [TabICL](https://github.com/soda-inria/tabicl) and [TabPFN](https://github.com/PriorLabs/tabpfn). To predict a label it has to do three things: **(1)** understand what each value means within its column, **(2)** understand how the columns of a row interact, and **(3)** relate the context rows with existing labels to the query rows with unknown labels. Kumo Tabular achieves this as follows:\n\n[![architecture](https://cdn-uploads.huggingface.co/production/uploads/684040a5de1ad7f4fcec9508/TkT695UAWJnUIyEydIYRv.png)](https://cdn-uploads.huggingface.co/production/uploads/684040a5de1ad7f4fcec9508/TkT695UAWJnUIyEydIYRv.png)\n\n**Cell Embedding:** A group of cells becomes a token. Numerical and categorical values pass through Fourier features, sines and cosines of learned frequencies, with separate weights for each type. Missing values need no imputation and are treated specially. Finally, every token in the context receives a label embedding.\n\n**Row Embedding:** We then turn each row into an embedding by alternating two kinds of attention multiple times. Column attention looks down a single column and learns what a value means in the distribution of its column, *e.g.*, whether a `42` is typical or extreme, via induced self-attention. Its cost therefore grows linearly with the number of rows. Row attention looks across the tokens of a single row and learns how features interact, with rotary positions to tell columns apart. Four learnable `[CLS]` tokens join each row and act as the final readout of a row. After this row compression, the cost of the final stage no longer depends on the number of columns.\n\n**In-context Learning:** A final Transformer operates on the row embeddings. Context rows attend to each other, while query rows attend to context rows only. Each prediction therefore depends only on the context and on the row itself, not on which other rows are scored alongside it. Because the context never looks at the queries, its keys and values are computed once and can be reused for follow-up predictions. Query rows utilize Test-GQA, which shrinks the cache that every prediction reads. A head turns each query row into class probabilities for classification and 999 quantiles for regression, from which a point prediction and an uncertainty estimate follow.\n\n**Length-aware Attention Temperature:** Softmax attention spreads out as the number of keys grows. Attention that is sharp over a few hundred rows can dissolve over tens of thousands, which is exactly the situation when a table at inference is much larger than a typical training table. Kumo Tabular therefore scales every query by a temperature that grows with the logarithm of the number of keys, with a coefficient learned separately for each attention head. The result is attention that stays sharp as tables grow longer or wider.\n\n## How Kumo Tabular was Built\n\nKumo Tabular is pretrained entirely on artificial tables. Each training table is sampled from a *Structural Causal Model (SCM)* in the six steps shown below:\n\n[![prior](https://cdn-uploads.huggingface.co/production/uploads/684040a5de1ad7f4fcec9508/ipJNJTNO5ZH2zviIdR8eo.png)](https://cdn-uploads.huggingface.co/production/uploads/684040a5de1ad7f4fcec9508/ipJNJTNO5ZH2zviIdR8eo.png)\n\nWe first draw a configuration for the whole table, from its size and task to its mechanisms and missingness. A random causal graph then links hidden variables, evaluated from root to leaf via randomly drawn functions at every node (*e.g.*, linear maps, small neural networks, trees or Gaussian processes). Some nodes become numerical or categorical columns, one becomes the target, and the rest stay hidden, like the unmeasured causes behind real data. Post-processing correlates groups of columns, clips outliers, and injects missing values, and a quick tree-ensemble check discards any table without a learnable signal. Because the generator is a procedural sampler rather than a trained model, it produces an endless supply of tables, each with a new graph and new mechanisms.\n\nReal-world tables are messy, so we built more of their imperfections into the generator. Values go missing in several patterns, some features are coarsened so that duplicate rows may disagree on their label, some categorical columns carry many levels, and regression targets can be heavy-tailed. A model that has seen millions of such tables learns to handle these imperfections without any cleanup.\n\nOn every artificial table, the model sees most of the rows with their labels as context and learns to predict the labels of the remaining rows, with a cross-entropy loss for classification and a quantile loss for regression. Classification and regression are trained as separate models. Similarly to TabICLv2, training runs in three stages. The first and longest stage uses tables of 1,024 rows and up to 100 columns and teaches the model what tables look like. The second stage varies the context from 400 to 10,240 rows, and the third extends it to 60,000 rows, still with up to 100 columns. In total, Kumo Tabular-Small/Medium/Large saw about 35/71/137 million artificial tables.\n\nOur training recipe and artificial data generators will be released soon.\n\n## Performance\n\nWe ran all three Kumo Tabular sizes with default settings against the full [TabArena](https://github.com/autogluon/tabarena) leaderboard, spanning tuned gradient-boosted trees, AutoGluon, and the latest tabular foundation models. Kumo Tabular ranks first overall with an ELO of 1950 while running 17 faster than [LimiX-2](https://github.com/limix-ldm-ai/LimiX) under a uniform single RTX 6000 Pro evaluation setup. Across all three three model sizes, Kumo Tabular establishes a new state-of-the-art on the accuracy-efficiency Pareto front:\n\n[![pareto](https://cdn-uploads.huggingface.co/production/uploads/684040a5de1ad7f4fcec9508/CpOXm3g9du6Uw3zQDh2QC.png)](https://cdn-uploads.huggingface.co/production/uploads/684040a5de1ad7f4fcec9508/CpOXm3g9du6Uw3zQDh2QC.png)\n\nWe also evaluated Kumo Tabular on [BeyondArena](https://github.com/autogluon/tabarena), [TALENT](https://github.com/LAMDA-Tabular/TALENT) and [ScoringBench](https://github.com/jonaslandsgesell/ScoringBench). On BeyondArena, Kumo Tabular reaches an ELO of 1418 with an Improvability score of 7.78%, placing first on the leaderboard. On TALENT, it achieves the top overall ranking across classification accuracy, classification log-loss, and regression RMSE, with average ranks of 6.67, 3.98, and 4.22. On ScoringBench, a benchmark for predictive distributions, Kumo Tabular-Large and Medium rank first and second on average rank.\n\n## Limitations\n\nKumo Tabular works on numerical and categorical columns only, while text, images, or timestamps can be turned into features via built-in pre-processing recipes. A single forward pass covers up to 10 classes, which the library extends to any number of classes with error-correcting output codes. Accuracy may degrade on tables far beyond the training ranges or when the query rows come from a different distribution than the context rows, so, as with any predictive model, validate accuracy and calibration on your own held-out data before deployment.\n\n## Demo\n\nKumo Tabular runs via NVIDIA's newly released GPU-native library for [`structured-data-models`](https://github.com/NVIDIA/structured-data-models). The library downloads the weights from the Hub on first use and provides the preprocessing, ensembling, and many-class handling used in our evaluations. The code below is all it takes to go from a `pandas.DataFrame` to a prediction:\n\n```python\nimport sdm  # structured-data-models\n\n# Tensorize tabular data:\ntable = sdm.TableTensor.from_pandas(pd.load_csv(...), device=\"cuda\")\nna_mask = table[\"target\"].isnan()\n\nmodel = sdm.models.KumoTabular(device=\"cuda\")\npred = model(\n    # In-context examples (features/targets):\n    x_context=table[~na_mask].drop_columns(\"target\"),\n    y_context=table[~na_mask, \"target\"],\n    # Prediction examples (features):\n    x_query=table[na_mask].drop_column(\"target\"),\n)\n```\n\n## Start Building with Kumo Tabular\n\nKumo Tabular is released under the [OpenMDW License Agreement, version 1.1](https://huggingface.co/blog/nvidia/\\(https://openmdw.ai/license/1-1/). NVIDIA believes Trustworthy AI is a shared responsibility, and we have established policies and practices to enable development for a wide array of AI applications. When downloaded or used in accordance with our terms of service, developers should work with their supporting model team to ensure this model meets requirements for the relevant industry and use case and addresses unforeseen product misuse. Please report model quality, risk, security vulnerabilities, or NVIDIA AI concerns [here](https://github.com/NVIDIA/structured-data-models/issues).\n\n- **Model Code:** [https://github.com/NVIDIA/structured-data-models](https://github.com/NVIDIA/structured-data-models)\n- **Model Weights:** [https://huggingface.co/nvidia/Kumo-Tabular](https://huggingface.co/nvidia/Kumo-Tabular)\n\n## Acknowledgements\n\nWe thank [David Holzmüller](https://dholzmueller.github.io/) for contributing significant ideas and ablations to Kumo Tabular. We thank [Vignesh Kothapalli](https://kvignesh1420.github.io/) for his help on Kumo Tabular during his internship.\n",
  "authors": [],
  "captured_at": "2026-09-29T19:40:04.433827810+00:00",
  "category": "ai",
  "content_html": "<h2>Highlights (TL;DR)</h2>\n<p>NVIDIA Kumo Tabular, part of the NVIDIA Kumo Structured model collection, is an open foundation model for tabular data now available on <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://huggingface.co/nvidia/Kumo-Tabular\">Hugging Face</a>. Given a table of labeled rows, it predicts the labels of new rows in a single forward pass, with no training, no tuning, and no feature engineering, for both classification and regression. It was pretrained only on artificial data, comes in three sizes (28M to 215M parameters), runs through our <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://github.com/NVIDIA/structured-data-models\">open-source library</a>, and is released under the <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://openmdw.ai/license/1-1/\">OpenMDW-1.1 license</a> for commercial use. It ranks first on the four benchmarks <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://github.com/autogluon/tabarena\">TabArena</a>, <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://github.com/autogluon/tabarena\">BeyondArena</a>, <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://github.com/LAMDA-Tabular/TALENT\">TALENT</a> and <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://github.com/jonaslandsgesell/ScoringBench\">ScoringBench</a>.</p>\n<ul>\n<li><strong>Model Code:</strong> <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://github.com/NVIDIA/structured-data-models\">https://github.com/NVIDIA/structured-data-models</a></li>\n<li><strong>Model Weights:</strong> <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://huggingface.co/nvidia/Kumo-Tabular\">https://huggingface.co/nvidia/Kumo-Tabular</a></li>\n</ul>\n<h2>The Shift to Tabular Foundation Models</h2>\n<p>Tabular data is the backbone of enterprise machine learning. Customer records, transactions, sensor logs, claims, and orders all live in tables, and predicting churn, default, demand, or price from them is among the most common machine learning tasks in industry. For two decades, this work has been done with gradient-boosted trees, and it has worked well. But the lifecycle around those models has barely changed. Every new question means collecting labels, engineering features, searching hyperparameters, validating, and deploying a model that knows nothing about tables in general and learns each task from scratch.</p>\n<p>Large Language Models showed a different way of working with new tasks. Given a few examples in the prompt, a pretrained model solves the task without updating a single weight. This is <em>in-context learning</em>, and it applies to tables just as well as to text: a model pretrained on millions of tables can read a labeled table as its context and predict the labels of new rows directly.</p>\n<p>Today, we are releasing <strong>NVIDIA Kumo Tabular</strong> (<a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://github.com/NVIDIA/structured-data-models\">GitHub</a>, <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://huggingface.co/nvidia/Kumo-Tabular\">HuggingFace</a>), an open foundation model for tabular classification and regression. Given a table with labeled rows and the rows you want predictions for, Kumo Tabular returns class probabilities or numeric predictions in a single forward pass.</p>\n<h2>How Kumo Tabular Works</h2>\n<p>Kumo Tabular is a Transformer built around the structure of a table, utilizing column, row and in-context attention as introduced in <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://github.com/soda-inria/tabicl\">TabICL</a> and <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://github.com/PriorLabs/tabpfn\">TabPFN</a>. To predict a label it has to do three things: <strong>(1)</strong> understand what each value means within its column, <strong>(2)</strong> understand how the columns of a row interact, and <strong>(3)</strong> relate the context rows with existing labels to the query rows with unknown labels. Kumo Tabular achieves this as follows:</p>\n<p><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://cdn-uploads.huggingface.co/production/uploads/684040a5de1ad7f4fcec9508/TkT695UAWJnUIyEydIYRv.png\"><picture class=\"article-picture article-picture-fallback\" style=\"--image-ratio:16 / 9\"><img src=\"https://cdn-uploads.huggingface.co/production/uploads/684040a5de1ad7f4fcec9508/TkT695UAWJnUIyEydIYRv.png\" alt=\"architecture\" loading=\"eager\" decoding=\"async\" fetchpriority=\"high\" referrerpolicy=\"no-referrer\" class=\"progressive-image\"></picture></a></p>\n<p><strong>Cell Embedding:</strong> A group of cells becomes a token. Numerical and categorical values pass through Fourier features, sines and cosines of learned frequencies, with separate weights for each type. Missing values need no imputation and are treated specially. Finally, every token in the context receives a label embedding.</p>\n<p><strong>Row Embedding:</strong> We then turn each row into an embedding by alternating two kinds of attention multiple times. Column attention looks down a single column and learns what a value means in the distribution of its column, <em>e.g.</em>, whether a <code>42</code> is typical or extreme, via induced self-attention. Its cost therefore grows linearly with the number of rows. Row attention looks across the tokens of a single row and learns how features interact, with rotary positions to tell columns apart. Four learnable <code>[CLS]</code> tokens join each row and act as the final readout of a row. After this row compression, the cost of the final stage no longer depends on the number of columns.</p>\n<p><strong>In-context Learning:</strong> A final Transformer operates on the row embeddings. Context rows attend to each other, while query rows attend to context rows only. Each prediction therefore depends only on the context and on the row itself, not on which other rows are scored alongside it. Because the context never looks at the queries, its keys and values are computed once and can be reused for follow-up predictions. Query rows utilize Test-GQA, which shrinks the cache that every prediction reads. A head turns each query row into class probabilities for classification and 999 quantiles for regression, from which a point prediction and an uncertainty estimate follow.</p>\n<p><strong>Length-aware Attention Temperature:</strong> Softmax attention spreads out as the number of keys grows. Attention that is sharp over a few hundred rows can dissolve over tens of thousands, which is exactly the situation when a table at inference is much larger than a typical training table. Kumo Tabular therefore scales every query by a temperature that grows with the logarithm of the number of keys, with a coefficient learned separately for each attention head. The result is attention that stays sharp as tables grow longer or wider.</p>\n<h2>How Kumo Tabular was Built</h2>\n<p>Kumo Tabular is pretrained entirely on artificial tables. Each training table is sampled from a <em>Structural Causal Model (SCM)</em> in the six steps shown below:</p>\n<p><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://cdn-uploads.huggingface.co/production/uploads/684040a5de1ad7f4fcec9508/ipJNJTNO5ZH2zviIdR8eo.png\"><picture class=\"article-picture article-picture-fallback\" style=\"--image-ratio:16 / 9\"><img src=\"https://cdn-uploads.huggingface.co/production/uploads/684040a5de1ad7f4fcec9508/ipJNJTNO5ZH2zviIdR8eo.png\" alt=\"prior\" loading=\"lazy\" decoding=\"async\" fetchpriority=\"low\" referrerpolicy=\"no-referrer\" class=\"progressive-image\"></picture></a></p>\n<p>We first draw a configuration for the whole table, from its size and task to its mechanisms and missingness. A random causal graph then links hidden variables, evaluated from root to leaf via randomly drawn functions at every node (<em>e.g.</em>, linear maps, small neural networks, trees or Gaussian processes). Some nodes become numerical or categorical columns, one becomes the target, and the rest stay hidden, like the unmeasured causes behind real data. Post-processing correlates groups of columns, clips outliers, and injects missing values, and a quick tree-ensemble check discards any table without a learnable signal. Because the generator is a procedural sampler rather than a trained model, it produces an endless supply of tables, each with a new graph and new mechanisms.</p>\n<p>Real-world tables are messy, so we built more of their imperfections into the generator. Values go missing in several patterns, some features are coarsened so that duplicate rows may disagree on their label, some categorical columns carry many levels, and regression targets can be heavy-tailed. A model that has seen millions of such tables learns to handle these imperfections without any cleanup.</p>\n<p>On every artificial table, the model sees most of the rows with their labels as context and learns to predict the labels of the remaining rows, with a cross-entropy loss for classification and a quantile loss for regression. Classification and regression are trained as separate models. Similarly to TabICLv2, training runs in three stages. The first and longest stage uses tables of 1,024 rows and up to 100 columns and teaches the model what tables look like. The second stage varies the context from 400 to 10,240 rows, and the third extends it to 60,000 rows, still with up to 100 columns. In total, Kumo Tabular-Small/Medium/Large saw about 35/71/137 million artificial tables.</p>\n<p>Our training recipe and artificial data generators will be released soon.</p>\n<h2>Performance</h2>\n<p>We ran all three Kumo Tabular sizes with default settings against the full <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://github.com/autogluon/tabarena\">TabArena</a> leaderboard, spanning tuned gradient-boosted trees, AutoGluon, and the latest tabular foundation models. Kumo Tabular ranks first overall with an ELO of 1950 while running 17 faster than <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://github.com/limix-ldm-ai/LimiX\">LimiX-2</a> under a uniform single RTX 6000 Pro evaluation setup. Across all three three model sizes, Kumo Tabular establishes a new state-of-the-art on the accuracy-efficiency Pareto front:</p>\n<p><a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://cdn-uploads.huggingface.co/production/uploads/684040a5de1ad7f4fcec9508/CpOXm3g9du6Uw3zQDh2QC.png\"><picture class=\"article-picture article-picture-fallback\" style=\"--image-ratio:16 / 9\"><img src=\"https://cdn-uploads.huggingface.co/production/uploads/684040a5de1ad7f4fcec9508/CpOXm3g9du6Uw3zQDh2QC.png\" alt=\"pareto\" loading=\"lazy\" decoding=\"async\" fetchpriority=\"low\" referrerpolicy=\"no-referrer\" class=\"progressive-image\"></picture></a></p>\n<p>We also evaluated Kumo Tabular on <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://github.com/autogluon/tabarena\">BeyondArena</a>, <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://github.com/LAMDA-Tabular/TALENT\">TALENT</a> and <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://github.com/jonaslandsgesell/ScoringBench\">ScoringBench</a>. On BeyondArena, Kumo Tabular reaches an ELO of 1418 with an Improvability score of 7.78%, placing first on the leaderboard. On TALENT, it achieves the top overall ranking across classification accuracy, classification log-loss, and regression RMSE, with average ranks of 6.67, 3.98, and 4.22. On ScoringBench, a benchmark for predictive distributions, Kumo Tabular-Large and Medium rank first and second on average rank.</p>\n<h2>Limitations</h2>\n<p>Kumo Tabular works on numerical and categorical columns only, while text, images, or timestamps can be turned into features via built-in pre-processing recipes. A single forward pass covers up to 10 classes, which the library extends to any number of classes with error-correcting output codes. Accuracy may degrade on tables far beyond the training ranges or when the query rows come from a different distribution than the context rows, so, as with any predictive model, validate accuracy and calibration on your own held-out data before deployment.</p>\n<h2>Demo</h2>\n<p>Kumo Tabular runs via NVIDIA's newly released GPU-native library for <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://github.com/NVIDIA/structured-data-models\"><code>structured-data-models</code></a>. The library downloads the weights from the Hub on first use and provides the preprocessing, ensembling, and many-class handling used in our evaluations. The code below is all it takes to go from a <code>pandas.DataFrame</code> to a prediction:</p>\n<pre><code class=\"language-python\"><span class=\"code-snippet\" data-language=\"Python\"><span class=\"syntax-source syntax-python\"><span class=\"syntax-meta syntax-statement syntax-import syntax-python\"><span class=\"syntax-keyword syntax-control syntax-import syntax-python\">import</span> <span class=\"syntax-meta syntax-qualified-name syntax-python\"><span class=\"syntax-meta syntax-generic-name syntax-python\">sdm</span></span></span>  <span class=\"syntax-comment syntax-line syntax-number-sign syntax-python\"><span class=\"syntax-punctuation syntax-definition syntax-comment syntax-python\">#</span> structured-data-models\n</span>\n<span class=\"syntax-comment syntax-line syntax-number-sign syntax-python\"><span class=\"syntax-punctuation syntax-definition syntax-comment syntax-python\">#</span> Tensorize tabular data:\n</span><span class=\"syntax-meta syntax-qualified-name syntax-python\"><span class=\"syntax-meta syntax-generic-name syntax-python\">table</span></span> <span class=\"syntax-keyword syntax-operator syntax-assignment syntax-python\">=</span> <span class=\"syntax-meta syntax-function-call syntax-python\"><span class=\"syntax-meta syntax-qualified-name syntax-python\"><span class=\"syntax-meta syntax-generic-name syntax-python\">sdm</span><span class=\"syntax-punctuation syntax-accessor syntax-dot syntax-python\">.</span><span class=\"syntax-meta syntax-generic-name syntax-python\">TableTensor</span><span class=\"syntax-punctuation syntax-accessor syntax-dot syntax-python\">.</span></span><span class=\"syntax-meta syntax-qualified-name syntax-python\"><span class=\"syntax-variable syntax-function syntax-python\">from_pandas</span></span><span class=\"syntax-punctuation syntax-section syntax-arguments syntax-begin syntax-python\">(</span><span class=\"syntax-meta syntax-function-call syntax-arguments syntax-python\"><span class=\"syntax-meta syntax-function-call syntax-python\"><span class=\"syntax-meta syntax-qualified-name syntax-python\"><span class=\"syntax-meta syntax-generic-name syntax-python\">pd</span><span class=\"syntax-punctuation syntax-accessor syntax-dot syntax-python\">.</span></span><span class=\"syntax-meta syntax-qualified-name syntax-python\"><span class=\"syntax-variable syntax-function syntax-python\">load_csv</span></span><span class=\"syntax-punctuation syntax-section syntax-arguments syntax-begin syntax-python\">(</span><span class=\"syntax-meta syntax-function-call syntax-arguments syntax-python\"><span class=\"syntax-constant syntax-language syntax-python\">...</span></span><span class=\"syntax-punctuation syntax-section syntax-arguments syntax-end syntax-python\">)</span></span><span class=\"syntax-punctuation syntax-separator syntax-arguments syntax-python\">,</span> <span class=\"syntax-variable syntax-parameter syntax-python\">device</span><span class=\"syntax-keyword syntax-operator syntax-assignment syntax-python\">=</span><span class=\"syntax-meta syntax-string syntax-python\"><span class=\"syntax-string syntax-quoted syntax-double syntax-python\"><span class=\"syntax-punctuation syntax-definition syntax-string syntax-begin syntax-python\">&quot;</span></span></span><span class=\"syntax-meta syntax-string syntax-python\"><span class=\"syntax-string syntax-quoted syntax-double syntax-python\">cuda<span class=\"syntax-punctuation syntax-definition syntax-string syntax-end syntax-python\">&quot;</span></span></span></span><span class=\"syntax-punctuation syntax-section syntax-arguments syntax-end syntax-python\">)</span></span>\n<span class=\"syntax-meta syntax-qualified-name syntax-python\"><span class=\"syntax-meta syntax-generic-name syntax-python\">na_mask</span></span> <span class=\"syntax-keyword syntax-operator syntax-assignment syntax-python\">=</span> <span class=\"syntax-meta syntax-item-access syntax-python\"><span class=\"syntax-meta syntax-qualified-name syntax-python\"><span class=\"syntax-meta syntax-generic-name syntax-python\">table</span></span></span><span class=\"syntax-meta syntax-item-access syntax-python\"><span class=\"syntax-punctuation syntax-section syntax-brackets syntax-begin syntax-python\">[</span></span><span class=\"syntax-meta syntax-item-access syntax-arguments syntax-python\"><span class=\"syntax-meta syntax-string syntax-python\"><span class=\"syntax-string syntax-quoted syntax-double syntax-python\"><span class=\"syntax-punctuation syntax-definition syntax-string syntax-begin syntax-python\">&quot;</span></span></span><span class=\"syntax-meta syntax-string syntax-python\"><span class=\"syntax-string syntax-quoted syntax-double syntax-python\">target<span class=\"syntax-punctuation syntax-definition syntax-string syntax-end syntax-python\">&quot;</span></span></span></span><span class=\"syntax-meta syntax-item-access syntax-python\"><span class=\"syntax-punctuation syntax-section syntax-brackets syntax-end syntax-python\">]</span></span><span class=\"syntax-meta syntax-function-call syntax-python\"><span class=\"syntax-meta syntax-qualified-name syntax-python\"><span class=\"syntax-punctuation syntax-accessor syntax-dot syntax-python\">.</span></span><span class=\"syntax-meta syntax-qualified-name syntax-python\"><span class=\"syntax-variable syntax-function syntax-python\">isnan</span></span><span class=\"syntax-punctuation syntax-section syntax-arguments syntax-begin syntax-python\">(</span><span class=\"syntax-punctuation syntax-section syntax-arguments syntax-end syntax-python\">)</span></span>\n\n<span class=\"syntax-meta syntax-qualified-name syntax-python\"><span class=\"syntax-meta syntax-generic-name syntax-python\">model</span></span> <span class=\"syntax-keyword syntax-operator syntax-assignment syntax-python\">=</span> <span class=\"syntax-meta syntax-function-call syntax-python\"><span class=\"syntax-meta syntax-qualified-name syntax-python\"><span class=\"syntax-meta syntax-generic-name syntax-python\">sdm</span><span class=\"syntax-punctuation syntax-accessor syntax-dot syntax-python\">.</span><span class=\"syntax-meta syntax-generic-name syntax-python\">models</span><span class=\"syntax-punctuation syntax-accessor syntax-dot syntax-python\">.</span></span><span class=\"syntax-meta syntax-qualified-name syntax-python\"><span class=\"syntax-variable syntax-function syntax-python\">KumoTabular</span></span><span class=\"syntax-punctuation syntax-section syntax-arguments syntax-begin syntax-python\">(</span><span class=\"syntax-meta syntax-function-call syntax-arguments syntax-python\"><span class=\"syntax-variable syntax-parameter syntax-python\">device</span><span class=\"syntax-keyword syntax-operator syntax-assignment syntax-python\">=</span><span class=\"syntax-meta syntax-string syntax-python\"><span class=\"syntax-string syntax-quoted syntax-double syntax-python\"><span class=\"syntax-punctuation syntax-definition syntax-string syntax-begin syntax-python\">&quot;</span></span></span><span class=\"syntax-meta syntax-string syntax-python\"><span class=\"syntax-string syntax-quoted syntax-double syntax-python\">cuda<span class=\"syntax-punctuation syntax-definition syntax-string syntax-end syntax-python\">&quot;</span></span></span></span><span class=\"syntax-punctuation syntax-section syntax-arguments syntax-end syntax-python\">)</span></span>\n<span class=\"syntax-meta syntax-qualified-name syntax-python\"><span class=\"syntax-meta syntax-generic-name syntax-python\">pred</span></span> <span class=\"syntax-keyword syntax-operator syntax-assignment syntax-python\">=</span> <span class=\"syntax-meta syntax-function-call syntax-python\"><span class=\"syntax-meta syntax-qualified-name syntax-python\"><span class=\"syntax-variable syntax-function syntax-python\">model</span></span><span class=\"syntax-punctuation syntax-section syntax-arguments syntax-begin syntax-python\">(</span><span class=\"syntax-meta syntax-function-call syntax-arguments syntax-python\">\n    <span class=\"syntax-comment syntax-line syntax-number-sign syntax-python\"><span class=\"syntax-punctuation syntax-definition syntax-comment syntax-python\">#</span> In-context examples (features/targets):\n</span>    <span class=\"syntax-variable syntax-parameter syntax-python\">x_context</span><span class=\"syntax-keyword syntax-operator syntax-assignment syntax-python\">=</span><span class=\"syntax-meta syntax-item-access syntax-python\"><span class=\"syntax-meta syntax-qualified-name syntax-python\"><span class=\"syntax-meta syntax-generic-name syntax-python\">table</span></span></span><span class=\"syntax-meta syntax-item-access syntax-python\"><span class=\"syntax-punctuation syntax-section syntax-brackets syntax-begin syntax-python\">[</span></span><span class=\"syntax-meta syntax-item-access syntax-arguments syntax-python\"><span class=\"syntax-keyword syntax-operator syntax-arithmetic syntax-python\">~</span><span class=\"syntax-meta syntax-qualified-name syntax-python\"><span class=\"syntax-meta syntax-generic-name syntax-python\">na_mask</span></span></span><span class=\"syntax-meta syntax-item-access syntax-python\"><span class=\"syntax-punctuation syntax-section syntax-brackets syntax-end syntax-python\">]</span></span><span class=\"syntax-meta syntax-function-call syntax-python\"><span class=\"syntax-meta syntax-qualified-name syntax-python\"><span class=\"syntax-punctuation syntax-accessor syntax-dot syntax-python\">.</span></span><span class=\"syntax-meta syntax-qualified-name syntax-python\"><span class=\"syntax-variable syntax-function syntax-python\">drop_columns</span></span><span class=\"syntax-punctuation syntax-section syntax-arguments syntax-begin syntax-python\">(</span><span class=\"syntax-meta syntax-function-call syntax-arguments syntax-python\"><span class=\"syntax-meta syntax-string syntax-python\"><span class=\"syntax-string syntax-quoted syntax-double syntax-python\"><span class=\"syntax-punctuation syntax-definition syntax-string syntax-begin syntax-python\">&quot;</span></span></span><span class=\"syntax-meta syntax-string syntax-python\"><span class=\"syntax-string syntax-quoted syntax-double syntax-python\">target<span class=\"syntax-punctuation syntax-definition syntax-string syntax-end syntax-python\">&quot;</span></span></span></span><span class=\"syntax-punctuation syntax-section syntax-arguments syntax-end syntax-python\">)</span></span><span class=\"syntax-punctuation syntax-separator syntax-arguments syntax-python\">,</span>\n    <span class=\"syntax-variable syntax-parameter syntax-python\">y_context</span><span class=\"syntax-keyword syntax-operator syntax-assignment syntax-python\">=</span><span class=\"syntax-meta syntax-item-access syntax-python\"><span class=\"syntax-meta syntax-qualified-name syntax-python\"><span class=\"syntax-meta syntax-generic-name syntax-python\">table</span></span></span><span class=\"syntax-meta syntax-item-access syntax-python\"><span class=\"syntax-punctuation syntax-section syntax-brackets syntax-begin syntax-python\">[</span></span><span class=\"syntax-meta syntax-item-access syntax-arguments syntax-python\"><span class=\"syntax-keyword syntax-operator syntax-arithmetic syntax-python\">~</span><span class=\"syntax-meta syntax-qualified-name syntax-python\"><span class=\"syntax-meta syntax-generic-name syntax-python\">na_mask</span></span>, <span class=\"syntax-meta syntax-string syntax-python\"><span class=\"syntax-string syntax-quoted syntax-double syntax-python\"><span class=\"syntax-punctuation syntax-definition syntax-string syntax-begin syntax-python\">&quot;</span></span></span><span class=\"syntax-meta syntax-string syntax-python\"><span class=\"syntax-string syntax-quoted syntax-double syntax-python\">target<span class=\"syntax-punctuation syntax-definition syntax-string syntax-end syntax-python\">&quot;</span></span></span></span><span class=\"syntax-meta syntax-item-access syntax-python\"><span class=\"syntax-punctuation syntax-section syntax-brackets syntax-end syntax-python\">]</span></span><span class=\"syntax-punctuation syntax-separator syntax-arguments syntax-python\">,</span>\n    <span class=\"syntax-comment syntax-line syntax-number-sign syntax-python\"><span class=\"syntax-punctuation syntax-definition syntax-comment syntax-python\">#</span> Prediction examples (features):\n</span>    <span class=\"syntax-variable syntax-parameter syntax-python\">x_query</span><span class=\"syntax-keyword syntax-operator syntax-assignment syntax-python\">=</span><span class=\"syntax-meta syntax-item-access syntax-python\"><span class=\"syntax-meta syntax-qualified-name syntax-python\"><span class=\"syntax-meta syntax-generic-name syntax-python\">table</span></span></span><span class=\"syntax-meta syntax-item-access syntax-python\"><span class=\"syntax-punctuation syntax-section syntax-brackets syntax-begin syntax-python\">[</span></span><span class=\"syntax-meta syntax-item-access syntax-arguments syntax-python\"><span class=\"syntax-meta syntax-qualified-name syntax-python\"><span class=\"syntax-meta syntax-generic-name syntax-python\">na_mask</span></span></span><span class=\"syntax-meta syntax-item-access syntax-python\"><span class=\"syntax-punctuation syntax-section syntax-brackets syntax-end syntax-python\">]</span></span><span class=\"syntax-meta syntax-function-call syntax-python\"><span class=\"syntax-meta syntax-qualified-name syntax-python\"><span class=\"syntax-punctuation syntax-accessor syntax-dot syntax-python\">.</span></span><span class=\"syntax-meta syntax-qualified-name syntax-python\"><span class=\"syntax-variable syntax-function syntax-python\">drop_column</span></span><span class=\"syntax-punctuation syntax-section syntax-arguments syntax-begin syntax-python\">(</span><span class=\"syntax-meta syntax-function-call syntax-arguments syntax-python\"><span class=\"syntax-meta syntax-string syntax-python\"><span class=\"syntax-string syntax-quoted syntax-double syntax-python\"><span class=\"syntax-punctuation syntax-definition syntax-string syntax-begin syntax-python\">&quot;</span></span></span><span class=\"syntax-meta syntax-string syntax-python\"><span class=\"syntax-string syntax-quoted syntax-double syntax-python\">target<span class=\"syntax-punctuation syntax-definition syntax-string syntax-end syntax-python\">&quot;</span></span></span></span><span class=\"syntax-punctuation syntax-section syntax-arguments syntax-end syntax-python\">)</span></span><span class=\"syntax-punctuation syntax-separator syntax-arguments syntax-python\">,</span>\n</span><span class=\"syntax-punctuation syntax-section syntax-arguments syntax-end syntax-python\">)</span></span>\n</span></span></code></pre>\n<h2>Start Building with Kumo Tabular</h2>\n<p>Kumo Tabular is released under the <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://huggingface.co/blog/nvidia/(https://openmdw.ai/license/1-1/\">OpenMDW License Agreement, version 1.1</a>. NVIDIA believes Trustworthy AI is a shared responsibility, and we have established policies and practices to enable development for a wide array of AI applications. When downloaded or used in accordance with our terms of service, developers should work with their supporting model team to ensure this model meets requirements for the relevant industry and use case and addresses unforeseen product misuse. Please report model quality, risk, security vulnerabilities, or NVIDIA AI concerns <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://github.com/NVIDIA/structured-data-models/issues\">here</a>.</p>\n<ul>\n<li><strong>Model Code:</strong> <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://github.com/NVIDIA/structured-data-models\">https://github.com/NVIDIA/structured-data-models</a></li>\n<li><strong>Model Weights:</strong> <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://huggingface.co/nvidia/Kumo-Tabular\">https://huggingface.co/nvidia/Kumo-Tabular</a></li>\n</ul>\n<h2>Acknowledgements</h2>\n<p>We thank <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://dholzmueller.github.io/\">David Holzmüller</a> for contributing significant ideas and ablations to Kumo Tabular. We thank <a target=\"_blank\" rel=\"noopener noreferrer\" href=\"https://kvignesh1420.github.io/\">Vignesh Kothapalli</a> for his help on Kumo Tabular during his internship.</p>\n",
  "content_markdown": "## Highlights (TL;DR)\n\nNVIDIA Kumo Tabular, part of the NVIDIA Kumo Structured model collection, is an open foundation model for tabular data now available on [Hugging Face](https://huggingface.co/nvidia/Kumo-Tabular). Given a table of labeled rows, it predicts the labels of new rows in a single forward pass, with no training, no tuning, and no feature engineering, for both classification and regression. It was pretrained only on artificial data, comes in three sizes (28M to 215M parameters), runs through our [open-source library](https://github.com/NVIDIA/structured-data-models), and is released under the [OpenMDW-1.1 license](https://openmdw.ai/license/1-1/) for commercial use. It ranks first on the four benchmarks [TabArena](https://github.com/autogluon/tabarena), [BeyondArena](https://github.com/autogluon/tabarena), [TALENT](https://github.com/LAMDA-Tabular/TALENT) and [ScoringBench](https://github.com/jonaslandsgesell/ScoringBench).\n\n- **Model Code:** [https://github.com/NVIDIA/structured-data-models](https://github.com/NVIDIA/structured-data-models)\n- **Model Weights:** [https://huggingface.co/nvidia/Kumo-Tabular](https://huggingface.co/nvidia/Kumo-Tabular)\n\n## The Shift to Tabular Foundation Models\n\nTabular data is the backbone of enterprise machine learning. Customer records, transactions, sensor logs, claims, and orders all live in tables, and predicting churn, default, demand, or price from them is among the most common machine learning tasks in industry. For two decades, this work has been done with gradient-boosted trees, and it has worked well. But the lifecycle around those models has barely changed. Every new question means collecting labels, engineering features, searching hyperparameters, validating, and deploying a model that knows nothing about tables in general and learns each task from scratch.\n\nLarge Language Models showed a different way of working with new tasks. Given a few examples in the prompt, a pretrained model solves the task without updating a single weight. This is *in-context learning*, and it applies to tables just as well as to text: a model pretrained on millions of tables can read a labeled table as its context and predict the labels of new rows directly.\n\nToday, we are releasing **NVIDIA Kumo Tabular** ([GitHub](https://github.com/NVIDIA/structured-data-models), [HuggingFace](https://huggingface.co/nvidia/Kumo-Tabular)), an open foundation model for tabular classification and regression. Given a table with labeled rows and the rows you want predictions for, Kumo Tabular returns class probabilities or numeric predictions in a single forward pass.\n\n## How Kumo Tabular Works\n\nKumo Tabular is a Transformer built around the structure of a table, utilizing column, row and in-context attention as introduced in [TabICL](https://github.com/soda-inria/tabicl) and [TabPFN](https://github.com/PriorLabs/tabpfn). To predict a label it has to do three things: **(1)** understand what each value means within its column, **(2)** understand how the columns of a row interact, and **(3)** relate the context rows with existing labels to the query rows with unknown labels. Kumo Tabular achieves this as follows:\n\n[![architecture](https://cdn-uploads.huggingface.co/production/uploads/684040a5de1ad7f4fcec9508/TkT695UAWJnUIyEydIYRv.png)](https://cdn-uploads.huggingface.co/production/uploads/684040a5de1ad7f4fcec9508/TkT695UAWJnUIyEydIYRv.png)\n\n**Cell Embedding:** A group of cells becomes a token. Numerical and categorical values pass through Fourier features, sines and cosines of learned frequencies, with separate weights for each type. Missing values need no imputation and are treated specially. Finally, every token in the context receives a label embedding.\n\n**Row Embedding:** We then turn each row into an embedding by alternating two kinds of attention multiple times. Column attention looks down a single column and learns what a value means in the distribution of its column, *e.g.*, whether a `42` is typical or extreme, via induced self-attention. Its cost therefore grows linearly with the number of rows. Row attention looks across the tokens of a single row and learns how features interact, with rotary positions to tell columns apart. Four learnable `[CLS]` tokens join each row and act as the final readout of a row. After this row compression, the cost of the final stage no longer depends on the number of columns.\n\n**In-context Learning:** A final Transformer operates on the row embeddings. Context rows attend to each other, while query rows attend to context rows only. Each prediction therefore depends only on the context and on the row itself, not on which other rows are scored alongside it. Because the context never looks at the queries, its keys and values are computed once and can be reused for follow-up predictions. Query rows utilize Test-GQA, which shrinks the cache that every prediction reads. A head turns each query row into class probabilities for classification and 999 quantiles for regression, from which a point prediction and an uncertainty estimate follow.\n\n**Length-aware Attention Temperature:** Softmax attention spreads out as the number of keys grows. Attention that is sharp over a few hundred rows can dissolve over tens of thousands, which is exactly the situation when a table at inference is much larger than a typical training table. Kumo Tabular therefore scales every query by a temperature that grows with the logarithm of the number of keys, with a coefficient learned separately for each attention head. The result is attention that stays sharp as tables grow longer or wider.\n\n## How Kumo Tabular was Built\n\nKumo Tabular is pretrained entirely on artificial tables. Each training table is sampled from a *Structural Causal Model (SCM)* in the six steps shown below:\n\n[![prior](https://cdn-uploads.huggingface.co/production/uploads/684040a5de1ad7f4fcec9508/ipJNJTNO5ZH2zviIdR8eo.png)](https://cdn-uploads.huggingface.co/production/uploads/684040a5de1ad7f4fcec9508/ipJNJTNO5ZH2zviIdR8eo.png)\n\nWe first draw a configuration for the whole table, from its size and task to its mechanisms and missingness. A random causal graph then links hidden variables, evaluated from root to leaf via randomly drawn functions at every node (*e.g.*, linear maps, small neural networks, trees or Gaussian processes). Some nodes become numerical or categorical columns, one becomes the target, and the rest stay hidden, like the unmeasured causes behind real data. Post-processing correlates groups of columns, clips outliers, and injects missing values, and a quick tree-ensemble check discards any table without a learnable signal. Because the generator is a procedural sampler rather than a trained model, it produces an endless supply of tables, each with a new graph and new mechanisms.\n\nReal-world tables are messy, so we built more of their imperfections into the generator. Values go missing in several patterns, some features are coarsened so that duplicate rows may disagree on their label, some categorical columns carry many levels, and regression targets can be heavy-tailed. A model that has seen millions of such tables learns to handle these imperfections without any cleanup.\n\nOn every artificial table, the model sees most of the rows with their labels as context and learns to predict the labels of the remaining rows, with a cross-entropy loss for classification and a quantile loss for regression. Classification and regression are trained as separate models. Similarly to TabICLv2, training runs in three stages. The first and longest stage uses tables of 1,024 rows and up to 100 columns and teaches the model what tables look like. The second stage varies the context from 400 to 10,240 rows, and the third extends it to 60,000 rows, still with up to 100 columns. In total, Kumo Tabular-Small/Medium/Large saw about 35/71/137 million artificial tables.\n\nOur training recipe and artificial data generators will be released soon.\n\n## Performance\n\nWe ran all three Kumo Tabular sizes with default settings against the full [TabArena](https://github.com/autogluon/tabarena) leaderboard, spanning tuned gradient-boosted trees, AutoGluon, and the latest tabular foundation models. Kumo Tabular ranks first overall with an ELO of 1950 while running 17 faster than [LimiX-2](https://github.com/limix-ldm-ai/LimiX) under a uniform single RTX 6000 Pro evaluation setup. Across all three three model sizes, Kumo Tabular establishes a new state-of-the-art on the accuracy-efficiency Pareto front:\n\n[![pareto](https://cdn-uploads.huggingface.co/production/uploads/684040a5de1ad7f4fcec9508/CpOXm3g9du6Uw3zQDh2QC.png)](https://cdn-uploads.huggingface.co/production/uploads/684040a5de1ad7f4fcec9508/CpOXm3g9du6Uw3zQDh2QC.png)\n\nWe also evaluated Kumo Tabular on [BeyondArena](https://github.com/autogluon/tabarena), [TALENT](https://github.com/LAMDA-Tabular/TALENT) and [ScoringBench](https://github.com/jonaslandsgesell/ScoringBench). On BeyondArena, Kumo Tabular reaches an ELO of 1418 with an Improvability score of 7.78%, placing first on the leaderboard. On TALENT, it achieves the top overall ranking across classification accuracy, classification log-loss, and regression RMSE, with average ranks of 6.67, 3.98, and 4.22. On ScoringBench, a benchmark for predictive distributions, Kumo Tabular-Large and Medium rank first and second on average rank.\n\n## Limitations\n\nKumo Tabular works on numerical and categorical columns only, while text, images, or timestamps can be turned into features via built-in pre-processing recipes. A single forward pass covers up to 10 classes, which the library extends to any number of classes with error-correcting output codes. Accuracy may degrade on tables far beyond the training ranges or when the query rows come from a different distribution than the context rows, so, as with any predictive model, validate accuracy and calibration on your own held-out data before deployment.\n\n## Demo\n\nKumo Tabular runs via NVIDIA's newly released GPU-native library for [`structured-data-models`](https://github.com/NVIDIA/structured-data-models). The library downloads the weights from the Hub on first use and provides the preprocessing, ensembling, and many-class handling used in our evaluations. The code below is all it takes to go from a `pandas.DataFrame` to a prediction:\n\n```python\nimport sdm  # structured-data-models\n\n# Tensorize tabular data:\ntable = sdm.TableTensor.from_pandas(pd.load_csv(...), device=\"cuda\")\nna_mask = table[\"target\"].isnan()\n\nmodel = sdm.models.KumoTabular(device=\"cuda\")\npred = model(\n    # In-context examples (features/targets):\n    x_context=table[~na_mask].drop_columns(\"target\"),\n    y_context=table[~na_mask, \"target\"],\n    # Prediction examples (features):\n    x_query=table[na_mask].drop_column(\"target\"),\n)\n```\n\n## Start Building with Kumo Tabular\n\nKumo Tabular is released under the [OpenMDW License Agreement, version 1.1](https://huggingface.co/blog/nvidia/\\(https://openmdw.ai/license/1-1/). NVIDIA believes Trustworthy AI is a shared responsibility, and we have established policies and practices to enable development for a wide array of AI applications. When downloaded or used in accordance with our terms of service, developers should work with their supporting model team to ensure this model meets requirements for the relevant industry and use case and addresses unforeseen product misuse. Please report model quality, risk, security vulnerabilities, or NVIDIA AI concerns [here](https://github.com/NVIDIA/structured-data-models/issues).\n\n- **Model Code:** [https://github.com/NVIDIA/structured-data-models](https://github.com/NVIDIA/structured-data-models)\n- **Model Weights:** [https://huggingface.co/nvidia/Kumo-Tabular](https://huggingface.co/nvidia/Kumo-Tabular)\n\n## Acknowledgements\n\nWe thank [David Holzmüller](https://dholzmueller.github.io/) for contributing significant ideas and ablations to Kumo Tabular. We thank [Vignesh Kothapalli](https://kvignesh1420.github.io/) for his help on Kumo Tabular during his internship.\n",
  "dateCreated": "2026-09-29T19:40:04.433827810+00:00",
  "date_created": "2026-09-29T15:30:38+00:00",
  "date_modified": "2026-09-29T15:30:38+00:00",
  "date_published": "2026-09-29T15:30:38+00:00",
  "description": "Highlights (TL;DR) NVIDIA Kumo Tabular, part of the NVIDIA Kumo Structured model collection, is an open foundation model for tabular data now available on Hugging Face. Given a table of labeled rows, it predicts the labels of new rows in a…",
  "external_url": "https://huggingface.co/blog/nvidia/kumo-tabular",
  "git": {
    "commit": "ebb0941c5c06a2ab2377342d607535262a3e969e",
    "path": "items/huggingface-co/2026/09/2026-09-29-nvidia-kumo-tabular-sets-a-new-accuracy-efficiency-frontier.md",
    "permalink": "https://github.com/aymericbeaumet/aggr-instance/blob/ebb0941c5c06a2ab2377342d607535262a3e969e/items/huggingface-co/2026/09/2026-09-29-nvidia-kumo-tabular-sets-a-new-accuracy-efficiency-frontier.md"
  },
  "id": "urn:aggr:item:4195a4e45b450f764851fdb8d2338f082439a735",
  "isBasedOn": {
    "@id": "https://huggingface.co/blog/nvidia/kumo-tabular"
  },
  "mainEntity": {
    "@id": "https://huggingface.co/blog/nvidia/kumo-tabular",
    "@type": "CreativeWork",
    "archivedAt": {
      "@id": "https://aggr.aymericbeaumet.com/items/huggingface-co/2026-09-29-nvidia-kumo-tabular-sets-a-new-accuracy-efficiency-frontier/#webpage"
    },
    "dateModified": "2026-09-29T15:30:38+00:00",
    "datePublished": "2026-09-29T15:30:38+00:00",
    "headline": "NVIDIA Kumo Tabular Sets a New Accuracy-Efficiency Frontier for Tabular Prediction",
    "timeRequired": "PT8M",
    "url": "https://huggingface.co/blog/nvidia/kumo-tabular",
    "wordCount": 1588
  },
  "name": "Archived snapshot: NVIDIA Kumo Tabular Sets a New Accuracy-Efficiency Frontier for Tabular Prediction",
  "preview": null,
  "reading_minutes": 8,
  "replicated_at": null,
  "source": "huggingface-co",
  "source_name": "Hugging Face - Blog",
  "summary": null,
  "tags": [],
  "temporalCoverage": "2026-09-29T19:40:04.433827810+00:00",
  "title": "NVIDIA Kumo Tabular Sets a New Accuracy-Efficiency Frontier for Tabular Prediction",
  "url": "https://aggr.aymericbeaumet.com/items/huggingface-co/2026-09-29-nvidia-kumo-tabular-sets-a-new-accuracy-efficiency-frontier/",
  "word_count": 1588
}