NAME
AI::MXNet::RNN::Params - A container for holding variables.
|
DESCRIPTION
A container for holding variables.
Used by RNN cells for parameter sharing between cells.
Parameters
----------
prefix : str
All variables name created by this container will
be prepended with the prefix
|
get
Get a variable with the name or create a new one if does not exist.
Parameters
----------
$name : str
name of the variable
@kwargs :
more arguments that are passed to mx->sym->Variable call
|
NAME
DESCRIPTION
Abstract base class for RNN cells
Parameters
----------
prefix : str
prefix for name of layers
(and name of weight if params is undef )
params : AI::MXNet::RNN::Params or undef
container for weight sharing between cells.
created if undef .
|
reset
Reset before re-using the cell for another graph
|
call
Construct symbol for one step of RNN.
Parameters
----------
$inputs : mx->sym->Variable
input symbol, 2D, batch * num_units
$states : mx->sym->Variable or ArrayRef[AI::MXNet::Symbol]
state from previous step or begin_state().
Returns
-------
$output : AI::MXNet::Symbol
output symbol
$states : ArrayRef[AI::MXNet::Symbol]
state to next step of RNN.
Can be called via overloaded &{}: &{ $cell }( $inputs , $states );
|
params
state_shape
state_info
shape and layout information of states
|
begin_state
Initial state for this cell.
Parameters
----------
: $func : sub ref , default is AI::MXNet::Symbol->can( 'zeros' )
Function for creating initial state.
Can be AI::MXNet::Symbol->can( 'zeros' ),
AI::MXNet::Symbol->can( 'uniform' ), AI::MXNet::Symbol->can( 'Variable' ) etc.
Use AI::MXNet::Symbol->can( 'Variable' ) if you want to directly
feed the input as states.
@kwargs :
more keyword arguments passed to func. For example
mean, std, dtype, etc.
Returns
-------
$states : ArrayRef[AI::MXNet::Symbol]
starting states for first RNN step
|
unpack_weights
Unpack fused weight matrices into separate
weight matrices
Parameters
----------
$args : HashRef[AI::MXNet::NDArray]
hash ref containing packed weights.
usually from AI::MXNet::Module->get_output()
Returns
-------
$args : HashRef[AI::MXNet::NDArray]
hash ref with weights associated with
this cell, unpacked.
|
pack_weights
Pack fused weight matrices into common
weight matrices
Parameters
----------
args : HashRef[AI::MXNet::NDArray]
hash ref containing unpacked weights.
Returns
-------
$args : HashRef[AI::MXNet::NDArray]
hash ref with weights associated with
this cell, packed.
|
unroll
Unroll an RNN cell across time steps.
Parameters
----------
: $length : Int
number of steps to unroll
: $inputs : AI::MXNet::Symbol, array ref of Symbols, or undef
if inputs is a single Symbol (usually the output
of Embedding symbol), it should have shape
of [ $batch_size , $length , ...] if layout == 'NTC' (batch, time series)
or ( $length , $batch_size , ...) if layout == 'TNC' ( time series, batch).
If inputs is a array ref of symbols (usually output of
previous unroll), they should all have shape
( $batch_size , ...).
If inputs is undef , a placeholder variables are
automatically created.
: $begin_state : array ref of Symbol
input states. Created by begin_state()
or output state of another cell. Created
from begin_state() if undef .
: $input_prefix : str
prefix for automatically created input
placehodlers.
: $layout : str
layout of input symbol. Only used if the input
is a single Symbol.
: $merge_outputs : Bool
If 0, returns outputs as an array ref of Symbols.
If 1, concatenates the output across the time steps
and returns a single symbol with the shape
[ $batch_size , $length , ...) if the layout equal to 'NTC' ,
or [ $length , $batch_size , ...) if the layout equal tp 'TNC' .
If undef , output whatever is faster
Returns
-------
$outputs : array ref of Symbol or Symbol
output symbols.
$states : Symbol or nested list of Symbol
has the same structure as begin_state()
|
NAME
DESCRIPTION
Simple recurrent neural network cell
Parameters
----------
num_hidden : int
number of units in output symbol
activation : str or Symbol, default 'tanh'
type of activation function
prefix : str, default 'rnn_'
prefix for name of layers
(and name of weight if params is undef )
params : AI::MXNet::RNNParams or undef
container for weight sharing between cells.
created if undef .
|
NAME
DESCRIPTION
Long-Short Term Memory (LSTM) network cell.
Parameters
----------
num_hidden : int
number of units in output symbol
prefix : str, default 'lstm_'
prefix for name of layers
(and name of weight if params is undef )
params : AI::MXNet::RNN::Params or None
container for weight sharing between cells.
created if undef .
forget_bias : bias added to forget gate, default 1.0.
Jozefowicz et al. 2015 recommends setting this to 1.0
|
NAME
DESCRIPTION
Gated Rectified Unit (GRU) network cell.
Note: this is an implementation of the cuDNN version of GRUs
(slight modification compared to Cho et al. 2014).
Parameters
----------
num_hidden : int
number of units in output symbol
prefix : str, default 'gru_'
prefix for name of layers
(and name of weight if params is undef )
params : AI::MXNet::RNN::Params or undef
container for weight sharing between cells.
created if undef .
|
NAME
AI::MXNet::RNN::FusedCell
|
DESCRIPTION
Fusing RNN layers across time step into one kernel.
Improves speed but is less flexible. Currently only
supported if using cuDNN on GPU.
|
unfuse
Unfuse the fused RNN
Returns
-------
$cell : AI::MXNet::RNN::SequentialCell
unfused cell that can be used for stepping, and can run on CPU.
|
NAME
AI:MXNet::RNN::SequentialCell
|
DESCRIPTION
Sequentially stacking multiple RNN cells
Parameters
----------
params : AI::MXNet::RNN::Params or undef
container for weight sharing between cells.
created if undef .
|
add
Append a cell to the stack.
Parameters
----------
$cell : AI::MXNet::RNN::Cell::Base
|
NAME
AI::MXNet::RNN::BidirectionalCell
|
DESCRIPTION
Bidirectional RNN cell
Parameters
----------
l_cell : AI::MXNet::RNN::Cell::Base
cell for forward unrolling
r_cell : AI::MXNet::RNN::Cell::Base
cell for backward unrolling
output_prefix : str, default 'bi_'
prefix for name of output
|
NAME
AI::MXNet::RNN::Conv::Base
|
DESCRIPTION
Abstract base class for Convolutional RNN cells
|
NAME
DESCRIPTION
Convolutional RNN cells
Parameters
----------
input_shape : array ref of int
Shape of input in single timestep.
num_hidden : int
Number of units in output symbol.
h2h_kernel : array ref of int , default (3, 3)
Kernel of Convolution operator in state-to-state transitions.
h2h_dilate : array ref of int , default (1, 1)
Dilation of Convolution operator in state-to-state transitions.
i2h_kernel : array ref of int , default (3, 3)
Kernel of Convolution operator in input-to-state transitions.
i2h_stride : array ref of int , default (1, 1)
Stride of Convolution operator in input-to-state transitions.
i2h_pad : array ref of int , default (1, 1)
Pad of Convolution operator in input-to-state transitions.
i2h_dilate : array ref of int , default (1, 1)
Dilation of Convolution operator in input-to-state transitions.
activation : str or Symbol,
default functools.partial(symbol.LeakyReLU, act_type= 'leaky' , slope=0.2)
Type of activation function.
prefix : str, default 'ConvRNN_'
Prefix for name of layers (and name of weight if params is None).
params : RNNParams, default None
Container for weight sharing between cells. Created if None.
conv_layout : str, , default 'NCHW'
Layout of ConvolutionOp
|
NAME
AI::MXNet::RNN::ConvLSTMCell
|
DESCRIPTION
Convolutional LSTM network cell.
Reference:
Xingjian et al. NIPS2015
|
NAME
AI::MXNet::RNN::ConvGRUCell
|
DESCRIPTION
Convolutional GRU network cell.
|
NAME
AI::MXNet::RNN::ModifierCell
|
DESCRIPTION
Base class for modifier cells. A modifier
cell takes a base cell, apply modifications
on it (e.g. Dropout), and returns a new cell.
After applying modifiers the base cell should
no longer be called directly. The modifer cell
should be used instead.
|
NAME
AI::MXNet::RNN::DropoutCell
|
DESCRIPTION
Apply the dropout on base cell
|
NAME
AI::MXNet::RNN::ZoneoutCell
|
DESCRIPTION
Apply Zoneout on base cell.
|
NAME
AI::MXNet::RNN::ResidualCell
|
DESCRIPTION
Adds residual connection as described in Wu et al, 2016
Output of the cell is output of the base cell plus input.
|