Package mvpa :: Package clfs :: Module knn :: Class kNN
[hide private]
[frames] | no frames]

Class kNN

source code


k-nearest-neighbour classifier.

If enabled, it stores the votes per class in the 'values' state after calling predict().

Nested Classes [hide private]

Inherited from misc.state.ClassWithCollections: __metaclass__

Instance Methods [hide private]
 
__init__(self, k=2, dfx=squared_euclidean_distance, voting='weighted', **kwargs)
Cheap initialization.
source code
 
__repr__(self)
Representation of the object
source code
 
__str__(self)
str(x)
source code
 
_train(self, data)
Train the classifier.
source code
 
_predict(self, data)
Predict the class labels for the provided data.
source code
 
getMajorityVote(self, knn_ids)
Simple voting by choosing the majority of class neighbours.
source code
 
getWeightedVote(self, knn_ids)
Vote with classes weighted by the number of samples per class.
source code
 
untrain(self)
Reset trained state
source code

Inherited from base.Classifier: getSensitivityAnalyzer, isTrained, predict, repredict, retrain, summary, train, trained

Inherited from misc.state.ClassWithCollections: __getattribute__, __new__, __setattr__, reset

Inherited from object: __delattr__, __format__, __hash__, __reduce__, __reduce_ex__, __sizeof__, __subclasshook__

Class Variables [hide private]
  _clf_internals = ['knn', 'non-linear', 'binary', 'multiclass',...
Describes some specifics about the classifier -- is that it is doing regression for instance....
  __doc__ = enhancedDocString('kNN', locals(), Classifier)

Inherited from base.Classifier: _DEV__doc__, feature_ids, predicting_time, predictions, regression, retrainable, trained_dataset, trained_labels, training_confusion, training_time, values

Inherited from misc.state.ClassWithCollections: descr

Properties [hide private]

Inherited from object: __class__

Method Details [hide private]

__init__(self, k=2, dfx=squared_euclidean_distance, voting='weighted', **kwargs)
(Constructor)

source code 
Cheap initialization.
Overrides: object.__init__

Parameters:

k: unsigned integer
Number of nearest neighbours to be used for voting.
dfx: functor
Function to compute the distances between training and test samples. Default: squared euclidean distance
voting: str
Voting method used to derive predictions from the nearest neighbors. Possible values are 'majority' (simple majority of classes determines vote) and 'weighted' (votes are weighted according to the relative frequencies of each class in the training data).
**kwargs:
Additonal arguments are passed to the base class.

__repr__(self)
(Representation operator)

source code 
Representation of the object
Parameters:
  • fullname - Either to include full name of the module
  • prefixes - What other prefixes to prepend to list of arguments
Overrides: object.__repr__

__str__(self)
(Informal representation operator)

source code 
str(x)
Overrides: object.__str__
(inherited documentation)

_train(self, data)

source code 

Train the classifier.

For kNN it is degenerate -- just stores the data.

Overrides: base.Classifier._train

_predict(self, data)

source code 

Predict the class labels for the provided data.

Returns a list of class labels (one for each data sample).

Overrides: base.Classifier._predict

untrain(self)

source code 
Reset trained state
Overrides: base.Classifier.untrain

Class Variable Details [hide private]

_clf_internals

Describes some specifics about the classifier -- is that it is doing regression for instance....
Value:
['knn', 'non-linear', 'binary', 'multiclass', 'notrain2predict']