克隆#

sklearn.base.clone(estimator, *, safe=True)[源代码]#

用相同的参数构造一个新的非拟合估计量。

克隆在估计器中深度复制模型,而不实际复制附加数据。它返回一个新的估计器,该估计器具有尚未在任何数据上进行匹配的相同参数。

在 1.3 版本发生变更: 代表们 estimator.__sklearn_clone__ 如果该方法存在。

参数:
estimator{list、tuple、set}估计器实例或单个 估计器实例

要克隆的估计量或估计量组。

safe布尔,默认=True

如果safe为False,克隆将退回到不是估计器的对象上的深度副本。如果被忽视 estimator.__sklearn_clone__ 存在.

返回:
estimator对象

输入的深度副本,如果输入是估计器,则是估计器。

注意到

如果估算者的 random_state 参数是一个整数(或者如果估计器没有 random_state 参数)、一个 exact clone 返回:克隆和原始估计器将给出完全相同的结果。否则, statistical clone 返回:克隆可能会返回与原始估计器不同的结果。更多详情见 控制随机性 .

示例

>>> from sklearn.base import clone
>>> from sklearn.linear_model import LogisticRegression
>>> X = [[-1, 0], [0, 1], [0, -1], [1, 0]]
>>> y = [0, 0, 1, 1]
>>> classifier = LogisticRegression().fit(X, y)
>>> cloned_classifier = clone(classifier)
>>> hasattr(classifier, "classes_")
True
>>> hasattr(cloned_classifier, "classes_")
False
>>> classifier is cloned_classifier
False