code: def test_detection_many_scorers(coco_visiondata_train):
      # Act
      check = SingleDatasetPerformance(
          scorers=[
              "f1_micro",
              "fnr_per_class",
              "recall_macro",
              "recall_per_class",
          ]
      )
      result = check.run(coco_visiondata_train).value
  
      # Assert
      assert_that(
          result[result["Metric"] == "f1_micro"]["Value"].mean(),
          close_to(0.571, 0.01),
      )
      assert_that(
          result[result["Metric"] == "f1_micro"]["Value"], has_length(1)
      )
      assert_that(
          result[result["Metric"] == "fnr"]["Value"].mean(),
          close_to(0.554, 0.01),
      )
      assert_that(
          result[result["Metric"] == "fnr"]["Value"], has_length(61)
      )
      assert_that(
          result[result["Metric"] == "recall_macro"]["Value"].mean(),
          close_to(0.446, 0.01),
      )
      assert_that(
          result[result["Metric"] == "recall_macro"]["Value"],
          has_length(1),
      )
      assert_that(
          result[result["Metric"] == "recall"]["Value"].mean(),
          close_to(
              result[result["Metric"] == "recall_macro"][
                  "Value"
              ].mean(),
              0.01,
          ),
      )
  
file_path: deepchecks/tests/vision/checks/model_evaluation/single_dataset_performance_test.py
imports: from hamcrest import assert_that, close_to, equal_to, has_length
  from ignite.metrics import Accuracy, Precision
  from sklearn.metrics import jaccard_score, make_scorer
  from deepchecks.core import ConditionCategory
  from deepchecks.vision.checks import SingleDatasetPerformance
  from deepchecks.vision.metrics_utils import ObjectDetectionTpFpFn
  from deepchecks.vision.metrics_utils.custom_scorer import CustomClassificationScorer
  from tests.base.utils import equal_condition_result
label_desc: Use image node_id 3 for calling a global function with example usage: test_detection_many_scorers(coco_visiondata_train) without return types