機器學習 分類模型的評估

2021-10-06 03:22:27 字數 2123 閱讀 6081

estimator.score()

混淆矩陣

在分類任務下,**結果與正確標記之間存在四種不同的組合,構成混淆矩陣(適用於多分類)

貓:混淆矩陣

狗:混淆矩陣

評估標準:準確率:精確率和召回率。

精確率:

**結果為正例樣本中真實為正例的比例(查的準)

召回率:

真實為正例的樣本中**結果為正例的比例(查的對,對正樣本的區分能力)

其他的分類標準,f1-score,反映了模型的穩健性

交叉驗證:所有資料分成n等分,將拿到的訓練資料,分成訓練和驗證集。

(4折交叉驗證)

把這四個準確率求平均值模型結果。

通常情況下,有很多引數是需要手動指定的(如k-近鄰演算法中的k值),這種叫超引數。但是手動過程繁雜,所以需要對模型預設幾種超引數組合。每組超引數都採用交叉驗證來進行評估。最後選出最優引數組合建立模型。

要是有兩組資料,就兩兩組合。

超引數搜尋-網格搜尋api

源**:

from sklearn.model_selection import gridsearchcv

defknncls()

:#進行演算法流程 超引數

knn= kneightborsclassifier(n_neighbors=

)#構造一些引數的值進行搜尋

param=

#進行網格搜尋

gc=gridsearchcv(knn,param_grid=param,cy=2)

gc.fit(x_train,y_train)

#**準確率

print

("在測試及上準確率:"

,gc.score(x_test,y_test)

)print

("在交叉驗證當中最好的結果:"

,gc.best_score_)

print

("選擇最好的模型是:"

,gc.best_estimator_)

print

("每個超引數每次交叉驗證的結果:"

,gc.cv_results_)

return

none

if __name__==

"__main"

: knncls(

)

結果:

機器學習分類模型效果評估指標

機器學習分類模型效果評估指標 準確率 精確率 召回率 f1 score 1 準確率 精確率 召回率 f1 score 我們以分類演算法為例,假設班裡有50個同學,其中男生30個,女生20個,我們根據身高 體重 頭髮長度 聲音分貝等等特徵,想找到所有女生,比如已經有這樣乙個分類器了,得到結果如下 這裡...

機器學習的模型評估

機器演算法有很多,各種模型的在不同的場景下各有優劣。所以需要一些方法來對機器學習的方法有乙個判斷。真實情況 正例反例 正例tp 真正例 fn 假反例 反例fp 假正例 tn 真反例 p tpt p fp r tptp fnroc reciever operating characteristic 是...

分類模型的評估

1.混淆矩陣 對於乙個分類器 二分類 結果和真實情況總共存在四種情況,值分為正類 負類,真實值分分為正類 父類,兩兩組合,共有四種情況,如下所示,即組成乙個混淆矩陣 針對多分類問題,真實情況有n類,情況有n類,所以其混淆矩陣為nxn 準確率即為所有 正確的樣本 樣本總數 即 accuracy tp ...