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

Class AdaptiveCutoffNode


Node which uses the data history during training to learn cutoff values.

As opposed to the simple ``CutoffNode``, a different cutoff value is learned
for each data coordinate. For example if an upper cutoff fraction of
0.05 is specified, then the upper cutoff bound is set so that the upper
5% of the training data would have been clipped (in each dimension).
The cutoff bounds are then applied during execution.
This node also works as a ``HistogramNode``, so the histogram data is stored.

When ``stop_training`` is called the cutoff values for each coordinate are
calculated based on the collected histogram data.

Instance Methods [hide private]
 
__init__(self, lower_cutoff_fraction=None, upper_cutoff_fraction=None, hist_fraction=1.0, hist_filename=None, input_dim=None, output_dim=None, dtype=None)
Initialize the node.
 
_execute(self, x)
Return the clipped data.
 
_get_supported_dtypes(self)
Return the list of dtypes supported by this node.
 
_stop_training(self)
Calculate the cutoff bounds based on collected histogram data.
 
execute(self, x)
Return the clipped data.
 
stop_training(self)
Calculate the cutoff bounds based on collected histogram data.

Inherited from PreserveDimNode (private): _set_input_dim, _set_output_dim

Inherited from unreachable.newobject: __long__, __native__, __nonzero__, __unicode__, next

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

    Inherited from HistogramNode
 
_train(self, x)
Store the history data.
 
train(self, x)
Store the history data.
    Inherited from Node
 
__add__(self, other)
 
__call__(self, x, *args, **kwargs)
Calling an instance of `Node` is equivalent to calling its `execute` method.
 
__repr__(self)
repr(x)
 
__str__(self)
str(x)
 
_check_input(self, x)
 
_check_output(self, y)
 
_check_train_args(self, x, *args, **kwargs)
 
_get_train_seq(self)
 
_if_training_stop_training(self)
 
_inverse(self, x)
 
_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)
 
copy(self, protocol=None)
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.
 
has_multiple_training_phases(self)
Return True if the node has multiple training phases.
 
inverse(self, y, *args, **kwargs)
Invert `y`.
 
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.
Static Methods [hide private]
    Inherited from Node
 
is_invertible()
Return True if the node can be inverted, False otherwise.
 
is_trainable()
Return True if the node can be trained, False otherwise.
Properties [hide private]

Inherited from object: __class__

    Inherited from Node
  _train_seq
List of tuples::
  dtype
dtype
  input_dim
Input dimensions
  output_dim
Output dimensions
  supported_dtypes
Supported dtypes
Method Details [hide private]

__init__(self, lower_cutoff_fraction=None, upper_cutoff_fraction=None, hist_fraction=1.0, hist_filename=None, input_dim=None, output_dim=None, dtype=None)
(Constructor)

 
Initialize the node.

:Parameters:
  lower_cutoff_fraction
    Fraction of data that will be cut off after
    the training phase (assuming the data distribution does not
    change). If set to ``None`` (default value) no cutoff is performed.
  upper_cutoff_fraction
    Works like `lower_cutoff_fraction`.
  hist_fraction
    Defines the fraction of the data that is stored for the
    histogram.
  hist_filename
    Filename for the file to which the data history will be
    pickled after training. The data is pickled when
    `stop_training` is called and ``data_hist`` is then
    cleared (to free memory).  If filename is ``None``
    (default value) then ``data_hist`` is not cleared and can
    be directly used after training.

Overrides: object.__init__

_execute(self, x)

 
Return the clipped data.

Overrides: Node._execute

_get_supported_dtypes(self)

 
Return the list of dtypes supported by this node.

The types can be specified in any format allowed by :numpy:`dtype`.

Overrides: Node._get_supported_dtypes
(inherited documentation)

_stop_training(self)

 
Calculate the cutoff bounds based on collected histogram data.

Overrides: Node._stop_training

execute(self, x)

 
Return the clipped data.

Overrides: Node.execute

stop_training(self)

 
Calculate the cutoff bounds based on collected histogram data.

Overrides: Node.stop_training