[英]Scikit-learn using GridSearchCV on DecisionTreeClassifier
[英]Choosing top k models using GridSearchCV in scikit-learn
是否有一種簡單/預先存在的方式在scikit-learn中執行網格搜索,然后自動返回前k個最佳表現模型或自動平均其輸出? 我打算嘗試以這種方式減少過度擬合。 我還沒有找到與此相關的任何內容。
編輯:為了澄清,我知道sklearn的GridSearch,我正在尋找一個選項來執行網格搜索,然后返回最佳k表現最好的模型或平均值,而不是只返回最好的單一模型。
如果您將已安裝的GridSearchCV
對象作為grid
,則可以使用grid.cv_results_
獲取每個參數的結果。 我通常將其加載為pandas DataFrame。
import pandas as pd
results = pd.DataFrame(grid.cv_results_)
results.sort_values(by='rank_test_score', inplace=True)
然后,您可以從params
列獲取每個模型的params
。 例如,我想要第二個最佳參數集:
params_2nd_best = results.loc[1, 'params']
clf_2nd_best = grid.best_estimator_.set_params(**params_2nd_best)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.