實戰02 近朱者赤,近墨者黑——kNN

classify0(待判定的樣本向量, 數據集矩陣, 標籤向量, k值(選前k個))

sqDiffMat.sum(axis=1) 表示同一行累加(axis=0表示同一列累加)
pycharm->Ctrl+A(全選)->Ctrl+Alt+L(格式化代碼)
shell中 導入模塊 import kNN
from imp import * ————> reload(kNN)

不同k值,綠色點的分類不同
不同k值,綠色點的分類不同
創建kNN:
在這裏插入圖片描述
準備數據:

  • 從文本文件中解析數據
    returnMat,classLabelVector
  • 分析數據:使用Matplotlib創建散點圖
  • 歸一化數值
    歸一化到[0,1]或者[-1,1]區間

測試算法:
評估算法的正確率,如將數據的90%作爲訓練樣本來訓練分類器,其餘10%去測試分類器,檢測分類器的正確率。(或交叉驗證法)

示例:手寫識別系統(美國郵件分揀系統)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章