Spec-Zone.ru › scikit-learn

ShuffleSplit

classsklearn.model_selection.ShuffleSplit(n_splits=10, *, test_size=None, train_size=None, random_state=None)[source]

Перемешивающий и разбивающий перекрестный валидатор.

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

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

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

Для визуализации поведения перекрестной проверки и сравнения между общими методами разделения scikit-learn см. Визуализация поведения перекрестной проверки в scikit-learn

Параметры:
n_splitsint, по умолчанию=10

Количество итераций повторного перемешивания и разделения.

test_sizefloat или int, по умолчанию=None

Если float, должно быть от 0,0 до 1,0 и представлять собой долю набора данных, подлежащую включению в тестовое разбиение. Если int, представляет собой абсолютное число тестовых образцов. Если None, значение устанавливается как дополнение к размеру обучающей выборки. Если train_size также None, оно будет установлено в 0,1.

train_sizefloat или int, по умолчанию=None

Если float, должно быть от 0,0 до 1,0 и представлять собой долю набора данных, подлежащую включению в обучающее разбиение. Если int, представляет собой абсолютное число обучающих образцов. Если None, значение автоматически устанавливается как дополнение к размеру тестовой выборки.

random_stateint, экземпляр RandomState или None, по умолчанию=None

Управляет случайностью индексов обучения и тестирования, полученных. Передайте целое число для воспроизводимого результата при нескольких вызовах функций. См. Глоссарий.

Примеры

>>> import numpy as np
>>> from sklearn.model_selection import ShuffleSplit
>>> X = np.array([[1, 2], [3, 4], [5, 6], [7, 8], [3, 4], [5, 6]])
>>> y = np.array([1, 2, 1, 2, 1, 2])
>>> rs = ShuffleSplit(n_splits=5, test_size=.25, random_state=0)
>>> rs.get_n_splits(X)
5
>>> print(rs)
ShuffleSplit(n_splits=5, random_state=0, test_size=0.25, train_size=None)
>>> for i, (train_index, test_index) in enumerate(rs.split(X)):
...     print(f"Fold {i}:")
...     print(f"  Train: index={train_index}")
...     print(f"  Test:  index={test_index}")
Fold 0:
  Train: index=[1 3 0 4]
  Test:  index=[5 2]
Fold 1:
  Train: index=[4 0 2 5]
  Test:  index=[1 3]
Fold 2:
  Train: index=[1 2 4 0]
  Test:  index=[3 5]
Fold 3:
  Train: index=[3 4 1 0]
  Test:  index=[5 2]
Fold 4:
  Train: index=[3 5 1 0]
  Test:  index=[2 4]
>>> # Specify train and test size
>>> rs = ShuffleSplit(n_splits=5, train_size=0.5, test_size=.25,
...                   random_state=0)
>>> for i, (train_index, test_index) in enumerate(rs.split(X)):
...     print(f"Fold {i}:")
...     print(f"  Train: index={train_index}")
...     print(f"  Test:  index={test_index}")
Fold 0:
  Train: index=[1 3 0]
  Test:  index=[5 2]
Fold 1:
  Train: index=[4 0 2]
  Test:  index=[1 3]
Fold 2:
  Train: index=[1 2 4]
  Test:  index=[3 5]
Fold 3:
  Train: index=[3 4 1]
  Test:  index=[5 2]
Fold 4:
  Train: index=[3 5 1]
  Test:  index=[2 4]
get_metadata_routing()[source]

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

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

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

MetadataRequest encapsulating routing information.

get_n_splits(X=None, y=None, groups=None)[source]

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

Параметры:
Xобъект

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

yобъект

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

groupsобъект

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

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

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

split(X, y=None, groups=None)[source]

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

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

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

yarray-like of shape (n_samples,)

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

groupsобъект

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

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

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

testndarray

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

Примеры из галереи

Построение кривых обучения и проверка масштабируемости моделей

Визуализация поведения перекрестной проверки в scikit-learn

Масштабирование параметра регуляризации для SVC

© 2007–2025 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.6/modules/generated/sklearn.model_selection.ShuffleSplit.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API