Package mdp :: Package hinet :: Class Rectangular2dSwitchboard
[hide private]
[frames] | no frames]

Class Rectangular2dSwitchboard


Switchboard for a 2-dimensional topology.

This is a specialized version of SwitchboardLayer that makes it easy to
implement connection topologies which are based on a 2-dimensional network
layers.

The input connections are assumed to be grouped into so called channels,
which are considered as lying in a two dimensional rectangular plane.
Each output channel corresponds to a 2d rectangular field in the
input plane. The fields can overlap.

The coordinates follow the standard image convention (see the above
CoordinateTranslator class).

public attributes (in addition to init arguments and inherited attributes):
    unused_channels_xy
    out_channels_xy

Instance Methods [hide private]
 
__init__(self, in_channels_xy, field_channels_xy, field_spacing_xy=1, in_channel_dim=1, ignore_cover=False)
Calculate the connections.

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 ChannelSwitchboard
 
get_out_channel_input(self, channel)
Return the input connections for the given channel index.
 
get_out_channel_node(self, channel)
Return a Switchboard that does the routing for a single output channel.
 
get_out_channels_input_channels(self, channels)
Return array of input channel indices for the given output channels.
    Inherited from Switchboard
 
_execute(self, x)
 
_get_supported_dtypes(self)
Return the list of dtypes supported by this node.
 
_inverse(self, x)
 
execute(self, x)
Process the data contained in `x`.
 
inverse(self, x)
Invert `y`.
 
is_invertible(self)
Return True if the node can be inverted, False otherwise.
    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)
 
_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)
 
_set_output_dim(self, n)
 
_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.
 
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 Switchboard
 
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, in_channels_xy, field_channels_xy, field_spacing_xy=1, in_channel_dim=1, ignore_cover=False)
(Constructor)

 
Calculate the connections.

Keyword arguments:
in_channels_xy -- 2-Tuple with number of input channels in the x- and
    y-direction (or a single number for both). This has to be
    specified, since the actual input is only one 1d array.
field_channels_xy -- 2-Tuple with number of channels in each field in
    the x- and y-direction (or a single number for both).
field_spacing_xy -- 2-Tuple with offset between two fields in the x-
    and y-direction (or a single number for both).
in_channel_dim -- Number of connections per input channel.
ignore_cover -- Boolean value defines if an
    Rectangular2dSwitchboardException is raised when the fields do not
    cover all input channels. Set this to True if you are willing to
    risk loosing input channels at the border.

Overrides: object.__init__