機器學習 模型選擇與調優 小白筆記

2021-10-08 19:01:43 字數 1718 閱讀 1159

"""用knn演算法對鳶尾花進行分類---網格搜尋交叉驗證

:return:

"""#1 獲取資料

iris=load_iris()

#2 劃分資料集

x_train,x_test,y_train,y_test=train_test_split(iris.data,iris.target,random_state=5)

#3 特徵抽取 :標準化

transfer=standardscaler()

x_train=transfer.fit_transform(x_train)

#跟測試集做一樣的處理

x_test=transfer.transform(x_test)

#4 knn演算法預估器

estimator=kneighborsclassifier()

#加入網格搜尋與交叉驗證

param_dit=

estimator=gridsearchcv(estimator,param_grid=param_dit,cv=10)

estimator.fit(x_train,y_train)

#5 模型評估

# 方法1 直接比對真實值和**值

y_predict=estimator.predict(x_test)

print("y_predict:\n",y_predict)

print("直接比對真實值和**值:\n",y_test==y_predict)

# 方法2 計算準確率

score=estimator.score(x_test,y_test)

print("準確率:\n",score)

print("最佳引數:\n",estimator.best_params_)

print("最佳結果:\n", estimator.best_score_)

print("最佳估計器:\n", estimator.best_estimator_)

if __name__ == '__main__':

know_iris()

機器學習之模型選擇與調優

交叉驗證 將拿到的訓練資料,分為訓練和驗證集。以下圖為例 將資料分成5份,其中乙份作為驗證集。然後經過5次 組 的測試,每次都更換不同的驗證集。即得到5組模型的結果,取平均值作為最終結果。又稱5折交叉驗證。五折交叉驗證,就是分成5份,三份訓練,乙份驗證,乙份測試 我們之前知道資料分為訓練集和測試集,...

機器學習之模型的選擇與調優

交叉驗證 將拿到的資料,分為訓練和驗證集。以下圖為例 將資料分成4份,其中乙份作為驗證集。然後經過4次 組 的測試,每次都更換不同的驗證集。即得到4組模型的結果,取平均值作為最終結果。又稱4折交叉驗證。通常情況下,有很多引數是需要手動指定的 如k 近鄰演算法中的k值 這種叫超引數。但是手動過程繁雜,...

Spark機器學習 模型選擇與引數調優之交叉驗證

機器學習可以簡單的歸納為 通過資料訓練y f x 的過程,因此定義完訓練模型之後,就需要考慮如何選擇最終我們認為最優的模型。如何選擇最優的模型,就是本篇的主要內容 在 統計學習方法 這本書中,曾經講過模型驗證的方法有三種,分別是簡單的交叉驗證,s折交叉驗證,留一交叉驗證 即把全部資料按照比例分割成兩...