def __call__(self, inputs, state, scope=None):
"""Most basic RNN: output = new_state = activation(W * input + U * state + B)."""
with vs.variable_scope(scope or type(self).__name__): # "BasicRNNCell"
state_out = linearTransformIdentityInit(state, self._num_units)
if self._bottom == True:
input_out = linearTransformWithBias([inputs], self._num_units, bias=False, scope=scope)
else:
input_out = linearTransformIdentityInit(inputs, self._num_units, scope=scope)
bias = vs.get_variable(
"input_bias", [self._num_units],
dtype=tf.float32,
initializer=init_ops.constant_initializer(dtype=tf.float32))
output = tf.abs(state_out + input_out + bias)
return output, output
评论列表
文章目录