class_docstr: Abstract base class for different Scalarizers.
  
  The Scalarizer class is a callable that transforms multiple objectives into
  a single scalar reward.
class_docstr_tok: ["Abstract","base","class","for","different","Scalarizers",".","The","Scalarizer","class","is","a","callable","that","transforms","multiple","objectives","into","a","single","scalar","reward","."]
docstr: Validates the scalarization parameters.
  
  Each scalarization parameter in the input dictionary should be a rank-2
  tensor, and the last dimension size should match `self._num_of_objectives`.
  
  Args:
    params: A dictionary from parameter names to parameter tensors.
  
  Raises:
    ValueError: if any input scalarization parameter violates any of the
    required properties.
docstr_tok: ["Validates","the","scalarization","parameters",".","Each","scalarization","parameter","in","the","input","dictionary","should","be","a","rank-2","tensor",",","and","the","last","dimension","size","should","match","`","self._num_of_objectives","`",".","Args",":","params",":","A","dictionary","from","parameter","names","to","parameter","tensors",".","Raises",":","ValueError",":","if","any","input","scalarization","parameter","violates","any","of","the","required","properties","."]
code: def _validate_scalarization_parameters(
      self, params: Dict[str, tf.Tensor]
  ):
      """Validates the scalarization parameters.
  
      Each scalarization parameter in the input dictionary should be a rank-2
      tensor, and the last dimension size should match `self._num_of_objectives`.
  
      Args:
        params: A dictionary from parameter names to parameter tensors.
  
      Raises:
        ValueError: if any input scalarization parameter violates any of the
        required properties.
      """
      for param_name, param in params.items():
          if param.shape.rank != 2:
              raise ValueError(
                  "Scalarization parameter: {} should be a rank-2 tensor with shape "
                  "[batch_size, num_of_objectives], but found to be: {}".format(
                      param_name, param
                  )
              )
          elif param.shape.dims[-1] != self._num_of_objectives:
              raise ValueError(
                  "The number of objectives in scalarization parameter: {} should "
                  "be {}, but found to be {}.".format(
                      param_name,
                      self._num_of_objectives,
                      param.shape.dims[-1],
                  )
              )
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import abc
  import copy
  from typing import Callable, Dict, NamedTuple, Optional, Sequence, Union
  import numpy
  import six
  import tensorflow.compat.v2
label_desc: Use image node_id 3 for calling the Scalarizer obj's underlying member method code with example usage: obj._validate_scalarization_parameters(params) without return types