OpenViSTAI · Agents · Blockchain · Crypto
Menu
AI Data & Analytics

Neurocard

NeuroCard is a Python research project that learns correlations across database tables and estimates cardinalities—the numbers of rows produced by multi-table join queries. Its models and experiment scripts support training and evaluating estimates that can inform query optimization.

Independent OpenViST project profile, based on linked sources.

Neurocard — OpenViST project profile in AI Data & Analytics.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Use NeuroCard when investigating correlation-aware cardinality estimates or reproducing its documented training and evaluation experiments, particularly on the JOB configurations.

Who it is for

  • Database researchers studying learned cardinality estimation
  • Engineers evaluating join-size estimates for query optimization
  • Practitioners reproducing the repository's documented JOB benchmark experiments

Documented uses

  • Estimate row counts for multi-table join queries.
  • Train or evaluate neural cardinality estimators using registered experiment configurations.
  • Compare estimation quality using Q-error metrics and inspect density-model quality using train_bits.
Before you choose

Requirements & limits

The repository is public and licensed under Apache-2.0.

  • The documented quick start uses Ubuntu or Debian, build-essential, Conda and the IMDB CSV dataset.
  • Registered configurations distinguish checkpoint-only evaluation from training followed by evaluation.
  • The documented JOB-M large Transformer configuration has 107 million parameters and notes a four-GPU launch option or reduced batch size.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Prepare the NeuroCard JOB-light test

Set up the documented environment and dataset, then launch the short test run.

Before you start

  • Ubuntu or Debian with build-essential installed
  • Conda
  • NeuroCard repository files
  • IMDB CSV dataset, either downloaded with the provided script or already available

Steps

  1. Install build-essential with the system package manager.

  2. Create and activate the Conda environment using environment.yml.

  3. From the repository, download the IMDB CSV files with scripts/download_imdb.sh, or provide existing CSVs under datasets/job.

  4. Run python run.py --run test-job-light.

Expected outcome

The README describes this command as a short test run.

Guide limitations

  • The README identifies the dataset download as 1.2 GB.
  • If provided CSV files lack headers, the README points to scripts/prepend_imdb_headers.py.
Source-based practical guide

Run a registered training or evaluation experiment

Launch a repository experiment configuration for training and evaluation or checkpoint evaluation.

Before you start

  • NeuroCard Conda environment and repository setup
  • A configuration name registered in experiments.py
  • The dataset and checkpoint required by the selected configuration

Steps

  1. Choose a configuration registered in experiments.py.

  2. For checkpoint evaluation, choose a reload configuration; for training and evaluation, choose a normal configuration.

  3. Launch it with python run.py --run .

Expected outcome

The script runs the selected training-and-evaluation workflow or, for reload configurations, evaluation only; the README identifies Q-error and train_bits as metrics.

Guide limitations

  • Configuration details and hyperparameters are statically declared in experiments.py.
  • The README notes that JOB-M large Transformer training uses a four-GPU launch option or a reduced batch size.
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
18 October 2026
Original website title
neurocard/neurocard · Official homepage title · retained in its source language