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

Class RecursiveExpansionNode


Recursively computable (orthogonal) expansions.
Instance Methods [hide private]
 
__init__(self, degree=1, recf='standard_poly', check=False, with0=True, input_dim=None, dtype=None)
Initialize a RecursiveExpansionNode.
numpy.ndarray
_execute(self, x)
Expansion of the data.
list
_get_supported_dtypes(self)
Return the list of dtypes supported by this node.
 
check_domain(self, x, prec=1e-06)
the function sequence selected is defined or orthogonal.
numpy.ndarray
execute(self, x)
Expansion of the data.
int
expanded_dim(self, num_vars)
Return the size of a vector of dimension 'dim' after an expansion of degree 'self._degree'.

Inherited from unreachable._ExpansionNode (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 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)
 
_stop_training(self, *args, **kwargs)
 
_train(self, x)
 
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. If filename is None, return a string.
 
set_dtype(self, t)
Set internal structures' dtype.
 
set_input_dim(self, n)
Set input dimensions.
 
set_output_dim(self, n)
Set output dimensions.
 
stop_training(self, *args, **kwargs)
Stop the training phase.
 
train(self, x, *args, **kwargs)
Update the internal structures according to the input data x.
Static Methods [hide private]

Inherited from unreachable._ExpansionNode: is_invertible, is_trainable

Instance Variables [hide private]
  lower
The lower bound of the domain on which the recursion function is defined or orthogonal.
  upper
The upper bound of the domain on which the recursion function is defined or orthogonal.
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, degree=1, recf='standard_poly', check=False, with0=True, input_dim=None, dtype=None)
(Constructor)

 
Initialize a RecursiveExpansionNode.
Parameters:
  • degree (int) - The maximum order of the recursive expansion. The dimension of the return for single variable inputs will be equal to this value if with0 == False.
  • recf (tuple or str) - Must be in ['standard_poly', 'legendre_poly', 'legendre_rational', 'chebyshev_poly'] or a tuple similar to those in the recfs dictionary in this module. The procedure on how an init function is built can be found in the docstring of the init and recursion function for standard polynomials init_standard_poly and recf_standard_poly, respectively.
  • check (bool) - Indicates whether the input data will be checked for compliance to the domain on which the function sequence selected is defined or orthogonal. The check will be made automatically in the execute method.
  • with0 (bool) - Parameter that specificies whether the zero-th order element is to be included at the beginning of the result array.
  • input_dim (int) - Dimensionality of the input. Default is None.
  • dtype (numpy.dtype or str) - Datatype of the input. Default is None.
Overrides: object.__init__

_execute(self, x)

 
Expansion of the data.
Parameters:
  • x (numpy.ndarray) - The data to be expanded. Observations/samples must be along the first axis, variables along the second.
Returns: numpy.ndarray
The expansion of x with observations/samples along the first axis and corresponding function values (expansion) along the second axis.
Overrides: Node._execute

_get_supported_dtypes(self)

 
Return the list of dtypes supported by this node.
Returns: list
The list of dtypes supported by this node.
Overrides: Node._get_supported_dtypes

check_domain(self, x, prec=1e-06)

 
Checks for compliance of the data x with the domain on which
the function sequence selected is defined or orthogonal.
Parameters:
  • x (numpy.ndarray) - The data to be expanded. Observations/samples must be along the first axis, variables along the second.
  • prec (float) - (Numerical) tolerance when checking validity.
Raises:
  • mdp.NodeException - If one or more values lie outside of the function specific domain.

execute(self, x)

 
Expansion of the data.
Parameters:
  • x (numpy.ndarray) - The data to be expanded. Observations/samples must be along the first axis, variables along the second.
Returns: numpy.ndarray
The expansion of x with observations/samples along the first axis and corresponding function values (expansion) along the second axis.
Overrides: Node.execute

expanded_dim(self, num_vars)

 
Return the size of a vector of dimension 'dim' after an expansion of degree 'self._degree'.
Parameters:
  • num_vars (int) - The number of variables in the supplied data. This value is equal to x.shape[1].
Returns: int
Overrides: unreachable._ExpansionNode.expanded_dim

Instance Variable Details [hide private]

lower

The lower bound of the domain on which the recursion function is defined or orthogonal.

upper

The upper bound of the domain on which the recursion function is defined or orthogonal.