MetadataRouter#

class sklearn.utils.metadata_routing.MetadataRouter(owner)[Quelle]#

Koordinert das Metadaten-Routing für ein Router-Objekt.

Diese Klasse wird von Meta-Estimators oder Funktionen verwendet, die Metadaten routen können, um ihr Metadaten-Routing zu verwalten. Routing-Informationen werden in einer Wörterbuch-ähnlichen Struktur der Form {"object_name": RouterMappingPair(mapping, router)} gespeichert, wobei mapping eine Instanz von MethodMapping und router entweder eine Instanz von MetadataRequest oder ein anderer MetadataRouter ist.

Hinzugefügt in Version 1.3.

Parameter:
ownerobject

Das Objekt, zu dem diese Anfragen gehören.

add(*, method_mapping, **objs)[Quelle]#

Fügt der MetadataRouter Konsumenten hinzu.

Die Estimators, die Metadaten konsumieren, werden als benannte Objekte zusammen mit einem Methoden-Mapping übergeben, das definiert, wie ihre Methoden mit denen des Routers zusammenhängen.

Parameter:
method_mappingMethodMapping

Das Mapping zwischen dem Kind (Konsument) und den Methoden des Elternteils (Routers).

**objsdict

Ein Wörterbuch von Objekten, deren Anfragen durch Aufruf von get_routing_for_object auf ihnen extrahiert werden.

Gibt zurück:
selfMetadataRouter

Gibt self zurück.

add_self_request(obj)[Quelle]#

Fügt self (als Konsument) zur MetadataRouter hinzu.

Diese Methode wird verwendet, wenn der Router selbst ein Konsument ist und daher der Router selbst in das Routing einbezogen werden muss. Das übergebene Objekt kann ein Estimator oder eine MetadataRequest sein.

Ein Router sollte sich selbst mit dieser Methode statt mit add hinzufügen, da er anders behandelt werden sollte als die anderen Konsumentenobjekte, an die Metadaten vom Router weitergeleitet werden.

Parameter:
objobject

Dies ist typischerweise die Router-Instanz, d.h. self in einer get_metadata_routing() Implementierung. Es kann auch eine MetadataRequest Instanz sein.

Gibt zurück:
selfMetadataRouter

Gibt self zurück.

consumes(method, params)[Quelle]#

Gibt die als Metadaten konsumierten Parameter eines Routers oder seiner Unter-Estimators zurück.

Diese Methode gibt die Teilmenge von params zurück, die von der angegebenen method konsumiert werden. Ein param wird als konsumiert betrachtet, wenn er in der angegebenen Methode des Routers selbst oder einem seiner Unter-Estimators (oder deren Unter-Estimators) verwendet wird.

Hinzugefügt in Version 1.4.

Parameter:
methodstr

Der Name der Methode, für die konsumierte Parameter bestimmt werden sollen.

paramsiterable of str

Ein Iterable von Parameternamen, die auf Konsum getestet werden sollen.

Gibt zurück:
consumed_paramsset of str

Eine Teilmenge von Parametern aus params, die von dieser Methode konsumiert werden.

route_params(*, caller, params)[Quelle]#

Ruft die Werte von Metadaten ab, die von Konsumenten angefordert wurden.

Gibt eine Bunch zurück, die die Metadaten enthält, die die caller Methode dieses Routers weiterleiten muss, organisiert nach jedem Konsumenten und deren entsprechenden Methoden.

Dies kann verwendet werden, um die erforderlichen Metadaten an die entsprechenden Methoden in den Konsumenten weiterzugeben.

Parameter:
callerstr

Der Name der Methode des Routers, über die die Metadaten weitergeleitet werden. Wenn sie beispielsweise innerhalb der fit Methode eines Routers aufgerufen wird, wäre dies "fit".

paramsdict

Ein Wörterbuch der bereitgestellten Metadaten.

Gibt zurück:
paramsBunch

Eine Bunch der Form {"object_name": {"method_name": {metadata: value}}}.

validate_metadata(*, method, params)[Quelle]#

Validiert die gegebenen Metadaten für eine Methode.

Dies löst einen TypeError aus, wenn einige der übergebenen Metadaten von Kindobjekten nicht verstanden werden.

Parameter:
methodstr

Der Name der Methode des Routers, über die die Metadaten weitergeleitet werden. Wenn sie beispielsweise innerhalb der fit Methode eines Routers aufgerufen wird, wäre dies "fit".

paramsdict

Ein Wörterbuch der bereitgestellten Metadaten.