GitHub
deepbox/datasets

Synthetic Generators

Structured dataset generators for classification, regression, manifold, low-rank, and clustering benchmarks.
Synthetic data
makeBiclusters
export declare function makeBiclusters(options?: { shape?: [number, number]; nClusters?: number; noise?: number; randomState?: number; }): [Tensor, Tensor, Tensor];

Generate a bicluster dataset.

makeBlobs
export declare function makeBlobs(options?: { nSamples?: number; nFeatures?: number; centers?: number | number[][]; clusterStd?: number; randomState?: number; shuffle?: boolean; }): [Tensor, Tensor];

Generate isotropic Gaussian blobs for clustering.

makeCheckerboard
export declare function makeCheckerboard(options?: { shape?: [number, number]; nClusters?: [number, number]; noise?: number; randomState?: number; }): [Tensor, Tensor, Tensor];

Generate a checkerboard dataset.

makeCircles
export declare function makeCircles(options?: { nSamples?: number; noise?: number; factor?: number; randomState?: number; shuffle?: boolean; }): [Tensor, Tensor];

Generate a large circle containing a smaller circle in 2D.

makeClassification
export declare function makeClassification(options?: { nSamples?: number; nFeatures?: number; nInformative?: number; nRedundant?: number; nClasses?: number; flipY?: number; randomState?: number; }): [Tensor, Tensor];

Generate a random n-class classification dataset.

makeFriedman1
export declare function makeFriedman1(options?: { nSamples?: number; nFeatures?: number; noise?: number; randomState?: number; }): [Tensor, Tensor];

Generate the Friedman #1 regression dataset.

makeFriedman2
export declare function makeFriedman2(options?: { nSamples?: number; noise?: number; randomState?: number; }): [Tensor, Tensor];

Generate the Friedman #2 regression dataset.

makeFriedman3
export declare function makeFriedman3(options?: { nSamples?: number; noise?: number; randomState?: number; }): [Tensor, Tensor];

Generate the Friedman #3 regression dataset.

makeGaussianQuantiles
export declare function makeGaussianQuantiles(options?: { nSamples?: number; nFeatures?: number; nClasses?: number; randomState?: number; }): [Tensor, Tensor];

Generate a dataset with classes separated by concentric Gaussian quantile shells.

makeLowRankMatrix
export declare function makeLowRankMatrix(options?: { nSamples?: number; nFeatures?: number; effectiveRank?: number; randomState?: number; }): Tensor;

Generate a low-rank matrix with optional noise.

makeMoons
export declare function makeMoons(options?: { nSamples?: number; noise?: number; randomState?: number; shuffle?: boolean; }): [Tensor, Tensor];

Generate two interleaving half-circle (moons) dataset.

makeRegression
export declare function makeRegression(options?: { nSamples?: number; nFeatures?: number; noise?: number; randomState?: number; }): [Tensor, Tensor];

Generate a random regression dataset.

makeSCurve
export declare function makeSCurve(options?: { nSamples?: number; noise?: number; randomState?: number; }): [Tensor, Tensor];

Generate an S-curve dataset (3D manifold).

makeSPDMatrix
export declare function makeSPDMatrix(options?: { nDim?: number; randomState?: number; }): Tensor;

Generate a random symmetric positive-definite matrix.

makeSparseUncorrelated
export declare function makeSparseUncorrelated(options?: { nSamples?: number; nFeatures?: number; randomState?: number; }): [Tensor, Tensor];

Generate a sparse uncorrelated regression dataset.

makeSwissRoll
export declare function makeSwissRoll(options?: { nSamples?: number; noise?: number; randomState?: number; }): [Tensor, Tensor];

Generate a Swiss Roll dataset (3D manifold).

datasets-synthetic.ts
import {  makeBlobs,  makeClassification,  makeMoons,  makeRegression,  makeSwissRoll,} from "deepbox/datasets";console.log(makeClassification({ nSamples: 100, nFeatures: 4 }));console.log(makeRegression({ nSamples: 100, nFeatures: 4 }));console.log(makeBlobs({ nSamples: 100, centers: 3 }));console.log(makeMoons({ nSamples: 100 }));console.log(makeSwissRoll({ nSamples: 100 }));