Skip to content

@saehrimnir/druidjs / TriMap

Class: TriMap<T>

Defined in: dimred/TriMap.js:24

TriMap

A dimensionality reduction technique that preserves both local and global structure using triplets. It is designed to be a more robust alternative to t-SNE and UMAP.

Template

Extends

  • DR

Type Parameters

Type ParameterDescription
T extends InputType

Constructors

Constructor

ts
new TriMap<T>(X: T, parameters?: Partial<ParametersTriMap>): TriMap<T>;

Defined in: dimred/TriMap.js:31

Parameters

ParameterTypeDescription
XTThe high-dimensional data.
parameters?Partial<ParametersTriMap>Object containing parameterization of the DR method.

Returns

TriMap<T>

See

Overrides

ts
DR.constructor

Properties

PropertyTypeInherited fromDefined in
__inputTDR.__inputdimred/DR.js:38
_DnumberDR._Ddimred/DR.js:20
_is_initializedbooleanDR._is_initializeddimred/DR.js:26
_NnumberDR._Ndimred/DR.js:22
_parametersParametersTriMapDR._parametersdimred/DR.js:41
_randomizerRandomizerDR._randomizerdimred/DR.js:24
_type"array" | "matrix" | "typed"DR._typedimred/DR.js:46
Cnumber | undefined-dimred/TriMap.js:68
gainMatrix | undefined-dimred/TriMap.js:70
knn| KNN<number[] | Float64Array<ArrayBufferLike>, any> | undefined-dimred/TriMap.js:63
lrnumber | undefined-dimred/TriMap.js:67
n_inliersnumber | undefined-dimred/TriMap.js:59
n_outliersnumber | undefined-dimred/TriMap.js:60
n_randomnumber | undefined-dimred/TriMap.js:61
tripletsMatrix | undefined-dimred/TriMap.js:65
velMatrix | undefined-dimred/TriMap.js:69
weightsFloat64Array<ArrayBuffer> | undefined-dimred/TriMap.js:66
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

_generate_triplets()

ts
_generate_triplets(
   n_inliers: number, 
   n_outliers: number, 
   n_random: number): {
  triplets: Matrix;
  weights: Float64Array<ArrayBuffer>;
};

Defined in: dimred/TriMap.js:81

Generates n_inliers x n_outliers x n_random triplets.

Parameters

ParameterTypeDescription
n_inliersnumber-
n_outliersnumber-
n_randomnumber-

Returns

ts
{
  triplets: Matrix;
  weights: Float64Array<ArrayBuffer>;
}
NameTypeDefault valueDefined in
tripletsMatrixtripletsdimred/TriMap.js:149
weightsFloat64Array<ArrayBuffer>weightsdimred/TriMap.js:150

_grad()

ts
_grad(Y: Matrix): {
  grad: Matrix;
  loss: number;
  n_viol: number;
};

Defined in: dimred/TriMap.js:299

Computes the gradient for updating the embedding.

Parameters

ParameterTypeDescription
YMatrixThe embedding

Returns

ts
{
  grad: Matrix;
  loss: number;
  n_viol: number;
}
NameTypeDefined in
gradMatrixdimred/TriMap.js:354
lossnumberdimred/TriMap.js:354
n_violnumberdimred/TriMap.js:354

check_init()

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

Defined in: dimred/DR.js:202

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

Returns

DR<T, ParametersTriMap>

Inherited from

ts
DR.check_init

generator()

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

Defined in: dimred/TriMap.js:373

Parameters

ParameterTypeDefault valueDescription
max_iterationnumber800-

Returns

Generator<T, T, void>

Overrides

ts
DR.generator

init()

ts
init(pca?: Matrix | null, knn?: 
  | KNN<number[] | Float64Array<ArrayBufferLike>, any>
| null): TriMap<T>;

Defined in: dimred/TriMap.js:52

Parameters

ParameterTypeDefault valueDescription
pca?Matrix | nullnullInitial Embedding (if null then PCA gets used). Default is null
knn?| KNN<number[] | Float64Array<ArrayBufferLike>, any> | nullnullKNN Object (if null then BallTree gets used). Default is null

Returns

TriMap<T>

Overrides

ts
DR.init

parameter()

Call Signature

ts
parameter(): ParametersTriMap;

Defined in: dimred/DR.js:74

Get all Parameters.

Returns

ParametersTriMap

Inherited from
ts
DR.parameter

Call Signature

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

Defined in: dimred/DR.js:80

Get value of given parameter.

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

ParametersTriMap[K]

Inherited from
ts
DR.parameter

Call Signature

ts
parameter<K>(name: K, value: ParametersTriMap[K]): TriMap<T>;

Defined in: dimred/DR.js:87

Set value of given parameter.

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

TriMap<T>

Inherited from
ts
DR.parameter

transform()

ts
transform(max_iteration?: number): T;

Defined in: dimred/TriMap.js:361

Parameters

ParameterTypeDefault valueDescription
max_iterationnumber800-

Returns

T

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<ParametersTriMap>): Generator<T, T, void>;

Defined in: dimred/TriMap.js:449

Type Parameters

Type ParameterDescription
T extends InputType

Parameters

ParameterTypeDescription
XT-
parameters?Partial<ParametersTriMap>-

Returns

Generator<T, T, void>

Overrides

ts
DR.generator

transform()

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

Defined in: dimred/TriMap.js:438

Type Parameters

Type ParameterDescription
T extends InputType

Parameters

ParameterTypeDescription
XT-
parameters?Partial<ParametersTriMap>-

Returns

T

Overrides

ts
DR.transform

transform_async()

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

Defined in: dimred/TriMap.js:461

Type Parameters

Type ParameterDescription
T extends InputType

Parameters

ParameterTypeDescription
XT-
parameters?Partial<ParametersTriMap>-

Returns

Promise<T>

Overrides

ts
DR.transform_async