parameters: (self, inputs, state, scope=None)
return_statement: return new_alphas, new_alphas
docstring: Build the CrfForwardRnnCell.
  
      Args:
        inputs: A [batch_size, num_tags] matrix of unary potentials.
        state: A [batch_size, num_tags] matrix containing the previous alpha
            values.
        scope: Unused variable scope of this cell.
  
      Returns:
        new_alphas, new_alphas: A pair of [batch_size, num_tags] matrices
            values containing the new alpha values.
docstring_summary: Build the CrfForwardRnnCell.
docstring_tokens: Build the CrfForwardRnnCell .
function: def __call__(self, inputs, state, scope=None):
      """Build the CrfForwardRnnCell.
  
      Args:
        inputs: A [batch_size, num_tags] matrix of unary potentials.
        state: A [batch_size, num_tags] matrix containing the previous alpha
            values.
        scope: Unused variable scope of this cell.
  
      Returns:
        new_alphas, new_alphas: A pair of [batch_size, num_tags] matrices
            values containing the new alpha values.
      """
      state = array_ops.expand_dims(state, 2)
  
      # This addition op broadcasts self._transitions_params along the zeroth
      # dimension and state along the second dimension. This performs the
      # multiplication of previous alpha values and the current binary potentials
      # in log space.
      transition_scores = state + self._transition_params
      new_alphas = inputs + math_ops.reduce_logsumexp(transition_scores, [1])
  
      # Both the state and the output of this RNN cell contain the alphas values.
      # The output value is currently unused and simply satisfies the RNN API.
      # This could be useful in the future if we need to compute marginal
      # probabilities, which would require the accumulated alpha values at every
      # time step.
      return new_alphas, new_alphas
function_tokens: def __call__ ( self , inputs , state , scope = None ) : state = array_ops . expand_dims ( state , 2 ) # This addition op broadcasts self._transitions_params along the zeroth # dimension and state along the second dimension. This performs the # multiplication of previous alpha values and the current binary potentials # in log space. transition_scores = state + self . _transition_params new_alphas = inputs + math_ops . reduce_logsumexp ( transition_scores , [ 1 ] ) # Both the state and the output of this RNN cell contain the alphas values. # The output value is currently unused and simply satisfies the RNN API. # This could be useful in the future if we need to compute marginal # probabilities, which would require the accumulated alpha values at every # time step. return new_alphas , new_alphas