gpt4 book ai didi

python - TPOT:使用 TPOTRegressor 时出现酸洗错误

转载 作者:太空宇宙 更新时间:2023-11-03 11:43:26 25 4
gpt4 key购买 nike

我有一个名为 X 的 DataFrame 和一组名为 Y 的目标值。

对于我的大部分模型,我都会做这样的事情(只是一个例子):

from sklearn.linear_model import LassoCV
clf = LassoCV()
score = cross_val_score(estimator = clf, X = X, y = Y, cv = KFold(n_splits = 3, random_state = 100), n_jobs = -1, \
scoring = "neg_mean_squared_error")
np.mean([np.sqrt(-x) for x in score])

我正在尝试以类似的方式使用 TPOT,如下所示:

from tpot import TPOTRegressor
tpot = TPOTRegressor(generations=20, population_size=100, verbosity=2)

score = cross_val_score(estimator = tpot, X = X, y = Y, cv = KFold(n_splits = 3, random_state = 100), n_jobs = -1, \
scoring = "neg_mean_squared_error")
np.mean([np.sqrt(-x) for x in score])

TPOT 启动但随后给我如下酸洗错误:

PicklingError: Can't pickle <type 'instancemethod'>: it's not found as __builtin__.instancemethod

知道为什么会这样吗/如何让 TPOT 正常运行?

谢谢!

最佳答案

如果您使用的是 Python 2,尝试:

import dill  

这样 lambda 函数就可以被 pickle....对我有用...

在 Python 3 中,您可能需要:

import dill as pickle

关于python - TPOT:使用 TPOTRegressor 时出现酸洗错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44813343/

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