Python:';GridSearchCV';对象没有属性';coef';
我试图返回我的逻辑回归模型的系数。以下是我创建模型的方式:Python:';GridSearchCV';对象没有属性';coef';,python,logistic-regression,Python,Logistic Regression,我试图返回我的逻辑回归模型的系数。以下是我创建模型的方式: logreg = LogisticRegression(solver = 'liblinear') model = GridSearchCV(logreg, cv = 3, param_grid = { 'penalty': ('l1', 'l2'), 'C': [0.5, 0.6, 0.7, 0.8, 0.9], 'max_iter': [100] }) model.fit(X_train, y_train
logreg = LogisticRegression(solver = 'liblinear')
model = GridSearchCV(logreg, cv = 3, param_grid = {
'penalty': ('l1', 'l2'),
'C': [0.5, 0.6, 0.7, 0.8, 0.9],
'max_iter': [100]
})
model.fit(X_train, y_train)
model.coef_ # here is where I get the error
# Validation (test)
y_pred = model.predict(X_test)
但我得到了以下错误:
AttributeError: 'GridSearchCV' object has no attribute 'coef_'
我甚至尝试了.best_score_和其他函数,看看是否可以用另一种方法找到系数。但是没有运气。你知道我如何解决这个问题吗?我想你正在寻找由
GridSearchCV
提供的最佳型号:
。。。
模型拟合(X\U系列、y\U系列)
最佳_模型=模型。最佳_估计量_
best_model.coef#这应该是您要找的
y_pred=最佳模型预测(X_检验)
您的模型只是一个
GridSearchCV
对象,而coef
是一个logreg对象的属性。best\u estimator\u
属性是网格搜索过程中发现的精度最高的估计器。我认为您正在寻找由GridSearchCV
提供的最佳模型:
。。。
模型拟合(X\U系列、y\U系列)
最佳_模型=模型。最佳_估计量_
best_model.coef#这应该是您要找的
y_pred=最佳模型预测(X_检验)
您的模型只是一个
GridSearchCV
对象,而coef
是一个logreg对象的属性。best\u estimator\uuu
属性是在网格搜索过程中找到的具有最高精度的估计器。您必须选择特定估计器才能访问coef\ucode>属性。尝试:
model.best_estimator_.coef_
GridSearchCV
对象本身没有系数,因为它不是一个估计器,它是一个循环参数并训练各种估计器的对象。您必须选择一个特定的估计器才能访问coef\ucode>属性。尝试:
model.best_estimator_.coef_
GridSearchCV
对象本身没有系数,因为它不是估计器,它是一个循环参数并训练各种估计器的对象。感谢您的回答。我试过了,又一次出现了类似的错误:“GridSearchCV”对象没有“best_estimator”属性如果你按照我写的那样做,你不可能收到相同的错误好吧,我在jupyter笔记本的一个新单元格中试过,认为它可以工作。但把它的权利后,适合,现在它的工作。谢谢测试代码时,1)是否以某种方式设置了refit=False
或2)未运行.fit
?感谢您的回复。我试过了,又一次出现了类似的错误:“GridSearchCV”对象没有“best_estimator”属性如果你按照我写的那样做,你不可能收到相同的错误好吧,我在jupyter笔记本的一个新单元格中试过,认为它可以工作。但把它的权利后,适合,现在它的工作。谢谢测试代码时,是否1)以某种方式设置了refit=False
或2)未运行.fit
?