""
" 網格搜尋 通過不同引數組合嘗試訓練網路
獲得最優引數、最優模型"""
import numpy as np
import sklearn.*****_bayes as nb
import matplotlib.pyplot as mp
import sklearn.svm as svm
import sklearn.model_selection as ms
import sklearn.metrics as sm
# 載入資料
data = np.loadtxt(
"./multiple2.txt", delimiter=
",")
x = data[:, :2].astype(
"float"
)y = data[:, -1].astype(
"float"
)print(x.shape, x.dtype)
print(y.shape, y.dtype)
train_x, test_x, train_y, test_y = \
ms.train_test_split(x, y, test_size=0.25, random_state=7)
# svc probability 是否儲存置信概率
model = svm.svc(probability=true)
# 設定網格引數
params =[,
,]# 網格搜尋 確定最優超引數
model = ms.gridsearchcv(model, params, cv=5)
model.fit(train_x, train_y)
print(model.best_params_)
# 最優引數
print(model.best_score_)
# 最好得分
print(model.best_estimator_)
sklearn之網格搜尋用法
網格搜尋 能夠幫助我們同時調整多個引數的技術,列舉技術,給定幾個引數的取值範圍取最優 缺點 給出的引數一定會用上,不能自己捨棄引數,多個引數的搭配可能沒有少數幾個引數 自己調的 的分數高 以決策樹為例 from sklearn.tree import decisiontreeclassifier f...
sklearn 引數搜尋
引數搜尋 提前設定好引數可以選擇的候選值,然後根據不同引數組合對於模型泛化能力的貢獻,選取最佳的超引數組合。gridsearchcv,基於交叉驗證的網格搜尋法 將要搜尋的引數候選值輸入搜尋器內,搜尋器遍歷每一種引數組合,使用交叉驗證法對比每種引數組合下模型的表現,返回表現最好模型的引數值 優點 自動...
引數網格搜尋
gridsearchcv,它存在的意義就是自動調參,只要把引數輸進去,就能給出最優化的結果和引數。但是這個方法適合於小資料集,一旦資料的量級上去了,很難得出結果。這個時候就是需要動腦筋了。資料量比較大的時候可以使用乙個快速調優的方法 座標下降。它其實是一種貪心演算法 拿當前對模型影響最大的引數調優,...