【问题标题】:Fitting multiple instances of the same scikit-learn model拟合同一 scikit-learn 模型的多个实例
【发布时间】:2021-06-09 22:10:51
【问题描述】:

我正在尝试对我的数据集运行多个多项逻辑回归。运行一个模型后,我会尝试将刚刚运行的模型附加到列表中,以便稍后访问特定模型。 代码看起来像这样

models = []
for i in range(0, 10):
  model = sklearn.linear_model.LogisticRegression()
  model.fit(x,y)
  models.append(model)

其中 x 和 y 在每个 for 迭代中都不同。问题是我在最终数组“模型”的每个元素中得到的系数/模型与 for 循环的最终迭代相同。我假设这是因为我只是在每次迭代时更新参考,而不是每次都创建新的逻辑回归模型。有人能指出一个更好的方法吗?

【问题讨论】:

    标签: python machine-learning scikit-learn logistic-regression


    【解决方案1】:

    您可能对clone function 感兴趣。

    sklearn.base.clone(estimator, *, safe=True)[来源]

    用相同的参数构造一个新的未拟合估计器。 Clone 在估算器中对模型进行深层复制,而无需实际复制附加数据。它会产生一个新的估计器,其参数与任何数据都没有拟合。

    from sklearn.base import clone
    
    model = LogisticRegression()
    new_model = clone(model)
    

    【讨论】:

    猜你喜欢
    • 2021-05-09
    • 2015-12-01
    • 2014-01-07
    • 2021-01-06
    • 2017-07-13
    • 2013-12-19
    • 2022-01-11
    • 2015-03-25
    • 2015-10-25
    相关资源
    最近更新 更多