code: def test_balance_non_binary_failure():
      config = {
          "input_features": [
              {
                  "name": "Index",
                  "proc_column": "Index",
                  "type": "number",
              },
              {
                  "name": "random_1",
                  "proc_column": "random_1",
                  "type": "number",
              },
              {
                  "name": "random_2",
                  "proc_column": "random_2",
                  "type": "number",
              },
          ],
          "output_features": [
              {
                  "name": "Label",
                  "proc_column": "Label",
                  "type": "number",
              }
          ],
          "preprocessing": {"oversample_minority": 0.2},
      }
  
      with pytest.raises(ConfigValidationError):
          ModelConfig.from_dict(config)
  
imports: import contextlib
  from typing import Any, Dict, List, Optional
  import pytest
  import yaml
  from ludwig.constants import COMBINER, TYPE
  from ludwig.error import ConfigValidationError
  from ludwig.schema.model_types.base import ModelConfig
  from tests.integration_tests.utils import binary_feature, text_feature
label_desc: Use image node_id 5 for calling a global function with example usage: test_balance_non_binary_failure() without return types