Home Reference Source
public class | source

KNN

Extends:

EstimatorClassifierNeighbors → KNN

k-nearest neighbours learner. Classifies points based on the (possibly weighted) vote of its k nearest neighbours (euclidian distance).

Constructor Summary

Public Constructor
public

constructor(optionsUser: Object)

Constructor.

Member Summary

Public Members
public
public

training: {"X": *, "y": *}

Method Summary

Public Methods
public

predict(X: *): *

public

predictSample(sampleFeatures: Array<number>): mixed

Make a prediction for a single sample.

public

train(X: *, y: *)

Inherited Summary

From class Estimator
public abstract

predict(X: Array<Array<number>>): Array<mixed>

Make a prediction for a data set.

public abstract

train(X: Array<Array<number>>, y: Array<mixed>)

Train the supervised learning algorithm on a dataset.

From class Neighbors
public

training: {"X": *, "y": *}

public

train(X: *, y: *)

Public Constructors

public constructor(optionsUser: Object) source

Constructor. Initialize class members and store user-defined options.

Params:

NameTypeAttributeDescription
optionsUser Object
  • optional

User-defined options for KNN

optionsUser.numNeighbours number
  • optional
  • default: 3

Number of nearest neighbours to consider for the majority vote

Public Members

public numNeighbours: * source

public training: {"X": *, "y": *} source

Override:

Neighbors#training

Public Methods

public predict(X: *): * source

Make a prediction for a data set.

Override:

Estimator#predict

Params:

NameTypeAttributeDescription
X *

Return:

*

See:

public predictSample(sampleFeatures: Array<number>): mixed source

Make a prediction for a single sample.

Params:

NameTypeAttributeDescription
sampleFeatures Array<number>

Data point features

Return:

mixed

Prediction. Label of class with highest prevalence among k nearest neighbours

public train(X: *, y: *) source

Train the supervised learning algorithm on a dataset.

Override:

Neighbors#train

Params:

NameTypeAttributeDescription
X *
y *

See: