AlignerEditNumba#

class AlignerEditNumba(distance: str = 'lcss', window=None, itakura_max_slope=None, bounding_matrix: ndarray = None, epsilon: float = 1.0, g: float =0.0, lmbda: float =1.0, nu: float =0.001, p: int =2)[source]#

sktime 原生编辑距离对齐器的接口。

以下编辑距离对齐器的接口:LCSS - 最长公共子序列距离;ERP - 真实惩罚编辑距离;EDR - 真实序列编辑距离;TWE - 时间扭曲编辑距离

LCSS [1] 尝试找到两个时间序列之间的最长公共序列,并返回该最长公共序列所占的百分比值。LCSS 通过匹配相似度达到定义阈值 (epsilon) 的索引来计算。

返回的值将在 0.0 和 1.0 之间,其中 0.0 表示两个时间序列完全相同,1.0 表示它们完全相反。

EDR [2] 计算必须从 x 和 y 中移除的最小元素数量(以百分比计),以便剩余信号元素之间的距离总和在容差 (epsilon) 范围内。

返回的值将介于每个时间序列 0 和 1 之间。该值表示时间序列要实现精确匹配所需移除元素的百分比。

ERP [3] 尝试通过更好地考虑索引如何在成本矩阵中向前传递来对齐时间序列。通常在 DTW 成本矩阵中,如果找不到对齐,则将前一个值向前传递。ERP 则提出了间隙的概念,即没有匹配点的序列。然后根据这些间隙与“g”的距离对其进行惩罚。

TWE [4] 是一种具有时间“弹性”的离散时间序列匹配距离度量。与其他距离度量(例如 DTW(动态时间扭曲)或 LCS(最长公共子序列问题))相比,TWE 是一种度量。其计算时间复杂度为 O(n^2),但在某些特定情况下,通过使用走廊来减少搜索空间,可以大幅降低复杂度。其内存空间复杂度可以降低到 O(n)。

参数:
distance: str, 可选,默认为 “lcss”,取值范围 [“lcss”, “edr”, “erp”, “twe”]

计算的距离名称

window: float, 默认为 None

一个浮点数,表示 Sakoe-Chiba 窗口的半径(如果使用 Sakoe-Chiba 下界)。值必须在 0. 和 1. 之间。

itakura_max_slope: float, 默认为 None

Itakura 平行四边形的斜率梯度(如果使用 Itakura 平行四边形下界)

bounding_matrix: 2D np.ndarray, 可选,默认为 None

如果传入,则 X, X2 在 transform 中时,形状必须为 (len(X), len(X2))。要使用的自定义边界矩阵。如果已定义,则忽略其他 lower_bounding 参数。矩阵的结构应使得边界内的索引值为 0.,而边界外的索引值应为无穷大。

epsilonfloat, 默认为 1.

用于 LCSS, EDR, ERP,否则忽略。匹配阈值,用于确定两个子序列是否足够接近,可以被认为是“公共”的。

g: float, 默认为 0.

用于 ERP,否则忽略。用于惩罚间隙的参考值。

lmbda: float, 可选,默认为 1.0

用于 TWE,否则忽略。惩罚编辑工作的常数。必须 >= 1.0。

nu: float 可选,默认为 0.001

用于 TWE,否则忽略。一个非负常数,用于表征弹性 TWE 度量的刚度。必须 > 0。

p: int 可选,默认为 2

用于 TWE,否则忽略。局部成本 p 范数的阶数。

属性:
is_fitted

fit 是否已被调用。

参考文献

[1]

M. Vlachos, D. Gunopoulos, and G. Kollios. 2002. “Discovering Similar Multidimensional Trajectories”, In Proceedings of the 18th International Conference on Data Engineering (ICDE ‘02). IEEE Computer Society, USA, 673.

[2]

Lei Chen, M. Tamer Özsu, and Vincent Oria. 2005. Robust and fast similarity search for moving object trajectories. In Proceedings of the 2005 ACM SIGMOD international conference on Management of data (SIGMOD ‘05). Association for Computing Machinery, New York, NY, USA, 491-502. DOI:https://doi.org/10.1145/1066157.1066213

[3]

Lei Chen and Raymond Ng. 2004. On the marriage of Lp-norms and edit distance. In Proceedings of the Thirtieth international conference on Very large data bases - Volume 30 (VLDB ‘04). VLDB Endowment, 792-803.

[4]

Marteau, P.; F. (2009). “Time Warp Edit Distance with Stiffness Adjustment for Time Series Matching”. IEEE Transactions on Pattern Analysis and Machine Intelligence. 31 (2): 306-318.

示例

>>> from sktime.datasets import load_unit_test
>>> from sktime.dists_kernels.edit_dist import EditDist
>>>
>>> X, _ = load_unit_test(return_type="pd-multiindex")  
>>> d = EditDist("edr")  
>>> distmat = d.transform(X)  

距离也是可调用的,这会做同样的事情: >>> distmat = d(X) # doctest: +SKIP

方法

check_is_fitted([method_name])

检查估计器是否已拟合。

clone()

获取具有相同超参数和配置的对象的克隆。

clone_tags(estimator[, tag_names])

将另一个对象的标签克隆为动态覆盖。

create_test_instance([parameter_set])

使用第一个测试参数集构造类的实例。

create_test_instances_and_names([parameter_set])

创建所有测试实例列表及其名称列表。

fit(X[, Z])

拟合给定序列/要对齐序列的对齐。

get_aligned()

返回传递给 fit 的序列的对齐版本。

get_alignment()

返回 fit 中传入的序列/时间序列的对齐(iloc 索引)。

get_alignment_loc()

返回 fit 中传入的序列/时间序列的对齐(loc 索引)。

get_class_tag(tag_name[, tag_value_default])

从类中获取类标签值,并继承父类的标签级别。

get_class_tags()

从类中获取类标签,并继承父类的标签级别。

get_config()

获取 self 的配置标志。

get_distance()

返回对齐的总体距离。

get_distance_matrix()

返回对齐的距离矩阵。

get_fitted_params([deep])

获取拟合参数。

get_param_defaults()

获取对象的默认参数。

get_param_names([sort])

获取对象的参数名称。

get_params([deep])

获取此对象的参数值字典。

get_tag(tag_name[, tag_value_default, ...])

从实例获取标签值,包括标签级别继承和覆盖。

get_tags()

从实例获取标签,包括标签级别继承和覆盖。

get_test_params([parameter_set])

返回估计器的测试参数设置。

is_composite()

检查对象是否由其他 BaseObject 组成。

load_from_path(serial)

从文件位置加载对象。

load_from_serial(serial)

从序列化内存容器加载对象。

reset()

将对象重置为干净的初始化后状态。

save([path, serialization_format])

将序列化的 self 保存到字节类对象或 (.zip) 文件。

set_config(**config_dict)

将配置标志设置为给定值。

set_params(**params)

设置此对象的参数。

set_random_state([random_state, deep, ...])

为 self 设置 random_state 伪随机种子参数。

set_tags(**tag_dict)

将实例级别的标签覆盖设置为给定值。

classmethod get_test_params(parameter_set='default')[source]#

返回估计器的测试参数设置。

参数:
parameter_setstr, 默认值为“default”

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则返回 "default" 集。当前对齐器没有保留值。

返回:
paramsdict or list of dict, 默认为 {}

用于创建类的测试实例的参数。每个 dict 都是构造一个“有趣的”测试实例的参数,即 MyClass(**params)MyClass(**params[i]) 会创建一个有效的测试实例。create_test_instance 使用 params 中的第一个(或唯一的)字典。

check_is_fitted(method_name=None)[source]#

检查估计器是否已拟合。

检查 _is_fitted 属性是否存在且为 True。`is_fitted` 属性应在调用对象的 fit 方法时设置为 True

如果不是,则引发 NotFittedError

参数:
method_namestr, optional

调用此方法的名称。如果提供,错误消息将包含此信息。

抛出:
NotFittedError

如果估计器尚未拟合。

clone()[source]#

获取具有相同超参数和配置的对象的克隆。

克隆是一个没有共享引用、处于初始化后状态的不同对象。此函数等同于返回 selfsklearn.clone

等同于构造一个新的 type(self) 实例,使用 self 的参数,即 type(self)(**self.get_params(deep=False))

如果在 self 上设置了配置,克隆也将具有与原始对象相同的配置,等同于调用 cloned_self.set_config(**self.get_config())

在值上也等同于调用 self.reset,不同之处在于 clone 返回一个新对象,而不是像 reset 那样修改 self

抛出:
如果由于 __init__ 故障导致克隆不合规,则抛出 RuntimeError。
clone_tags(estimator, tag_names=None)[source]#

将另一个对象的标签克隆为动态覆盖。

每个 scikit-base 兼容对象都有一个标签字典。标签可用于存储对象的元数据,或控制对象的行为。

标签是特定于实例 self 的键值对,它们是对象构造后不会更改的静态标志。

clone_tags 从另一个对象 estimator 设置动态标签覆盖。

clone_tags 方法应仅在对象的 __init__ 方法中调用,即在构造期间或通过 __init__ 直接构造之后调用。

动态标签设置为 estimator 中标签的值,名称由 tag_names 指定。

tag_names 的默认值将 estimator 中的所有标签写入 self

当前标签值可以通过 get_tagsget_tag 检查。

参数:
estimatorAn instance of :class:BaseObject or derived class
tag_namesstr or list of str, default = None

要克隆的标签名称。默认值 (None) 克隆 estimator 中的所有标签。

返回:
self

self 的引用。

classmethod create_test_instance(parameter_set='default')[source]#

使用第一个测试参数集构造类的实例。

参数:
parameter_setstr, 默认值为“default”

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则返回 “default” 集。

返回:
instanceinstance of the class with default parameters
classmethod create_test_instances_and_names(parameter_set='default')[source]#

创建所有测试实例列表及其名称列表。

参数:
parameter_setstr, 默认值为“default”

要返回的测试参数集的名称,用于测试。如果未为某个值定义特殊参数,则返回 “default” 集。

返回:
objslist of instances of cls

第 i 个实例是 cls(**cls.get_test_params()[i])

nameslist of str, same length as objs

第 i 个元素是测试中 obj 的第 i 个实例的名称。如果实例不止一个,命名约定是 {cls.__name__}-{i},否则是 {cls.__name__}

fit(X, Z=None)[source]#

拟合给定序列/要对齐序列的对齐。

状态变化

将状态更改为“已拟合”。

写入 self

将 self._is_fitted 标志设置为 True。将 XZ 分别存储到 self._X 和 self._Z 中。设置以“_”结尾的拟合模型属性。

参数:
Xlist of pd.DataFrame (Series) of length n

要对齐的序列集合

Zpd.DataFrame with n rows, optional

元数据,Z 的第 i 行对应于 X 的第 i 个元素

get_aligned()[source]#

返回传递给 fit 的序列的对齐版本。

行为:返回传递给 fit 的 X 中未对齐序列的对齐版本

模型应处于拟合状态,拟合模型参数从 self 读取

所需状态

要求状态为“已拟合”。

访问 self 中的属性

以“_”结尾的拟合模型属性。self._is_fitted

返回:
X_aligned_list: 序列格式的 pd.DataFrame 列表

长度为 n,索引对应于传递给 fit 的 X 的索引。第 i 个元素是 X[i] 的重新索引、对齐版本。

get_alignment()[source]#

返回 fit 中传入的序列/时间序列的对齐(iloc 索引)。

行为:返回传递给 fit 的 X 中序列的对齐

模型应处于拟合状态,拟合模型参数从 self 读取

所需状态

要求状态为“已拟合”。

访问 self 中的属性

以“_”结尾的拟合模型属性。self._is_fitted

返回:
对齐格式的 pd.DataFrame,对于整数 i,列名为 ‘ind’+str(i)

cols 包含 X[i] 映射到对齐坐标的 iloc 索引

get_alignment_loc()[source]#

返回 fit 中传入的序列/时间序列的对齐(loc 索引)。

行为:返回传递给 fit 的 X 中序列的对齐

模型应处于拟合状态,拟合模型参数从 self 读取

所需状态

要求状态为“已拟合”。

访问 self 中的属性

以“_”结尾的拟合模型属性。self._is_fitted

返回:
对齐格式的 pd.DataFrame,对于整数 i,列名为 ‘ind’+str(i)

cols 包含 X[i] 映射到对齐坐标的 loc 索引

classmethod get_class_tag(tag_name, tag_value_default=None)[source]#

从类中获取类标签值,并继承父类的标签级别。

每个 scikit-base 兼容对象都有一个标签字典,用于存储对象的元数据。

get_class_tag 方法是一个类方法,仅考虑类级别的标签值和覆盖来检索标签的值。

它从对象中返回名称为 tag_name 的标签的值,考虑了标签覆盖,优先级从高到低依次为:

  1. 在类的 _tags 属性中设置的标签。

  2. 在父类的 _tags 属性中设置的标签,

按继承顺序。

不考虑在实例上通过 set_tagsclone_tags 设置的动态标签覆盖。

要检索带有潜在实例覆盖的标签值,请改用 get_tag 方法。

参数:
tag_namestr

标签值的名称。

tag_value_defaultany type

如果找不到标签,则使用默认/回退值。

返回:
tag_value

selftag_name 标签的值。如果找不到,则返回 tag_value_default

classmethod get_class_tags()[source]#

从类中获取类标签,并继承父类的标签级别。

每个 scikit-base 兼容对象都有一个标签字典。标签可用于存储对象的元数据,或控制对象的行为。

标签是特定于实例 self 的键值对,它们是对象构造后不会更改的静态标志。

get_class_tags 方法是一个类方法,仅考虑类级别的标签值和覆盖来检索标签的值。

它返回一个字典,其键是类或其任何父类中设置的任何 _tags 属性的键。

值是相应的标签值,覆盖优先级从高到低依次为:

  1. 在类的 _tags 属性中设置的标签。

  2. 在父类的 _tags 属性中设置的标签,

按继承顺序。

实例可以根据超参数覆盖这些标签。

要检索带有潜在实例覆盖的标签,请改用 get_tags 方法。

不考虑在实例上通过 set_tagsclone_tags 设置的动态标签覆盖。

对于包含来自动态标签的覆盖,请使用 get_tags

collected_tagsdict

标签名称: 标签值对的字典。通过嵌套继承从 _tags 类属性收集。不会被通过 set_tagsclone_tags 设置的动态标签覆盖。

get_config()[source]#

获取 self 的配置标志。

配置是 self 的键值对,通常用作控制行为的临时标志。

get_config 返回动态配置,这些配置会覆盖默认配置。

默认配置在类或其父类的类属性 _config 中设置,并会被通过 set_config 设置的动态配置覆盖。

配置在 clonereset 调用下保留。

返回:
config_dictdict

配置名称:配置值对的字典。通过嵌套继承从 _config 类属性收集,然后是 _onfig_dynamic 对象属性中的任何覆盖和新标签。

get_distance()[source]#

返回对齐的总体距离。

行为:返回对应于对齐的总体距离

并非所有对齐器都会返回或实现此功能(可选)

所需状态

要求状态为“已拟合”。

访问 self 中的属性

以“_”结尾的拟合模型属性。self._is_fitted

返回:
distance: float - 传递给 fit 的 X 的所有元素之间的总体距离
get_distance_matrix()[source]#

返回对齐的距离矩阵。

行为:返回对齐距离的成对距离矩阵

并非所有对齐器都会返回或实现此功能(可选)

所需状态

要求状态为“已拟合”。

访问 self 中的属性

以“_”结尾的拟合模型属性。self._is_fitted

返回:
distmat: 一个 (n x n) 的浮点数 np.array,其中 n 是传递给 fit 的 X 的长度

[i,j] 项是传递给 fit 的 X[i] 和 X[j] 之间的对齐距离

get_fitted_params(deep=True)[source]#

获取拟合参数。

所需状态

要求状态为“已拟合”。

参数:
deepbool, default=True

是否返回组件的拟合参数。

  • 如果为 True,将返回此对象的参数名称:值字典,包括可拟合组件的拟合参数(= BaseEstimator 类型参数)。

  • 如果为 False,将返回此对象的参数名称:值字典,但不包括组件的拟合参数。

返回:
fitted_paramsdict with str-valued keys

拟合参数字典, paramname : paramvalue 键值对包括

  • 总是:此对象的所有拟合参数,通过 get_param_names 获取的值是该键的拟合参数值,属于此对象

  • 如果 deep=True,还包含组件参数的键/值对,组件的参数以 [componentname]__[paramname] 形式索引,componentname 的所有参数都以 paramname 及其值的形式出现

  • 如果 deep=True,还包含任意级别的组件递归,例如 [componentname]__[componentcomponentname]__[paramname]

classmethod get_param_defaults()[source]#

获取对象的默认参数。

返回:
default_dict: dict[str, Any]

键是 cls 中在 __init__ 中定义了默认值的所有参数。值是 __init__ 中定义的默认值。

classmethod get_param_names(sort=True)[source]#

获取对象的参数名称。

参数:
sortbool, default=True

是否按字母顺序排序返回参数名称 (True),或按它们在类 __init__ 中出现的顺序返回 (False)。

返回:
param_names: list[str]

cls 的参数名称列表。如果 sort=False,则与它们在类 __init__ 中出现的顺序相同。如果 sort=True,则按字母顺序排序。

get_params(deep=True)[source]#

获取此对象的参数值字典。

参数:
deepbool, default=True

是否返回组件的参数。

  • 如果 True,将返回此对象的参数名称:值 dict,包括组件参数(= BaseObject 类型参数)。

  • 如果 False,将返回此对象的参数名称:值 dict,但不包括组件参数。

返回:
paramsdict with str-valued keys

参数字典, paramname : paramvalue 键值对包括

  • 总是:此对象的所有参数,通过 get_param_names 获取的值是该键的参数值,属于此对象。值总是与构造时传递的值相同。

  • 如果 deep=True,还包含组件参数的键/值对,组件的参数以 [componentname]__[paramname] 形式索引,componentname 的所有参数都以 paramname 及其值的形式出现

  • 如果 deep=True,还包含任意级别的组件递归,例如 [componentname]__[componentcomponentname]__[paramname]

get_tag(tag_name, tag_value_default=None, raise_error=True)[source]#

从实例获取标签值,包括标签级别继承和覆盖。

每个 scikit-base 兼容对象都有一个标签字典。标签可用于存储对象的元数据,或控制对象的行为。

标签是特定于实例 self 的键值对,它们是对象构造后不会更改的静态标志。

get_tag 方法从实例中检索名称为 tag_name 的单个标签的值,考虑了标签覆盖,优先级从高到低依次为:

  1. 在实例上通过 set_tagsclone_tags 设置的标签,

在实例构造时。

  1. 在类的 _tags 属性中设置的标签。

  2. 在父类的 _tags 属性中设置的标签,

按继承顺序。

参数:
tag_namestr

要检索的标签名称

tag_value_defaultany type, optional; default=None

如果找不到标签,则使用默认/回退值

raise_errorbool

找不到标签时是否引发 ValueError

返回:
tag_valueAny

selftag_name 标签的值。如果找不到,并且 raise_error 为 True,则引发错误,否则返回 tag_value_default

抛出:
ValueError,如果 raise_errorTrue

如果 tag_name 不在 self.get_tags().keys() 中,则会引发 ValueError

get_tags()[source]#

从实例获取标签,包括标签级别继承和覆盖。

每个 scikit-base 兼容对象都有一个标签字典。标签可用于存储对象的元数据,或控制对象的行为。

标签是特定于实例 self 的键值对,它们是对象构造后不会更改的静态标志。

get_tags 方法返回一个标签字典,其键是类或其任何父类中设置的任何 _tags 属性的键,或通过 set_tagsclone_tags 设置的标签。

值是相应的标签值,覆盖优先级从高到低依次为:

  1. 在实例上通过 set_tagsclone_tags 设置的标签,

在实例构造时。

  1. 在类的 _tags 属性中设置的标签。

  2. 在父类的 _tags 属性中设置的标签,

按继承顺序。

返回:
collected_tagsdict

标签名称: 标签值对的字典。通过嵌套继承从 _tags 类属性收集,然后是 _tags_dynamic 对象属性中的任何覆盖和新标签。

is_composite()[source]#

检查对象是否由其他 BaseObject 组成。

