gpt4 book ai didi

python - 使用 TPOT CV 拟合时,fitted_pipeline_ 是否在整个数据集上重新训练?

转载 作者:太空宇宙 更新时间:2023-11-04 02:19:11 28 4
gpt4 key购买 nike

我正在使用带有 TPOTRegressor 的 LeaveOutGroupOut CV 策略

from tpot import TPOTRegressor
from sklearn.model_selection import LeaveOneGroupOut

tpot = TPOTRegressor(
config_dict=regressor_config_dict,
generations=100,
population_size=100,
cv=LeaveOneGroupOut(),
verbosity=2,
n_jobs=1)

tpot.fit(XX, yy, groups=groups)

优化后,得分最高的训练管道存储在 tpot.fitted_pipeline_ 中,tpot.fitted_pipeline_.predict(X) 可用。

我的问题是:安装的管道将接受哪些训练?例如

  • tpot 是否在将其存储到 tpot.fitted_pipeline_ 之前使用整个数据集重新调整优化的管道?
  • 或者这是否代表了一个训练有素的流水线,来自于

此外,是否有办法访问与获胜/优化管道的拆分集相对应的完整训练模型集?

最佳答案

TPOT 将适合完整训练集的最终“最佳”管道:code

因此,如果您打算通过 TPOT 对象直接与“最佳”管道交互,建议您永远不要将测试数据传递给 TPOT 拟合函数。

如果这对您来说是个问题,您可以直接通过 tpot.fitted_pipeline_ 属性重新训练管道,它只是一个 sklearn Pipeline 对象。或者,您可以使用 export 函数将“最佳”管道导出到其相应的 Python 代码,并与 TPOT 外部的管道交互。

Additionally, is there a way to access the complete set of trained models corresponding to the set of splits for the winning/optimized pipeline?

没有。 TPOT 在评估管道时使用 sklearn 的 cross_val_score,因此它从 CV 过程中抛出了训练好的管道集。但是,您可以通过 tpot.evaluated_individuals_ 属性访问 TPOT 评估的每个管道的评分结果。

关于python - 使用 TPOT CV 拟合时,fitted_pipeline_ 是否在整个数据集上重新训练?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52008298/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com