Az Nvidia nyílt forráskódú könyvtárat adott ki, amellyel előtanított modellek tanítás nélkül tudnak jósolni táblázatos adatokból. A Structured Data Models (SDM) első kiadásai október 14-én jelentek meg a GitHubon, az Nvidia saját kódja Apache 2.0 licencet kapott. A könyvtár több, úgynevezett alapmodellt (foundation model) fog össze egyetlen PyTorch-felület alatt. Ezek táblázatokra, összekapcsolt adatbázis-táblákra és idősorokra készültek.

Mit jelent a „tanítás nélküli” jóslás?

A táblázatos adatok (ügyféllisták, tranzakciók, mérési eredmények) elemzésében ma is a klasszikus gépi tanulás az úr: egy XGBoost-hoz vagy logisztikus regresszióhoz hasonló modellt minden feladatra külön be kell tanítani. A táblázatos alapmodellek másképp működnek. Az úgynevezett in-context learning során a modell kap néhány száz felcímkézett sort „példaként”, mellé a megjósolandó sorokat, és egyetlen futtatással visszaadja az eredményt. Nincs tanítási lépés és nincs hiperparaméter-hangolás. A működése olyan, mint amikor egy nyelvi modellnek a promptban mutatunk néhány példát. Osztályozásnál osztályonkénti valószínűségeket ad, regressziónál pedig egy teljes eloszlást, 999 kvantilissel.

Milyen modellek vannak benne?

  • Táblázatos modellek: TabICLv2 (az ICML 2026 konferencián bemutatott nyílt modell), a Google TabFM-je és az Nvidia KumoTabular modellje.
  • Relációs modell: a KumoRelational (KumoRFM-2), amely egész, több táblából álló adatbázisokból jósol.
  • Idősor-modellek: a KumoForecast és a Google TimesFM-3 modellje.

A könyvtár saját, PyTorch-kompatibilis tenzortípusokat is ad a számszerű, kategorikus, dátum, szöveges és azonosító oszlopokhoz, valamint GPU-n futó elő- és utófeldolgozást. Python 3.11-től és PyTorch 2.7-től használható. Az Nvidia CUDA-s használathoz a cuDF telepítését is javasolja, hogy az adatkezelés ne kerüljön vissza a CPU-ra.

Mennyire pontos?

A MarkTechPost részletes oktatóanyagban próbálta ki a könyvtárat a scikit-learn mellrákos adatkészletén: 300 felcímkézett sorból kellett 269 újat besorolni. A tanítás nélkül futó modellek ugyanott végeztek, mint a betanított klasszikus módszerek:

ModellTanításPontosságAUC
TabICLv2nincs0,9700,996
KumoTabular (small)nincs0,9700,995
Logisztikus regresszió300 soron0,9700,993
HistGradientBoosting300 soron0,9670,992
Forrás: MarkTechPost, CPU-n futtatott teszt

Az AUC azt méri, mennyire jól választja szét a modell a két osztályt (1,0 a tökéletes). A tesztből az is kiderült, hogy a felcímkézett példákat egyszer be lehet tölteni egy gyorsítótárba (fit), és utána sok lekérdezés gyorsabban fut (predict). Ezzel a modell nem tanul semmit, csak „megjegyzi” a példákat. A regressziós tesztben a 80 és 90 százalékos előrejelzési sávok nagyjából a sorok 80, illetve 90 százalékát fedték le, vagyis a modell bizonytalansági becslése is használható.

Buktatók

A MarkTechPost néhány csapdát is talált. Az oszloptípusokat felismerő funkció alapbeállításban a szabad szöveges mezőt kategóriaként, az azonosítót pedig számként kezeli, így mindkettő hamis jellemzőként kerülhet a modellbe. Ezt külön be kell állítani. A dátumoszlop egyetlen nanoszekundumos értéke is hibát okozhat az egész oszlopban, és a relációs részhez szükséges pyg-lib csomag telepítési hibaüzenete rossz címre mutat. Az oktatóanyag idején a PyPI-n lévő csomag még csak helyfoglaló volt, ezért a GitHubról telepítettek. Licencre is figyelni kell: a Google TabFM és TimesFM 3 súlyai a MarkTechPost szerint csak nem kereskedelmi célra használhatók, a TabICLv2 BSD-3, a Kumo-modellek OpenMDW licencet kaptak.

Az SDM elsősorban adatelemzőknek és fejlesztőknek szól, akik gyorsan akarnak jó alapértéket kapni egy táblázatos feladatra, modellépítés nélkül. A könyvtár GPU-ra optimalizált, de a MarkTechPost tesztje szerint CPU-n is végigfut.