關於knn的筆記

圖像分類器:
nearest neighbour :
訓練:記錄數據
測試:計算相似度
最近鄰算法魯棒性差,易受噪聲干擾
k-nearest neighbours :
先選出k個最相近的樣本再投票
相似性度量函數:
L1:對數據值敏感,如果輸入數據有具體的意義,可以代表特徵,L1更合適;L2則與之相反。
在knn算法中,在訓練前,需要提前確定k和距離函數(超參數)。
對於deep learning ,將數據分爲train+validation+test
對於machine learning,常用交叉驗證法,先從數據集中留出一部分用作test data,其餘分爲k折,每次拿一折做validation data,另外折數的data做train data,在train data進行試驗(不同超參數下學習參數),直到每份折數都被用作validation data,纔算是完成一次訓練。選出在驗證集上表現優秀的學習算法,將其對應的參數和超參數用到測試集上,表示最終算法的泛化能力。測試集,只有到了最後纔會被使用。
在圖像分類問題中,不使用knn的理由:
1、測試費時
2、度量函數無法很好地區分圖像
3、knn背後的理論基礎:有足夠的數據散佈在樣本空間,此時再去測試未知樣本比較有說服力。但是對於圖像來說,維數很大,這就要求有足夠的訓練數據!可是哪怕真的有很多很多的數據,測試也巨費時間。

發佈了86 篇原創文章 · 獲贊 9 · 訪問量 9462
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章