LeavePGroupsOut#

класс sklearn.model_selection.LeavePGroupsOut(n_groups)[источник]#

Кросс-валидатор "Оставить P группу(ы) вне выборки".

Предоставляет индексы обучающей/тестовой выборки для разделения данных в соответствии с группой, предоставленной третьей стороной. Эта информация о группе может использоваться для кодирования произвольных предметно-ориентированных стратификаций образцов в виде целых чисел.

Например, группы могут представлять год сбора образцов и таким образом позволять кросс-валидацию с разбиением по времени.

Разница между LeavePGroupsOut и LeaveOneGroupOut заключается в том, что первый строит тестовые наборы со всеми образцами, назначенными p различные значения групп, в то время как последний использует образцы, все назначенные в одни и те же группы.

Подробнее в Руководство пользователя.

Параметры:
n_groupsint

Количество групп (p) для исключения из тестовой выборки.

Смотрите также

GroupKFold

Вариант итератора K-кратной перекрёстной проверки с непересекающимися группами.

Примеры

>>> import numpy as np
>>> from sklearn.model_selection import LeavePGroupsOut
>>> X = np.array([[1, 2], [3, 4], [5, 6]])
>>> y = np.array([1, 2, 1])
>>> groups = np.array([1, 2, 3])
>>> lpgo = LeavePGroupsOut(n_groups=2)
>>> lpgo.get_n_splits(groups=groups)
3
>>> print(lpgo)
LeavePGroupsOut(n_groups=2)
>>> for i, (train_index, test_index) in enumerate(lpgo.split(X, y, groups)):
...     print(f"Fold {i}:")
...     print(f"  Train: index={train_index}, group={groups[train_index]}")
...     print(f"  Test:  index={test_index}, group={groups[test_index]}")
Fold 0:
  Train: index=[2], group=[3]
  Test:  index=[0 1], group=[1 2]
Fold 1:
  Train: index=[1], group=[2]
  Test:  index=[0 2], group=[1 3]
Fold 2:
  Train: index=[0], group=[1]
  Test:  index=[1 2], group=[2 3]
6332()[источник]#

Получить маршрутизацию метаданных этого объекта.

Пожалуйста, проверьте Руководство пользователя о том, как работает механизм маршрутизации.

Возвращает:
маршрутизацияMetadataRequest

A MetadataRequest Инкапсуляция информации о маршрутизации.

get_n_splits(X=None, y=None, группы=None)[источник]#

Возвращает количество итераций разделения в кросс-валидаторе.

Параметры:
Xмассивоподобный объект формы (n_samples, n_features), по умолчанию=None

Всегда игнорируется, существует для совместимости API.

yarray-like формы (n_samples,), по умолчанию=None

Всегда игнорируется, существует для совместимости API.

группыarray-like формы (n_samples,), по умолчанию=None

Метки групп для образцов, используемых при разделении набора данных на обучающую/тестовую выборки. Этот параметр 'groups' всегда должен быть указан для расчёта количества разделений, хотя другие параметры могут быть опущены.

Возвращает:
n_splitsint

Возвращает количество итераций разделения в кросс-валидаторе.

set_split_request(*, группы: bool | None | str = '$UNCHANGED$') LeavePGroupsOut[источник]#

Настроить, следует ли запрашивать передачу метаданных в split метод.

Обратите внимание, что этот метод актуален только тогда, когда этот оценщик используется как под-оценщик внутри мета-оценщик и маршрутизация метаданных включена с помощью enable_metadata_routing=True (см. sklearn.set_config). Пожалуйста, проверьте Руководство пользователя о том, как работает механизм маршрутизации.

Варианты для каждого параметра:

  • True: запрашиваются метаданные и передаются split если предоставлено. Запрос игнорируется, если метаданные не предоставлены.

  • False: метаданные не запрашиваются, и мета-оценщик не передаст их в split.

  • None: метаданные не запрашиваются, и мета-оценщик выдаст ошибку, если пользователь предоставит их.

  • str: метаданные должны передаваться мета-оценщику с этим заданным псевдонимом вместо исходного имени.

По умолчанию (sklearn.utils.metadata_routing.UNCHANGED) сохраняет существующий запрос. Это позволяет изменять запрос для некоторых параметров, но не для других.

Добавлено в версии 1.3.

Параметры:
группыstr, True, False или None, по умолчанию=sklearn.utils.metadata_routing.UNCHANGED

Маршрутизация метаданных для groups параметр в split.

Возвращает:
selfobject

Обновленный объект.

split(X, y=None, группы=None)[источник]#

Сгенерировать индексы для разделения данных на обучающую и тестовую выборки.

Параметры:
Xarray-like формы (n_samples, n_features)

Обучающие данные, где n_samples это количество образцов и n_features это количество признаков.

yarray-like формы (n_samples,), по умолчанию=None

Целевая переменная для задач обучения с учителем.

группыarray-like формы (n_samples,)

Метки групп для образцов, используемых при разделении набора данных на обучающую/тестовую выборки.

Возвращает:
обучатьndarray

Индексы обучающей выборки для этого разбиения.

тестndarray

Индексы тестового набора для этого разбиения.