Skip to content

@saehrimnir/druidjs / SQDMDS

Class: SQDMDS<T>

Defined in: dimred/SQDMDS.js:21

SQuadMDS (Stochastic Quartet MDS)

A lean Stochastic Quartet MDS improving global structure preservation in neighbor embedding like t-SNE and UMAP.

Template

Extends

  • DR

Type Parameters

Type ParameterDescription
T extends InputType

Constructors

Constructor

ts
new SQDMDS<T>(X: T, parameters?: Partial<ParametersSQDMDS>): SQDMDS<T>;

Defined in: dimred/SQDMDS.js:30

SQuadMDS: a lean Stochastic Quartet MDS improving global structure preservation in neighbor embedding like t-SNE and UMAP.

Parameters

ParameterTypeDescription
XT-
parameters?Partial<ParametersSQDMDS>-

Returns

SQDMDS<T>

See

https://arxiv.org/pdf/2202.12087.pdf

Overrides

ts
DR.constructor

Properties

PropertyTypeInherited fromDefined in
__inputTDR.__inputdimred/DR.js:38
_add| (...summands: Float64Array<ArrayBufferLike>[]) => Float64Array<ArrayBufferLike> | undefined-dimred/SQDMDS.js:54
_DnumberDR._Ddimred/DR.js:20
_decay_startnumber | undefined-dimred/SQDMDS.js:96
_distance_exaggerationboolean | undefined-dimred/SQDMDS.js:137
_gradsMatrix | undefined-dimred/SQDMDS.js:63
_HD_metric| (i: number, j: number, X: Matrix) => number | undefined-dimred/SQDMDS.js:73
_HD_metric_exaggeration| (i: number, j: number, X: Matrix) => number | undefined-dimred/SQDMDS.js:75
_indicesnumber[] | undefined-dimred/SQDMDS.js:64
_is_initializedbooleanDR._is_initializeddimred/DR.js:26
_LRnumber | undefined-dimred/SQDMDS.js:59
_LR_initnumber | undefined-dimred/SQDMDS.js:58
_minus| (a: Float64Array<ArrayBufferLike>, b: Float64Array<ArrayBufferLike>) => Float64Array<ArrayBufferLike> | undefined-dimred/SQDMDS.js:56
_momentumsMatrix | undefined-dimred/SQDMDS.js:62
_mult| (a: Float64Array<ArrayBufferLike>, v: number) => Float64Array<ArrayBufferLike> | undefined-dimred/SQDMDS.js:57
_NnumberDR._Ndimred/DR.js:22
_offsetnumber | undefined-dimred/SQDMDS.js:61
_parametersParametersSQDMDSDR._parametersdimred/DR.js:41
_randomizerRandomizerDR._randomizerdimred/DR.js:24
_sub_div| (x: Float64Array<ArrayBufferLike>, y: Float64Array<ArrayBufferLike>, div: number) => Float64Array<ArrayBufferLike> | undefined-dimred/SQDMDS.js:55
_type"array" | "matrix" | "typed"DR._typedimred/DR.js:46
XMatrixDR.Xdimred/DR.js:48
YMatrixDR.Ydimred/DR.js:50

Accessors

projection

Get Signature

ts
get projection(): T;

Defined in: dimred/DR.js:211

Returns

T

The projection in the type of input X.

Inherited from

ts
DR.projection

Methods

__add()

ts
__add(d: number): (...summands: Float64Array<ArrayBufferLike>[]) => Float64Array<ArrayBufferLike>;

Defined in: dimred/SQDMDS.js:425

Inline!

Parameters

ParameterTypeDescription
dnumber-

Returns

ts
(...summands: Float64Array<ArrayBufferLike>[]): Float64Array<ArrayBufferLike>;
Parameters
ParameterType
...summandsFloat64Array<ArrayBufferLike>[]
Returns

Float64Array<ArrayBufferLike>


__minus()

ts
__minus(d: number): (a: Float64Array<ArrayBufferLike>, b: Float64Array<ArrayBufferLike>) => Float64Array<ArrayBufferLike>;

Defined in: dimred/SQDMDS.js:411

Inline!

Parameters

ParameterTypeDescription
dnumber-

Returns

ts
(a: Float64Array<ArrayBufferLike>, b: Float64Array<ArrayBufferLike>): Float64Array<ArrayBufferLike>;
Parameters
ParameterType
aFloat64Array<ArrayBufferLike>
bFloat64Array<ArrayBufferLike>
Returns

Float64Array<ArrayBufferLike>


__mult()

ts
__mult(d: number): (a: Float64Array<ArrayBufferLike>, v: number) => Float64Array<ArrayBufferLike>;

Defined in: dimred/SQDMDS.js:444

Inline!

Parameters

ParameterTypeDescription
dnumber-

Returns

ts
(a: Float64Array<ArrayBufferLike>, v: number): Float64Array<ArrayBufferLike>;
Parameters
ParameterType
aFloat64Array<ArrayBufferLike>
vnumber
Returns

Float64Array<ArrayBufferLike>


