如何解决RandomizedSearchCV 中的无效参数错误
我正在尝试在机器学习中学习 RandomizedSearchCV。
代码:
data = pd.read_csv("heart-disease.csv")
data_shuffled = data.sample(frac = 1)
X = data_shuffled.drop("target",axis = 1)
y = data_shuffled["target"]
X_train,X_test,y_train,y_test = train_test_split(X,y,test_size = 0.2)
grid = {"n_estimators": [10,100,200,500,1000,1200],"max_depth": [None,5,10,15,20,30],"max_featuers": ["auto","sqrt"],"min_samples_split": [2,4,6],"min_samples_leaf": [1,2,4]}
rfc = RandomForestClassifier(n_jobs = -1)
rscv = RandomizedSearchCV(estimator = rfc,param_distributions=grid,n_iter = 100,cv = 5,verbose = 1)
rscv.fit(X_train,y_train)
我得到的错误:
ValueError: Invalid parameter max_featuers for estimator RandomForestClassifier(min_samples_leaf=2,min_samples_split=6,n_estimators=1200,n_jobs=-1). Check the list of available parameters with `estimator.get_params().keys()`.
我检查了 RandomForestClassifier 库,看看我是否传递了错误的超参数名称,但我找不到任何东西。
解决方法
您在参数网格的定义中有一个错字:它应该是 max_features
而不是 max_featuers
。
grid = {
"n_estimators": [10,100,200,500,1000,1200],"max_depth": [None,5,10,15,20,30],"max_features": ["auto","sqrt"],# <-- change here
"min_samples_split": [2,4,6],"min_samples_leaf": [1,2,4]
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。