复合对象是指其参数中包含其他对象的对象。在实例上调用,因为这可能因实例而异。

返回:
composite: bool

对象是否有任何参数的值是 BaseObject 的后代实例。

property is_fitted[source]#

fit 是否已被调用。

检查对象的 _is_fitted` 属性,该属性在对象构造期间应初始化为 ``False,并在调用对象的 fit 方法时设置为 True。

返回:
bool

估计器是否已 fit

classmethod load_from_path(serial)[source]#

从文件位置加载对象。

参数:
serialresult of ZipFile(path).open(“object)
返回:
反序列化的 self,生成 cls.save(path)path 处的输出
classmethod load_from_serial(serial)[source]#

从序列化内存容器加载对象。

参数:
serial1st element of output of cls.save(None)
返回:
反序列化的 self,生成 cls.save(None) 的输出 serial
reset()[source]#

将对象重置为干净的初始化后状态。

结果是将 self 设置回构造函数调用后的状态,并保留相同的超参数。通过 set_config 设置的配置值也会保留。

reset 调用会删除任何对象属性,除了

  • 超参数 = 写入 self__init__ 参数,例如 self.paramname,其中 paramname__init__ 的一个参数

  • 包含双下划线(即字符串“__”)的对象属性。例如,名为“__myattr”的属性会被保留。

  • 配置属性,配置保持不变。即,reset 前后 get_config 的结果相同。

类和对象方法以及类属性也不受影响。

等同于 clone,不同之处在于 reset 修改 self 而不是返回一个新对象。

在调用 self.reset() 后,self 的值和状态与构造函数调用``type(self)(**self.get_params(deep=False))`` 后获得的对象相同。

返回:
self

类实例重置为干净的初始化后状态,但保留当前的超参数值。

save(path=None, serialization_format='pickle')[source]#

将序列化的 self 保存到字节类对象或 (.zip) 文件。

行为:如果 path 为 None,则返回内存中的序列化 self;如果 path 是文件位置,则将 self 以 zip 文件形式存储在该位置

保存的文件是 zip 文件,包含以下内容:_metadata - 包含 self 的类,即 type(self);_obj - 序列化的 self。此类使用默认的序列化方式 (pickle)。

参数:
pathNone or file location (str or Path)

如果为 None,则将 self 保存到内存对象;如果是文件位置,则将 self 保存到该文件位置。如果

  • path=”estimator”,则会在当前工作目录创建名为 estimator.zip 的 zip 文件。

  • path=”/home/stored/estimator”,则会在 /home/stored/ 中创建一个名为 estimator.zip 的 zip 文件。

存储在 /home/stored/ 中。

serialization_format: str, 默认为 “pickle”

用于序列化的模块。可用选项为“pickle”和“cloudpickle”。请注意,非默认格式可能需要安装其他软依赖项。

返回:
如果 path 为 None - 内存中的序列化 self
如果 path 是文件位置 - 引用该文件的 ZipFile
set_config(**config_dict)[source]#

将配置标志设置为给定值。

参数:
config_dictdict

配置名称:配置值对的字典。有效的配置、值及其含义如下所示

displaystr, “diagram”(默认)或“text”

jupyter 内核如何显示 self 的实例

  • “diagram” = html 框图表示

  • “text” = 字符串打印输出

print_changed_onlybool, default=True

打印自身时是只列出与默认值不同的自身参数 (False),还是列出所有参数名称和值 (False)。不嵌套,即只影响自身,不影响组件估计器。

warningsstr, "on" (默认值), 或 "off"

是否引发警告,仅影响来自 sktime 的警告

  • "on" = 将引发来自 sktime 的警告

  • "off" = 将不会引发来自 sktime 的警告

backend:parallelstr, 可选, 默认值="None"

在广播/矢量化时用于并行化的后端,可选值之一:

  • "None":按顺序执行循环,简单的列表推导式

  • "loky", "multiprocessing" 和 "threading":使用 joblib.Parallel

  • "joblib":自定义和第三方 joblib 后端,例如 spark

  • "dask":使用 dask,需要环境中安装 dask

  • "ray":使用 ray,需要环境中安装 ray

backend:parallel:paramsdict, 可选, 默认值={} (不传递任何参数)

作为配置传递给并行化后端的附加参数。有效键取决于 backend:parallel 的值

  • "None":无附加参数,backend_params 将被忽略

  • "loky", "multiprocessing" 和 "threading":默认的 joblib 后端,可在此处传递 joblib.Parallel 的任何有效键,例如 n_jobs,但 backend 除外,因为它由 backend 直接控制。如果未传递 n_jobs,则默认值为 -1,其他参数将默认为 joblib 的默认值。

  • "joblib":自定义和第三方 joblib 后端,例如 spark。可在此处传递 joblib.Parallel 的任何有效键,例如 n_jobs,在这种情况下,backend 必须作为 backend_params 的一个键传递。如果未传递 n_jobs,则默认值为 -1,其他参数将默认为 joblib 的默认值。

  • "dask":可以传递 dask.compute 的任何有效键,例如 scheduler

  • "ray":可以传递以下键

    • "ray_remote_args":ray.init 的有效键字典

    • "shutdown_ray":bool 类型,默认值=True;False 会阻止 ray

      并行化后关闭。

    • "logger_name":str 类型,默认值="ray";要使用的日志记录器名称。

    • "mute_warnings":bool 类型,默认值=False;如果为 True,则抑制警告

返回:
self自身的引用。

注意事项

更改对象状态,将 config_dict 中的配置复制到 self._config_dynamic。

set_params(**params)[source]#

设置此对象的参数。

此方法适用于简单的 skbase 对象以及复合对象。参数键字符串 <component>__<parameter> 可用于复合对象(即包含其他对象的对象),以访问组件 <component> 中的 <parameter>。如果这样能使引用明确(例如,没有两个组件参数同名为 <parameter>),也可以使用不带 <component>__ 的字符串 <parameter>

参数:
**paramsdict

BaseObject 参数,键必须是 <component>__<parameter> 字符串。如果 __ 后缀在 get_params 键中是唯一的,则可以作为完整字符串的别名。

返回:
self自身的引用 (参数设置后)
set_random_state(random_state=None, deep=True, self_policy='copy')[source]#

为 self 设置 random_state 伪随机种子参数。

通过 self.get_params 查找名为 random_state 的参数,并通过 set_params 将它们设置为从 random_state 导出的整数。这些整数通过 sample_dependent_seed 进行链式哈希采样,保证了 seeded 随机生成器的伪随机独立性。

根据 self_policy 应用于 self 中的 random_state 参数,并且仅当 deep=True 时应用于剩余的组件对象。

注意:即使 self 没有 random_state,或者所有组件都没有 random_state 参数,也会调用 set_params。因此,set_random_state 将重置任何 scikit-base 对象,即使是那些没有 random_state 参数的对象。

参数:
random_stateint, RandomState 实例或 None, 默认值=None

伪随机数生成器,用于控制随机整数的生成。传递 int 值可在多次函数调用中获得可重现的输出。

deepbool, default=True

是否设置 skbase 对象值参数(即组件估计器)中的随机状态。

  • 如果为 False,则仅设置 selfrandom_state 参数(如果存在)。

  • 如果为 True,则也会设置组件对象中的 random_state 参数。

self_policystr, 以下之一 {"copy", "keep", "new"}, 默认值="copy"
  • "copy" : self.random_state 设置为输入的 random_state

  • "keep" : self.random_state 保持不变

  • "new" : self.random_state 设置为一个新的随机状态,

源自输入的 random_state,通常与它不同

返回:
self自身的引用
set_tags(**tag_dict)[source]#

将实例级别的标签覆盖设置为给定值。

每个 scikit-base 兼容对象都有一个标签字典,用于存储对象的元数据。

标签是特定于实例 self 的键值对,它们是对象构造后不会更改的静态标志。它们可用于元数据检查或控制对象的行为。

set_tags 将动态标签覆盖设置为 tag_dict 中指定的值,其中键是标签名,字典值是要将标签设置成的值。

set_tags 方法应仅在对象的 __init__ 方法中、构造期间或通过 __init__ 直接构造后调用。

当前标签值可以通过 get_tagsget_tag 检查。

参数:
**tag_dictdict

标签名: 标签值对的字典。

返回:
self

自身的引用。