class_docstr: metrics utils unittest
class_docstr_tok: ["metrics","utils","unittest"]
docstr: test f1 score 
docstr_tok: ["test","f1","score"]
code: def test_f1_score(self):
      """test f1 score"""
      confusion = np.array(
          [[5, 1, 1, 0], [0, 10, 0, 1], [0, 0, 6, 1], [0, 0, 1, 6]]
      )
      tn, fp, fn, tp = metric_utils.stats_confusion(confusion)
  
      f1 = metric_utils.f1_score(tn, fp, fn, tp)
      self.assertAllClose(f1, [0.83333333, 0.90909091, 0.8, 0.8])
  
file_path: delta/delta/utils/metrics/metric_utils_test.py
imports: import numpy
  import delta.compat
  from delta.utils.metrics import metric_utils
label_desc: Use image node_id 4 for calling the MetricUtilsTest obj's underlying member method code with example usage: obj.test_f1_score() without return types