我试图拟合和评分逻辑回归模型但出现错误,任何人都可以帮我解决这个错误
Posted
技术标签:
【中文标题】我试图拟合和评分逻辑回归模型但出现错误,任何人都可以帮我解决这个错误【英文标题】:I was trying to fit and score logistic Regression model but getting error ,Can anyone help me this error 【发布时间】:2021-11-01 12:53:53 【问题描述】:我正在尝试试验逻辑回归机器学习模型,但我不知道为什么会出错。
models = "Logistic Regression":LogisticRegression(), def fit_and_score(models,x_train,x_test,y_train,y_test): np.random.seed(42) model_scores = #loop through model for name, model in models.items(): model.fit(x_train,y_train) model_scores[name] = model.score(x_test,y_test) return model_scores model_scores = fit_and_score(models=models, x_train=x_train, x_test=x_test, y_train=y_train, y_test=y_test) model_scores
AttributeError Traceback (most recent call last) <ipython-input-33-9c05affc041a> in <module> ----> 1 model_score = fit_and_score(models=models, 2 x_train=x_train, 3 x_test=x_test, 4 y_train=y_train, 5 y_test=y_test) <ipython-input-32-b7a75c9edc31> in fit_and_score(models, x_train, x_test, y_train, y_test) 21 for name , model in models.items(): 22 # fit the model to the data ---> 23 model.fit(x_train,y_train) 24 # Evaluate the model and append it's score to model scores 25 model_scores[name] = model.score(x_test,y_test) ~\Desktop\heart_disease_project\env\lib\site-packages\sklearn\linear_model\_logistic.py
适合(self, X, y, sample_weight) 1405 其他: 第1406章 -> 1407 fold_coefs_ = 并行(n_jobs=self.n_jobs,详细=self.verbose, 第1408章 1409 path_func(X, y, pos_class=class, Cs=[C_],
~\Desktop\heart_disease_project\env\lib\site-packages\joblib\parallel.py
在调用(自我,可迭代) 1039 # 个剩余作业。 第1040章 -> 1041 如果 self.dispatch_one_batch(iterator): 1042 self._iterating = self._original_iterator 不是无 第1043章
~\Desktop\heart_disease_project\env\lib\site-packages\joblib\parallel.py
在 dispatch_one_batch(self, iterator) 中 857 返回错误 858 其他: --> 859 self._dispatch(任务) 860 返回真 861
~\Desktop\heart_disease_project\env\lib\site-packages\joblib\parallel.py
in _dispatch(self, batch) 775 与 self._lock: 第776章 --> 777 作业 = self._backend.apply_async(batch, callback=cb) 第778章 779 # 在我们到达之前调用,导致 self._jobs
~\Desktop\heart_disease_project\env\lib\site-packages\joblib\_parallel_backends.py
在 apply_async(self, func, callback) 206 def apply_async(自我,功能,回调=无): 207 """安排一个函数运行""" --> 208 结果 = 立即结果(函数) 209 如果回调: 210回调(结果)
~\Desktop\heart_disease_project\env\lib\site-packages\joblib\_parallel_backends.py
in init(自我,批处理) 570 # 不要延迟应用程序,避免保持输入 第571章 --> 572 self.results = batch() 573 第574章
~\Desktop\heart_disease_project\env\lib\site-packages\joblib\parallel.py
在通话中(自己) 260 # 将默认进程数更改为-1 261 与并行后端(self._backend,n_jobs=self._n_jobs): --> 262 返回 [func(*args, **kwargs) 263 用于 self.items 中的 func、args、kwargs] 264
~\Desktop\heart_disease_project\env\lib\site-packages\joblib\parallel.py
在 (.0) 260 # 将默认进程数更改为-1 261 与并行后端(self._backend,n_jobs=self._n_jobs): --> 262 返回 [func(*args, **kwargs) 263 用于 self.items 中的 func、args、kwargs]
~\Desktop\heart_disease_project\env\lib\site-packages\sklearn\linear_model\_logistic.py
在 _logistic_regression_path(X, y, pos_class, Cs, fit_intercept, max_iter, tol, 详细, 求解器, coef, class_weight, dual, 惩罚, 拦截缩放,多类,随机状态,检查输入, max_squared_sum, sample_weight, l1_ratio) 760个选项=“iprint”:iprint,“gtol”:tol,“maxiter”:max_iter 第761章) --> 762 n_iter_i = _check_optimize_result( 763 求解器,opt_res,max_iter, 第764章
~\Desktop\heart_disease_project\env\lib\site-packages\sklearn\utils\optimize.py
在_check_optimize_result(求解器,结果,max_iter,extra_warning_msg) 241 "https://scikit-learn.org/stable/modules/" 第242章 --> 243 ).format(solver, result.status, result.message.decode("latin1")) 244 如果 extra_warning_msg 不是无: 245 warning_msg += "\n" + extra_warning_msg
AttributeError: 'str' object has no attribute 'decode'
【问题讨论】:
请提供所有错误信息而不是一行。 对不起,我对这一切完全陌生,但在这里我显示了完整的错误 对不起,我按照你的代码试试。这是正常的。我不能重复你的问题。 【参考方案1】:我尝试了不同的参数,它解决了这个问题。
models = "Logistic Regression" : LogisticRegression(solver='liblinear'),
"KNN" : KNeighborsClassifier(),
"Random Forest" : RandomForestClassifier()
【讨论】:
以上是关于我试图拟合和评分逻辑回归模型但出现错误,任何人都可以帮我解决这个错误的主要内容,如果未能解决你的问题,请参考以下文章