code: def l2_normalize(x, axis=None, epsilon=1e-12, name=None):
      square_sum = ivy.sum(ivy.square(x), axis=axis, keepdims=True)
      x_inv_norm = ivy.reciprocal(
          ivy.sqrt(ivy.maximum(square_sum, epsilon))
      )
      return ivy.multiply(x, x_inv_norm)
  
imports: import ivy
  from ivy.functional.frontends.tensorflow import check_tensorflow_casting
  from ivy.func_wrapper import with_unsupported_dtypes, with_supported_dtypes
  from ivy.functional.frontends.tensorflow.func_wrapper import to_ivy_arrays_and_back, handle_tf_dtype
  import ivy.functional.frontends.tensorflow
label_desc: Use image node_id 17 for calling a global function with example usage: l2_normalize(x, axis, epsilon, name) and returns: ivy