Package mdp :: Package nodes :: Class WhiteningNode
[hide private]
[frames] | no frames]

Class WhiteningNode


'Whiten' the input data by filtering it through the most
significatives of its principal components. All output
signals have zero mean, unit variance and are decorrelated.

Internal variables of interest:
self.avg -- Mean of the input data (available after training)
self.v -- Transpose of the projection matrix (available after training)
self.d -- Variance corresponding to the PCA components
          (eigenvalues of the covariance matrix).
self.explained_variance -- When output_dim has been specified as a fraction
                           of the total variance, this is the fraction
                           of the total variance that is actually explained

Nested Classes [hide private]
    Inherited from Node
  __metaclass__
This Metaclass is meant to overwrite doc strings of methods like execute, stop_training, inverse with the ones defined in the corresponding private methods _execute, _stop_training, _inverse, etc...
Instance Methods [hide private]
 
_stop_training(self, debug=False)
Stop the training phase.
 
get_eigenvectors(self)
Return the eigenvectors of the covariance matrix.
 
get_recmatrix(self, transposed=1)
Return the back-projection matrix (i.e.

Inherited from object: __delattr__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __setattr__

    Inherited from PCANode
 
__init__(self, input_dim=None, output_dim=None, dtype=None, svd=False, reduce=False, var_rel=1e-12, var_abs=1e-15, var_part=None)
The number of principal components to be kept can be specified as 'output_dim' directly (e.g.
 
_adjust_output_dim(self)
Return the eigenvector range and set the output dim if required.
 
_check_output(self, y)
 
_execute(self, x, n=None)
Project the input on the first 'n' principal components.
 
_get_supported_dtypes(self)
Return the list of dtypes supported by this node.
 
_inverse(self, y, n=None)
Project 'y' to the input space using the first 'n' components.
 
_set_output_dim(self, n)
 
_train(self, x)
 
execute(self, x, *args, **kargs)
Project the input on the first 'n' principal components.
 
get_explained_variance(self)
Return the fraction of the original variance that can be explained by self._output_dim PCA components.
 
get_projmatrix(self, transposed=1)
Return the projection matrix.
 
inverse(self, y, *args, **kargs)
Project 'y' to the input space using the first 'n' components.
 
stop_training(self, *args, **kwargs)
Stop the training phase.
    Inherited from Node
 
__add__(self, other)
 
__call__(self, x, *args, **kargs)
Calling an instance of Node is equivalent to call its 'execute' method.
 
__repr__(self)
repr(x)
 
__str__(self)
str(x)
 
_check_input(self, x)
 
_check_train_args(self, x, *args, **kwargs)
 
_get_train_seq(self)
 
_if_training_stop_training(self)
 
_pre_execution_checks(self, x)
This method contains all pre-execution checks.
 
_pre_inversion_checks(self, y)
This method contains all pre-inversion checks.
 
_refcast(self, x)
Helper function to cast arrays to the internal dtype.
 
_set_dtype(self, t)
 
_set_input_dim(self, n)
 
copy(self, protocol=-1)
Return a deep copy of the node.
 
get_current_train_phase(self)
Return the index of the current training phase.
 
get_dtype(self)
Return dtype.
 
get_input_dim(self)
Return input dimensions.
 
get_output_dim(self)
Return output dimensions.
 
get_remaining_train_phase(self)
Return the number of training phases still to accomplish.
 
get_supported_dtypes(self)
Return dtypes supported by the node as a list of numpy.dtype objects.
 
is_invertible(self)
Return True if the node can be inverted, False otherwise.
 
is_trainable(self)
Return True if the node can be trained, False otherwise.
 
is_training(self)
Return True if the node is in the training phase, False otherwise.
 
save(self, filename, protocol=-1)
Save a pickled serialization of the node to 'filename'.
 
set_dtype(self, t)
Set internal structures' dtype.
 
set_input_dim(self, n)
Set input dimensions.
 
set_output_dim(self, n)
Set output dimensions.
 
train(self, x, *args, **kwargs)
Update the internal structures according to the input data 'x'.
Properties [hide private]

Inherited from object: __class__

    Inherited from Node
  _train_seq
List of tuples: [(training-phase1, stop-training-phase1), (training-phase2, stop_training-phase2), ...
  dtype
dtype
  input_dim
Input dimensions
  output_dim
Output dimensions
  supported_dtypes
Supported dtypes
Method Details [hide private]

_stop_training(self, debug=False)

 
Stop the training phase.

Keyword arguments:

debug=True     if stop_training fails because of singular cov
               matrices, the singular matrices itselves are stored in
               self.cov_mtx and self.dcov_mtx to be examined.

Overrides: Node._stop_training

get_eigenvectors(self)

 
Return the eigenvectors of the covariance matrix.

get_recmatrix(self, transposed=1)

 
Return the back-projection matrix (i.e. the reconstruction matrix).
        

Overrides: PCANode.get_recmatrix