LeaveOneGroupOut#

class sklearn.model_selection.LeaveOneGroupOut[Quelle]#

Leave One Group Out Kreuzvalidierer.

Bietet Trainings-/Test-Indizes zum Aufteilen von Daten, so dass jede Trainingsmenge aus allen Stichproben besteht, mit Ausnahme derer, die zu einer bestimmten Gruppe gehören. Beliebige domänenspezifische Gruppeninformationen werden als Array von Ganzzahlen bereitgestellt, das die Gruppe jeder Stichprobe kodiert.

Beispielsweise könnten die Gruppen das Sammeljahr der Stichproben sein und somit eine zeitbasierte Aufteilung für die Kreuzvalidierung ermöglichen.

Lesen Sie mehr im Benutzerhandbuch.

Siehe auch

GroupKFold

K-Fold Iterator-Variante mit nicht überlappenden Gruppen.

Anmerkungen

Die Aufteilungen sind nach dem Index der ausgelassenen Gruppe geordnet. Die erste Aufteilung hat eine Testmenge, die aus der Gruppe besteht, deren Index in groups am niedrigsten ist, und so weiter.

Beispiele

>>> import numpy as np
>>> from sklearn.model_selection import LeaveOneGroupOut
>>> X = np.array([[1, 2], [3, 4], [5, 6], [7, 8]])
>>> y = np.array([1, 2, 1, 2])
>>> groups = np.array([1, 1, 2, 2])
>>> logo = LeaveOneGroupOut()
>>> logo.get_n_splits(groups=groups)
2
>>> print(logo)
LeaveOneGroupOut()
>>> for i, (train_index, test_index) in enumerate(logo.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 3], group=[2 2]
  Test:  index=[0 1], group=[1 1]
Fold 1:
  Train: index=[0 1], group=[1 1]
  Test:  index=[2 3], group=[2 2]
get_metadata_routing()[Quelle]#

Holt das Metadaten-Routing dieses Objekts.

Bitte prüfen Sie im Benutzerhandbuch, wie der Routing-Mechanismus funktioniert.

Gibt zurück:
routingMetadataRequest

Ein MetadataRequest, der Routing-Informationen kapselt.

get_n_splits(X=None, y=None, groups=None)[Quelle]#

Gibt die Anzahl der Teilungsschritte im Kreuzvalidierer zurück.

Parameter:
Xarray-like von Shape (n_samples, n_features), default=None

Immer ignoriert, existiert aus API-Kompatibilitätsgründen.

yarray-like mit Form (n_samples,), default=None

Immer ignoriert, existiert aus API-Kompatibilitätsgründen.

groupsarray-like of shape (n_samples,), default=None

Gruppenbezeichnungen für die Stichproben, die bei der Aufteilung des Datensatzes in Trainings-/Testmengen verwendet werden. Dieser Parameter 'groups' muss immer angegeben werden, um die Anzahl der Aufteilungen zu berechnen, obwohl die anderen Parameter weggelassen werden können.

Gibt zurück:
n_splitsint

Gibt die Anzahl der Teilungsschritte im Kreuzvalidierer zurück.

set_split_request(*, groups: bool | None | str = '$UNCHANGED$') LeaveOneGroupOut[Quelle]#

Konfigurieren Sie, ob Metadaten für die Methode split angefordert werden sollen.

Beachten Sie, dass diese Methode nur relevant ist, wenn dieser Schätzer als Unter-Schätzer innerhalb eines Meta-Schätzers verwendet wird und Metadaten-Routing mit enable_metadata_routing=True aktiviert ist (siehe sklearn.set_config). Bitte lesen Sie das Benutzerhandbuch, um zu erfahren, wie der Routing-Mechanismus funktioniert.

Die Optionen für jeden Parameter sind

  • True: Metadaten werden angefordert und an split übergeben, wenn sie bereitgestellt werden. Die Anforderung wird ignoriert, wenn keine Metadaten bereitgestellt werden.

  • False: Metadaten werden nicht angefordert und der Meta-Estimator übergibt sie nicht an split.

  • None: Metadaten werden nicht angefordert und der Meta-Schätzer löst einen Fehler aus, wenn der Benutzer sie bereitstellt.

  • str: Metadaten sollten mit diesem Alias an den Meta-Schätzer übergeben werden und nicht mit dem ursprünglichen Namen.

Der Standardwert (sklearn.utils.metadata_routing.UNCHANGED) behält die bestehende Anforderung bei. Dies ermöglicht es Ihnen, die Anforderung für einige Parameter zu ändern und für andere nicht.

Hinzugefügt in Version 1.3.

Parameter:
groupsstr, True, False, oder None, Standard: sklearn.utils.metadata_routing.UNCHANGED

Metadaten-Routing für den Parameter groups in split.

Gibt zurück:
selfobject

Das aktualisierte Objekt.

split(X, y=None, groups=None)[Quelle]#

Generiert Indizes zum Aufteilen von Daten in Trainings- und Testsets.

Parameter:
Xarray-like der Form (n_samples, n_features)

Trainingsdaten, wobei n_samples die Anzahl der Stichproben und n_features die Anzahl der Merkmale ist.

yarray-like mit Form (n_samples,), default=None

Die Zielvariable für überwachte Lernprobleme.

groupsarray-like von Form (n_samples,)

Gruppenbeschriftungen für die Samples, die beim Aufteilen des Datensatzes in Trainings-/Testsets verwendet werden.

Gibt:
trainndarray

Die Trainingsset-Indizes für diese Teilung.

testndarray

Die Testset-Indizes für diese Teilung.