message: Update recurrent Keras layers with less cryptic messages
diff: @@ -1314,15 +1314,17 @@ class SimpleRNNCell(DropoutRNNCellMixin, Layer):
  dropout=0.,
  recurrent_dropout=0.,
  **kwargs):
  + # Validate the input arguments first, to try and prevent
  + # any unnecessary computations with invalid arguments.
  + if units < 0:
  + raise ValueError(f"Received an invalid value for units, expected
  + f"a positive integer, got {units}.")
  # By default use cached variable under v2 mode, see b/143699808.
  if ops.executing_eagerly_outside_functions():
  self._enable_caching_device = kwargs.pop('enable_caching_device', True)
  else:
  self._enable_caching_device = kwargs.pop('enable_caching_device', False)
  super(SimpleRNNCell, self).__init__(**kwargs)
  - if units < 0:
  - raise ValueError("Received a negative value for `units`, ",
  - "expected a positive value.")
  self.units = units
  self.activation = activations.get(activation)
  self.use_bias = use_bias
  @@ -1755,15 +1757,17 @@ class GRUCell(DropoutRNNCellMixin, Layer):
  recurrent_dropout=0.,
  reset_after=False,
  **kwargs):
  + # Validate the input arguments first, to try and prevent
  + # any unnecessary computations with invalid arguments.
  + if units < 0:
  + raise ValueError(f"Received an invalid value for units, expected
  + f"a positive integer, got {units}.")
  # By default use cached variable under v2 mode, see b/143699808.
  if ops.executing_eagerly_outside_functions():
  self._enable_caching_device = kwargs.pop('enable_caching_device', True)
  else:
  self._enable_caching_device = kwargs.pop('enable_caching_device', False)
  super(GRUCell, self).__init__(**kwargs)
  - if units < 0:
  - raise ValueError("Received an negative value for `units`, "
  - "expected a positive value.")
  self.units = units
  self.activation = activations.get(activation)
  self.recurrent_activation = activations.get(recurrent_activation)
  @@ -2318,15 +2322,17 @@ class LSTMCell(DropoutRNNCellMixin, Layer):
  dropout=0.,
  recurrent_dropout=0.,
  **kwargs):
  + # Validate the input arguments first, to try and prevent
  + # any unnecessary computations with invalid arguments.
  + if units < 0:
  + raise ValueError(f"Received an invalid value for units, expected
  + f"a positive integer, got {units}.")
  # By default use cached variable under v2 mode, see b/143699808.
  if ops.executing_eagerly_outside_functions():
  self._enable_caching_device = kwargs.pop('enable_caching_device', True)
  else:
  self._enable_caching_device = kwargs.pop('enable_caching_device', False)
  super(LSTMCell, self).__init__(**kwargs)
  - if units < 0:
  - raise ValueError("Received a negative value for `units`, "
  - "expected a postiive value.")
  self.units = units
  self.activation = activations.get(activation)
  self.recurrent_activation = activations.get(recurrent_activation)
  