class_docstr: Keras custom layer.
  
  Custom layer derived from ClusterableLayer provides implementation
  of the clustering algorithm.
class_docstr_tok: ["Keras","custom","layer",".","Custom","layer","derived","from","ClusterableLayer","provides","implementation","of","the","clustering","algorithm","."]
code: def build(self, input_shape):
      self.w = self.add_weight(
          shape=(input_shape[-1], self.units),
          initializer="random_normal",
          trainable=True,
      )
  
imports: from absl.testing import parameterized
  import tensorflow
  from tensorflow_model_optimization.python.core.clustering.keras import clusterable_layer
  from tensorflow_model_optimization.python.core.clustering.keras import clustering_registry
  from tensorflow_model_optimization.python.core.clustering.keras.cluster_config import GradientAggregation
label_desc: Use image node_id 2 for calling the KerasCustomLayerClusterableInvalid obj's underlying member method code with example usage: obj.build(input_shape) without return types