筆記 KNN之分類準確度

2022-06-07 05:24:08 字數 1736 閱讀 4004

分類準確度

以sklearn中的手寫數字datasets.load_digits為例,其是8*8的圖形,具有64個特徵值,類別由0到9

我們挑選出666這個圖形,將其視覺化

x = digits.data

some_digit = x[666]

some_digit_image = some_digit.reshape(8,8)

plt.imshow(some_digit_image,cmap = matplotlib.cm.binary)

我們使用自己的演算法(見前筆記)

將比例設定成0.2,k=3

將**到的結果放到y_predict中

y_predict = my_knn_clf.predict(x_test)
最後通過**和測試進行比對,得到**準確度

在pc中寫入metrics.py,其中寫入**將準確度計算也封裝起來

import numpy as np

def accuracy_score(y_true, y_predict):

"「」計算準確率「」"

assert y_true.shape[0] == y_predict.shape[0], \

"this size of y_true must be equal to the size of y_predict"

return sum(y_true == y_predict) / len(y_true)

執行結果無誤

方便起見,我們直接將準確度計算放到knn演算法中一併封裝

由於我們對演算法進行了改動,可能導致現在再執行的話,演算法裡面並沒有現在我們新新增的內容,因此我們需要重新啟動並執行所有**塊

我們就可以直接使用score得到準確度,而不是需要先對資料進行處理

與前筆記中對sklearn資料集操作同理

注意:隨機種子設定為666

4 4 分類準確度

分類準確度的計算方式 分類正確的樣本數 總樣本數 新加了score x test,y test 函式,不關心predict的具體值是多少 predict函式在score中呼叫 只關心模型的準確度 from sklearn.neighbors import kneighborsclassifier i...

03 分類準確度

在本文中,我們首先會再使用這樣的思路用我們的 knn 演算法在另外乙個更大一些的資料集上進行測試。與此同時,我們進一步來封裝 accuracy,同時也學習 sklearn 中分類的準確度相應的呼叫方式。最後,我們真正使用我們的測試資料集測試出的模型的結果來看,所謂的模型選擇是怎麼回事?在這個過程中,...

3 邏輯回歸 分類準確度

準確的有 0,0 1,1 其餘的都是 錯誤的點 from sklearn.metrics import confusion matrix 引入混淆矩陣 confusion matrix y test,y predict from sklearn.metrics import precision sc...