GridSearchCV
(estimator, param_grid, scoring=None, fit_params=None, n_jobs=1, iid=True, refit=True, cv=None, verbose=0, pre_dispatch='2*n_jobs', error_score='raise', return_train_score=True)
Parameters:
estimator:所使用的分類器,或者pipeline
param_grid:值為字典或者列表,即需要最優化的參數的取值
scoring:准確度評價標准,默認None,這時需要使用score函數;或者如scoring='roc_auc',根據所選模型不同,評價准則不同。字符串(函數名),或是可調用對象,需要其函數簽名形如:scorer(estimator, X, y);如果是None,則使用estimator的誤差估計函數。
n_jobs:並行數,int:個數,-1:跟CPU核數一致, 1:默認值。
pre_dispatch:指定總共分發的並行任務數。當n_jobs大於1時,數據將在每個運行點進行復制,這可能導致OOM,而設置pre_dispatch參數,則可以預先划分總共的job數量,使數據最多被復制pre_dispatch次
iid:默認True,為True時,默認為各個樣本fold概率分布一致,誤差估計為所有樣本之和,而非各個fold的平均。
cv:交叉驗證參數,默認None,使用三折交叉驗證。指定fold數量,默認為3,也可以是yield訓練/測試數據的生成器。
refit:默認為True,程序將會以交叉驗證訓練集得到的最佳參數,重新對所有可用的訓練集與開發集進行,作為最終用於性能評估的最佳模型參數。即在搜索參數結束后,用最佳參數結果再次fit一遍全部數據集。
verbose:日志冗長度,int:冗長度,0:不輸出訓練過程,1:偶爾輸出,>1:對每個子模型都輸出。
Attributes:
best_estimator_:效果最好的分類器
best_score_:成員提供優化過程期間觀察到的最好的評分
best_params_:描述了已取得最佳結果的參數的組合
best_index_:對應於最佳候選參數設置的索引(cv_results_數組的索引)。
Methods:
decision_function:使用找到的參數最好的分類器調用decision_function。
fit
(X, y=None, groups=None, **fit_params):訓練
get_params
(deep=True):獲取這個估計器的參數。
predict(X):用找到的最佳參數調用預估器。(直接預測每個樣本屬於哪一個類別)
predict_log_proda(X):用找到的最佳參數調用預估器。(得到每個測試集樣本在每一個類別的得分取log情況)
predict_proba(X):用找到的最佳參數調用預估器。(得到每個測試集樣本在每一個類別的得分情況)
score(X, y=None):返回給定數據上的得分,如果預估器已經選出最優的分類器。
transform(X):調用最優分類器進行對X的轉換。
再寫寫最近的感受吧:最近一直在忙着秋招,情緒不是很高漲,(自己是數學專業的,自學的Python以及計算機的其他知識,不想當老師,也因為各種原因不想考研)因為沒有看到希望,整天都在看書,刷題,希望能夠得到某一位公司的垂青!!!一會要去參加一場宣講會,希望會有好的收獲吧!!!希望未來可期,雖然我不是學計算機的,但是我有學習能力,我肯努力呀!希望有人能夠看到我!!!