tf.contrib.rnn.LSTMCell 和 tf.nn.rnn_cell.LSTMCell
程序员文章站
2022-07-13 11:38:54
...
tf.contrib.rnn.LSTMCell 和 tf.nn.rnn_cell.LSTMCell 两个是一样的
tf.nn.rnn_cell_LSTMCell()
__init__(
num_units,
use_peepholes=False,
cell_clip=None,
initializer=None,
num_proj=None,
proj_clip=None,
num_unit_shards=None,
num_proj_shards=None,
forget_bias=1.0,
state_is_tuple=True,
activation=None,
reuse=None,
name=None,
dtype=None,
**kwargs
)
'''
Args:
num_units: int, The number of units in the LSTM cell.
use_peepholes: bool, set True to enable diagonal/peephole connections.
cell_clip: (optional) A float value, if provided the cell state is clipped by this value prior to the cell output activation.
initializer: (optional) The initializer to use for the weight and projection matrices.
num_proj: (optional) int, The output dimensionality for the projection matrices. If None, no projection is performed.
proj_clip: (optional) A float value. If num_proj > 0 and proj_clip is provided, then the projected values are clipped elementwise to within [-proj_clip, proj_clip].
num_unit_shards: Deprecated, will be removed by Jan. 2017. Use a variable_scope partitioner instead.
num_proj_shards: Deprecated, will be removed by Jan. 2017. Use a variable_scope partitioner instead.
forget_bias: Biases of the forget gate are initialized by default to 1 in order to reduce the scale of forgetting at the beginning of the training. Must set it manually to 0.0 when restoring from CudnnLSTM trained checkpoints.
state_is_tuple: If True, accepted and returned states are 2-tuples of the c_state and m_state. If False, they are concatenated along the column axis. This latter behavior will soon be deprecated.
activation: Activation function of the inner states. Default: tanh. It could also be string that is within Keras activation function names.
reuse: (optional) Python boolean describing whether to reuse variables in an existing scope. If not True, and the existing scope already has the given variables, an error is raised.
name: String, the name of the layer. Layers with the same name will share weights, but to avoid mistakes we require reuse=True in such cases.
dtype: Default dtype of the layer (default of None means use the type of the first input). Required when build is called before call.
**kwargs: Dict, keyword named properties for common layer attributes, like trainable etc when constructing the cell from configs of get_config().
When restoring from CudnnLSTM-trained checkpoints, use CudnnCompatibleLSTMCell instead.
'''
简单介绍 和主要参数说明
这个API是一个python class,使用参数初始化后,返回一个LSTM cell instance(Long short-term memory unit (LSTM)
num_units: int, The number of units in the LSTM cell 网络的“宽度”
cell_clip:(可选) 一个float类型的值,通常是5.0,如果提供,则在单元输出到**函数之前通过该值剪辑单元状态。
initializer: (可选)用于权重参数的初始化器。tf.initializer.XXX
num_proj: (可选)一个int型的数值,投影矩阵的输出维数。如果没有,则不执行投影。(就是我们平时在rnn输出上加一个全连接网络,这里就是那个全连接网络的维度)
state_is_tuple:默认为True,接受状态和返回状态是(c_state,m_state)元组。如果为False,则沿列轴连接它们,只返回一个concate([c_state,m_state],axis=-1)