code: def test_segment_performance_iris_alternative_scorer(
      iris_split_dataset_and_model,
  ):
      # Arrange
      _, val, model = iris_split_dataset_and_model
      scorer = {"F1": make_scorer(f1_score, average="micro")}
  
      # Act
      result = WeakSegmentsPerformance(alternative_scorer=scorer).run(
          val, model
      )
      segments = result.value["weak_segments_list"]
  
      # Assert
      assert_that(segments.columns[0], equal_to("F1 Score"))
      assert_that(segments, any_of(has_length(5), has_length(6)))
      assert_that(segments.iloc[0, 0], close_to(0.33, 0.01))
  
file_path: deepchecks/tests/tabular/checks/model_evaluation/weak_segments_performance_test.py
imports: import numpy
  import pandas
  from hamcrest import any_of, assert_that, calling, close_to, equal_to, has_items, has_length, raises
  from sklearn.metrics import f1_score, make_scorer
  from deepchecks.core.errors import DeepchecksValueError
  from deepchecks.tabular.checks import WeakSegmentsPerformance
  from deepchecks.tabular.datasets.classification.phishing import load_data, load_fitted_model
  from tests.base.utils import equal_condition_result
label_desc: Use image node_id 5 for calling a global function with example usage: test_segment_performance_iris_alternative_scorer(iris_split_dataset_and_model) without return types