中繼資料路由器#

class sklearn.utils.metadata_routing.MetadataRouter(owner)[原始碼]#

儲存並處理路由器物件的中繼資料路由。

此類別由路由器物件用於儲存和處理中繼資料路由。路由資訊以字典形式儲存,格式為 {"物件名稱": RouteMappingPair(方法對應, 路由資訊)},其中 方法對應MethodMapping 的實例,而 路由資訊MetadataRequestMetadataRouter 的實例。

在 1.3 版本中新增。

參數:
ownerstr

這些請求所屬的物件名稱。

add(*, method_mapping, **objs)[原始碼]#

新增具名物件及其對應的方法對應。

參數:
method_mappingMethodMapping

子方法與父方法之間的對應。

**objsdict

從中繼資料透過呼叫 get_routing_for_object 提取的物件字典。

返回:
selfMetadataRouter

返回 self

add_self_request(obj)[原始碼]#

self(作為消費者)新增至路由。

如果路由器也是消費者,並且因此路由器本身需要包含在路由中,則會使用此方法。傳遞的物件可以是估計器或 MetadataRequest

路由器應使用此方法而不是 add 來新增自己,因為它應該以不同於路由器路由中繼資料的其他物件的方式處理。

參數:
objobject

這通常是路由器實例,也就是說,在 get_metadata_routing() 實作中為 self。它也可以是 MetadataRequest 的實例。

返回:
selfMetadataRouter

返回 self

consumes(method, params)[原始碼]#

檢查給定方法是否使用給定參數。

在 1.4 版本中新增。

參數:
methodstr

要檢查的方法名稱。

paramsiterable of str

要檢查的參數的可迭代物件。

返回:
consumedset of str

由給定方法使用的參數集合。

route_params(*, caller, params)[原始碼]#

傳回子物件請求的輸入參數。

此方法的輸出為 Bunch,其中包含路由器 caller 方法中使用的每個子物件的所有方法的中繼資料。

如果路由器也是消費者,它也會檢查 self/消費者的請求中繼資料的警告。

參數:
callerstr

請求和路由參數的方法名稱。如果在路由器的 fit 方法中呼叫,則為 "fit"

paramsdict

所提供中繼資料的字典。

返回:
paramsBunch

格式為 {"物件名稱": {"方法名稱": {參數: 值}}}Bunch,可用於將所需中繼資料傳遞至對應的方法或對應的子物件。

validate_metadata(*, method, params)[原始碼]#

驗證方法的給定中繼資料。

如果子物件無法理解某些傳遞的中繼資料,則會引發 TypeError

參數:
methodstr

請求和路由參數的方法名稱。如果在路由器的 fit 方法中呼叫,則為 "fit"

paramsdict

所提供中繼資料的字典。