knn是函數名稱trianx,testx,k是變量名.最後函數值賦予j數據在excel?數據大的話用循環實現調用函數。
- 歷史問答
- 答案列表
knn流程:knn算法優缺點[朗讀]
作為一種非參數的分類算法,k-近鄰(knn)算法是非常有效和容易實現的.它已經廣泛應用於分類、回歸和模式識別等.在應用knn算法解決問題的時候,要注意兩個方面的問題——樣本權重和特徵權重.利用svm來確定特徵的權重,提出了基於svm的特徵加權算法(fwknn,featureweightedknn).實驗表明,在一定的條件下,fwknn能夠極大地提高分類準確率。
knn算法(k-nearestneighboralgorithm).是一種經典的分類算法.注意,不是聚類算法.所以這種分類算法必然包括了訓練過程.然而和一般性的分類算法不同,knn算法是一種懶惰算法.它並非像其他的分類算法先通過訓練建立分類模型.,而是一種被動的分類過程.它是邊測試邊訓練建立分類模型.算法的一般描述過程如下:1.首先計算每個測試樣本點到其他每個點的距離.這個距離可以是歐氏距離,餘弦距離等。
knn是通過測量不同特徵值之間的距離進行分類.它的思路是:如果一個樣本在特徵空間中的k個最相似(即特徵空間中最鄰近)的樣本中的大多數屬於某一個類別,則該樣本也屬於這個類別.優點:①訓練時間複雜度比支持向量機之類的算法低,僅為o(n)②和樸素貝葉斯之類的算法比,對數據沒有假設,準確度高,對異常點不敏感③knn主要靠周圍有限的鄰近的樣本,而不是靠判別類域的方法來確定所屬類別的,因此對於類域的交叉或重疊較多的待分樣本集來說,knn方法較其他方法更為適合缺點①計算複雜性高;空間複雜性高;②樣本不平衡的時候,對稀有類別的預測準確率低③可解釋性差,無法給出決策樹那樣的規則。
knn算法的核心思想非常簡單:在訓練集中選取離輸入的數據點最近的k個鄰居,根據這個k個鄰居中出現次數最多的類別(最大表決規則),作為該數據點的類別.算法描。