def get_default_sarima_parameter_search_space()

in kats/utils/parameter_tuning_utils.py [0:0]


def get_default_sarima_parameter_search_space() -> List[Dict[str, Any]]:
    """Generates default search space as a list of dictionaries and returns it for sarima.

    Each dictionary in the list corresponds to a hyperparameter, having properties
    defining that hyperparameter. Properties are name, type, value_type, values,
    is_ordered. Hyperparameters that are included: p, d, q, seasonal_order, trend.

    Args:
        N/A

    Returns:
        As described above

    Raises:
        N/A
    """

    return [
        {
            "name": "p",
            "type": "choice",
            "values": list(range(1, 6)),
            "value_type": "int",
            "is_ordered": True,
        },
        {
            "name": "d",
            "type": "choice",
            "values": list(range(1, 3)),
            "value_type": "int",
            "is_ordered": True,
        },
        {
            "name": "q",
            "type": "choice",
            "values": list(range(1, 6)),
            "value_type": "int",
            "is_ordered": True,
        },
        {
            "name": "seasonal_order",
            "type": "choice",
            "values": [
                (1, 0, 1, 7),
                (1, 0, 2, 7),
                (2, 0, 1, 7),
                (2, 0, 2, 7),
                (1, 1, 1, 7),
                (0, 1, 1, 7),
            ],
            # Note: JSON representation must be 'int', 'float', 'bool' or 'str'.
            # so we use 'str' here instead of 'Tuple'
            # when doing HPT, we need to convert it back to tuple
            "value_type": "str",
        },
        {
            "name": "trend",
            "type": "choice",
            "values": ["n", "c", "t", "ct"],
            "value_type": "str",
        },
    ]