parameters: (
        self, index, value, noise, keep_prob)
return_statement: return ret
docstring: Performs dropout given the pre-calculated noise tensor.
docstring_summary: Performs dropout given the pre-calculated noise tensor.
docstring_tokens: Performs dropout given the pre - calculated noise tensor .
function: def _variational_recurrent_dropout_value(
        self, index, value, noise, keep_prob):
      """Performs dropout given the pre-calculated noise tensor."""
      # uniform [keep_prob, 1.0 + keep_prob)
      random_tensor = keep_prob + noise
  
      # 0. if [keep_prob, 1.0) and 1. if [1.0, 1.0 + keep_prob)
      binary_tensor = math_ops.floor(random_tensor)
      ret = math_ops.div(value, keep_prob) * binary_tensor
      ret.set_shape(value.get_shape())
      return ret
function_tokens: def _variational_recurrent_dropout_value ( self , index , value , noise , keep_prob ) : # uniform [keep_prob, 1.0 + keep_prob) random_tensor = keep_prob + noise # 0. if [keep_prob, 1.0) and 1. if [1.0, 1.0 + keep_prob) binary_tensor = math_ops . floor ( random_tensor ) ret = math_ops . div ( value , keep_prob ) * binary_tensor ret . set_shape ( value . get_shape ( ) ) return ret