【机器学习】解决机器学习中OneVsRestClassifier的网格调参Invalid parameter max_depth for estimator OneVsRestClassifier

简介: 文章介绍了如何使用XGBClassifier和OneVsRestClassifier进行网格搜索调参,以找到最佳的模型参数。

简单模型网格调参

from xgboost import XGBClassifier
from sklearn.multiclass import OneVsRestClassifier
from sklearn.model_selection import train_test_split,GridSearchCV
param_test1 = {'max_depth':range(3,10,2),'min_child_weight':range(1,6,2)}

model = XGBClassifier(eval_metric= 'mlogloss',
                                        use_label_encoder=False,
                                        learning_rate =0.1,
                                        n_estimators=100,
                                        gamma=0,
                                        subsample=0.8,
                                        colsample_bytree=0.8,
                                        nthread=4,
                                        scale_pos_weight=1,
                                        seed=27,
                                        verbose=True)
gsearch1 = GridSearchCV(model,param_grid = param_test1,scoring='roc_auc',n_jobs=20, cv=5,verbose=2)
gsearch1.fit(X_train, y_train)
print("最佳参数\n",gsearch1.best_params_)
print("最佳得分",gsearch1.best_score_)

使用OneVsRestClassifier的调参

需要在每个参数面前加上estimator__

param_test1 = {'estimator__max_depth':range(3,10,2),'estimator__min_child_weight':range(1,6,2)}

model = OneVsRestClassifier(XGBClassifier(eval_metric= 'mlogloss',
                                        use_label_encoder=False,
                                        learning_rate =0.1,
                                        n_estimators=100,
                                        gamma=0,
                                        subsample=0.8,
                                        colsample_bytree=0.8,
                                        nthread=4,
                                        scale_pos_weight=1,
                                        seed=27,
                                        verbose=True))
    gsearch1 = GridSearchCV(model,param_grid = param_test1,scoring='roc_auc',n_jobs=20, cv=5,verbose=2)
    gsearch1.fit(X_train, y_train)
print("最佳参数\n",gsearch1.best_params_)
print("最佳得分",gsearch1.best_score_)
目录
相关文章
|
机器学习/深度学习 分布式计算 自然语言处理
Spark机器学习管道 - Estimator
Spark机器学习管道 - Estimator
|
机器学习/深度学习 存储 负载均衡
分布式机器学习(Parameter Server)
分布式机器学习(Parameter Server)
345 0
|
20天前
|
机器学习/深度学习 算法 数据挖掘
8个常见的机器学习算法的计算复杂度总结
8个常见的机器学习算法的计算复杂度总结
8个常见的机器学习算法的计算复杂度总结
|
11天前
|
机器学习/深度学习 数据采集 算法
数据挖掘和机器学习算法
数据挖掘和机器学习算法
|
14天前
|
机器学习/深度学习 数据采集 存储
一文读懂蒙特卡洛算法:从概率模拟到机器学习模型优化的全方位解析
蒙特卡洛方法起源于1945年科学家斯坦尼斯劳·乌拉姆对纸牌游戏中概率问题的思考,与约翰·冯·诺依曼共同奠定了该方法的理论基础。该方法通过模拟大量随机场景来近似复杂问题的解,因命名灵感源自蒙特卡洛赌场。如今,蒙特卡洛方法广泛应用于机器学习领域,尤其在超参数调优、贝叶斯滤波等方面表现出色。通过随机采样超参数空间,蒙特卡洛方法能够高效地找到优质组合,适用于处理高维度、非线性问题。本文通过实例展示了蒙特卡洛方法在估算圆周率π和优化机器学习模型中的应用,并对比了其与网格搜索方法的性能。
90 1
|
1月前
|
机器学习/深度学习 存储 人工智能
【数据挖掘】2022年2023届秋招知能科技公司机器学习算法工程师 笔试题
本文是关于2022-2023年知能科技公司机器学习算法工程师岗位的秋招笔试题,包括简答题和编程题,简答题涉及神经网络防止过拟合的方法、ReLU激活函数的使用原因以及条件概率计算,编程题包括路径行走时间计算和两车相向而行相遇时间问题。
58 2
【数据挖掘】2022年2023届秋招知能科技公司机器学习算法工程师 笔试题
|
1月前
|
机器学习/深度学习 数据采集 数据可视化
基于python 机器学习算法的二手房房价可视化和预测系统
文章介绍了一个基于Python机器学习算法的二手房房价可视化和预测系统,涵盖了爬虫数据采集、数据处理分析、机器学习预测以及Flask Web部署等模块。
基于python 机器学习算法的二手房房价可视化和预测系统
|
20天前
|
机器学习/深度学习 算法 数据挖掘
机器学习必知必会10大算法
机器学习必知必会10大算法
|
21天前
|
机器学习/深度学习 算法 数据挖掘
【白话机器学习】算法理论+实战之决策树
【白话机器学习】算法理论+实战之决策树
|
1月前
|
机器学习/深度学习 算法 搜索推荐
【机器学习】机器学习的基本概念、算法的工作原理、实际应用案例
机器学习是人工智能的一个分支,它使计算机能够在没有明确编程的情况下从数据中学习并改进其性能。机器学习的目标是让计算机自动学习模式和规律,从而能够对未知数据做出预测或决策。
36 2