Перейти к содержанию

one_to_all_pipeline

featminer.pipelines.one_to_all.one_to_all_pipeline

one_to_all_pipeline(
    *,
    df: DataFrame,
    target_col: str,
    event_datetime: str,
    id_col: str | None = None,
    cat_features: Collection[str] | None = None,
    baseline_features: DataFrame | None = None,
    max_filter_conditions: int = 1,
    max_categorical_concat_columns: int = 2,
    min_category_fraction: float = 0.01,
    selection: SelectionConfig | None = None,
    sampling_key_col: str | None = None,
    max_sampling_groups: int | None = None,
    formulas: FormulaSet
    | Sequence[OneToAllFormulaClass] = "basic",
    generate_report: bool = True,
    open_browser: bool = True,
    verbose: Literal[
        "off", "warning", "info", "debug"
    ] = "info",
) -> pd.DataFrame

Генерирует и отбирает признаки для каждого события, используя события, произошедшие до него.

Параметры

Параметр По умолчанию Описание
df Исходная таблица событий.
target_col Колонка с бинарным таргетом.
event_datetime Datetime-колонка, задающая временной порядок событий.
id_col None Колонка с идентификатором события.
cat_features None Колонки, которые нужно обрабатывать как категориальные. Если параметр не задан, категориальные колонки определяются по типам данных.
baseline_features None Существующие числовые признаки. Учитываются при корреляционном отборе, чтобы новые признаки не дублировали их.
max_filter_conditions 1 Максимальное число условий фильтрации в одной формуле.
max_categorical_concat_columns 2 Максимальное число категориальных колонок, объединяемых в одну комбинацию.
min_category_fraction 0.01 Минимальная доля категории, необходимая для участия в генерации признаков.
selection None Декларативная политика отбора. None включает SelectionConfig.auc(); также доступны Pearson, Kendall, Spearman, Information Value и Mutual Information. Подробнее: SelectionConfig.
sampling_key_col None Ключ бизнес-объекта для формирования подвыборки целыми группами строк.
max_sampling_groups None Максимальное число полных sampling-групп для отбора признаков.
formulas "basic" Формулы для генерации: быстрый набор "basic", дополнительный "advanced", объединяющий их "all" или явная последовательность классов формул. Расширение набора может повысить качество ценой времени расчёта.
generate_report True Формировать HTML-отчёт и воспроизводимый Python-код. Если False, отчёт не создаётся, а open_browser игнорируется.
open_browser True Открывать сформированный HTML-отчёт в браузере.
verbose "info" Уровень журналирования: "off", "warning", "info" или "debug".

Список формул

Формула Набор Для каких колонок Что считает
CountWindow basic идентификаторы событий Количество предыдущих событий с тем же идентификатором в окне 90 дней.
NuniqueWindow basic пары identifier + value Количество уникальных значений value среди предыдущих событий с тем же identifier в окне 90 дней.
DaysSinceLast advanced идентификаторы событий Число дней с предыдущего события с тем же идентификатором.

formulas="all" объединяет basic и advanced. Для точного контроля можно передать классы напрямую: formulas=(CountWindow, DaysSinceLast).