gpt4 book ai didi

python - 在 python 中调整 ElasticNet 参数 sklearn 包

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

我正在尝试使用 GridSearchCV 从 sklearn 包中实现 ElasticNet。我的数据都是数字!我得到一个错误,我不明白是什么问题。当尝试实现线性回归和套索时,这不是问题。有人可以帮忙吗?

代码:

from sklearn.linear_model import ElasticNet
from sklearn.model_selection import GridSearchCV

# Use grid search to tune the parameters:

parametersGrid = {"max_iter": [1, 5, 10],
"alpha": [0.0001, 0.001, 0.01, 0.1, 1, 10, 100],
"l1_ratio": np.arange(0.0, 1.0, 0.1)}

eNet = ElasticNet()
grid = GridSearchCV(eNet, parametersGrid, scoring='accuracy', cv=10)
grid.fit(X_train, Y_train)
Y_pred = grid.predict(X_test)

错误:

File "C:\Users\..\Anaconda2\lib\site-packages\sklearn\utils\validation.py", line 58, in _assert_all_finite
" or a value too large for %r." % X.dtype)
ValueError: Input contains NaN, infinity or a value too large for dtype('float64').

最佳答案

将用于分类的精度更改为 r2 用于回归:

grid = GridSearchCV(eNet, parametersGrid, scoring='r2', cv=10)

并从数据中移除 nan 等值

indx = ~np.isnan(x).any(axis=1)
X_train = X_train[indx]
Y_train = Y_train[indx]

这是我在代码和错误堆栈中看到的两个直接问题

关于python - 在 python 中调整 ElasticNet 参数 sklearn 包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46051985/

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