LeavePGroupsOut#
- class sklearn.model_selection.LeavePGroupsOut(n_groups)[Quelle]#
Leave P Group(s) Out Kreuzvalidierer.
Bietet Trainings-/Test-Indizes, um Daten gemäß einer von Dritten bereitgestellten Gruppe aufzuteilen. Diese Gruppeninformation kann verwendet werden, um beliebige domänenspezifische Stratifizierungen der Stichproben als Ganzzahlen zu kodieren.
Beispielsweise könnten die Gruppen das Sammeljahr der Stichproben sein und somit eine zeitbasierte Aufteilung für die Kreuzvalidierung ermöglichen.
Der Unterschied zwischen LeavePGroupsOut und LeaveOneGroupOut besteht darin, dass ersteres die Testmengen mit allen Stichproben erstellt, die
pverschiedenen Werten der Gruppen zugeordnet sind, während letzteres Stichproben verwendet, die alle der gleichen Gruppe zugeordnet sind.Lesen Sie mehr im Benutzerhandbuch.
- Parameter:
- n_groupsint
Anzahl der Gruppen (
p), die im Test-Split ausgelassen werden sollen.
Siehe auch
GroupKFoldK-Fold Iterator-Variante mit nicht überlappenden Gruppen.
Beispiele
>>> 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]
- 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 Splits zu berechnen, die anderen Parameter können weggelassen werden.
- Gibt zurück:
- n_splitsint
Gibt die Anzahl der Teilungsschritte im Kreuzvalidierer zurück.
- set_split_request(*, groups: bool | None | str = '$UNCHANGED$') LeavePGroupsOut[Quelle]#
Konfigurieren Sie, ob Metadaten für die Methode
splitangefordert 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=Trueaktiviert ist (siehesklearn.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 ansplitü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 ansplit.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
groupsinsplit.
- 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_samplesdie Anzahl der Stichproben undn_featuresdie 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.