__sub_div()

ts
__sub_div(d: number): (x: Float64Array<ArrayBufferLike>, y: Float64Array<ArrayBufferLike>, div: number) => Float64Array<ArrayBufferLike>;

Defined in: dimred/SQDMDS.js:458

Creates a new array (x - y) / div.

Parameters

ParameterTypeDescription
dnumber-

Returns

ts
(
   x: Float64Array<ArrayBufferLike>, 
   y: Float64Array<ArrayBufferLike>, 
div: number): Float64Array<ArrayBufferLike>;
Parameters
ParameterType
xFloat64Array<ArrayBufferLike>
yFloat64Array<ArrayBufferLike>
divnumber
Returns

Float64Array<ArrayBufferLike>


_fill_MDS_grads()

ts
_fill_MDS_grads(
   Y: Matrix, 
   grads: Matrix, 
   exaggeration?: boolean, 
   zero_grad?: boolean): Matrix;

Defined in: dimred/SQDMDS.js:205

Computes the gradients.

Parameters

ParameterTypeDefault valueDescription
YMatrixundefinedThe Projection.
gradsMatrixundefinedThe gradients.
exaggeration?booleanfalseWhether or not to use early exaggeration. Default is false
zero_grad?booleantrueWhether or not to reset the gradient in the beginning. Default is true

Returns

Matrix

The gradients.


check_init()

ts
check_init(): DR<T, ParametersSQDMDS>;

Defined in: dimred/DR.js:202

If the respective DR method has an init function, call it before transform.

Returns

DR<T, ParametersSQDMDS>

Inherited from

ts
DR.check_init

generator()

ts
generator(iterations?: number): Generator<T, T, void>;

Defined in: dimred/SQDMDS.js:109

Computes the projection.

Parameters

ParameterTypeDefault valueDescription
iterations?number500Number of iterations. Default is 500

Returns

Generator<T, T, void>

The intermediate steps of the projection.

Overrides

ts
DR.generator

init()

ts
abstract init(): void;

Defined in: dimred/SQDMDS.js:49

Returns

void

Overrides

ts
DR.init

parameter()

Call Signature

ts
parameter(): ParametersSQDMDS;

Defined in: dimred/DR.js:74

Get all Parameters.

Returns

ParametersSQDMDS

Inherited from
ts
DR.parameter

Call Signature

ts
parameter<K>(name: K): ParametersSQDMDS[K];

Defined in: dimred/DR.js:80

Get value of given parameter.

Type Parameters
Type ParameterDescription
K extends keyof ParametersSQDMDS
Parameters
ParameterTypeDescription
nameKName of the parameter.
Returns

ParametersSQDMDS[K]

Inherited from
ts
DR.parameter

Call Signature

ts
parameter<K>(name: K, value: ParametersSQDMDS[K]): SQDMDS<T>;

Defined in: dimred/DR.js:87

Set value of given parameter.

Type Parameters
Type ParameterDescription
K extends keyof ParametersSQDMDS
Parameters
ParameterTypeDescription
nameKName of the parameter.
valueParametersSQDMDS[K]Value of the parameter to set.
Returns

SQDMDS<T>

Inherited from
ts
DR.parameter

transform()

ts
transform(iterations?: number): T;

Defined in: dimred/SQDMDS.js:93

Computes the projection.

Parameters

ParameterTypeDefault valueDescription
iterations?number500Number of iterations. Default is 500

Returns

T

The projection.

Overrides

ts
DR.transform

transform_async()

ts
transform_async(...args: unknown[]): Promise<T>;

Defined in: dimred/DR.js:233

Computes the projection.

Parameters

ParameterTypeDescription
...argsunknown[]Arguments the transform method of the respective DR method takes.

Returns

Promise<T>

The dimensionality reduced dataset.

Inherited from

ts
DR.transform_async

generator()

ts
static generator<T>(X: T, parameters?: Partial<ParametersSQDMDS>): Generator<T, T, void>;

Defined in: dimred/SQDMDS.js:481

Type Parameters

Type ParameterDescription
T extends InputType

Parameters

ParameterTypeDescription
XT-
parameters?Partial<ParametersSQDMDS>-

Returns

Generator<T, T, void>

Overrides

ts
DR.generator

transform()

ts
static transform<T>(X: T, parameters?: Partial<ParametersSQDMDS>): T;

Defined in: dimred/SQDMDS.js:470

Type Parameters

Type ParameterDescription
T extends InputType

Parameters

ParameterTypeDescription
XT-
parameters?Partial<ParametersSQDMDS>-

Returns

T

Overrides

ts
DR.transform

transform_async()

ts
static transform_async<T>(X: T, parameters?: Partial<ParametersSQDMDS>): Promise<T>;

Defined in: dimred/SQDMDS.js:493

Type Parameters

Type ParameterDescription
T extends InputType

Parameters

ParameterTypeDescription
XT-
parameters?Partial<ParametersSQDMDS>-

Returns

Promise<T>

Overrides

ts
DR.transform_async