k-NN演算法的優點是什麼?
k-近鄰演算法是一種分類方法,它不假設類別成員關係(Y)與預測變數X1、X2、…、Xn之間關係的結構。
這是一種非引數方法,因為它不包含在假定的函式形式(包括線性迴歸中假定的線性形式)中估計引數。這種方法從資料集中資料預測變數值的相似性中提取資料。
k-NN方法的優點在於其完整性和對引數假設的需求。在存在大量訓練集的情況下,當每個類別都以預測變數值的多種組合為特徵時,這些方法表現得特別好。
例如,在房地產資料庫中,可能存在幾組{房屋型別、房間數量、街區、要價等},這些特徵可以用來描述房屋銷售速度快的房屋與在行業中停留時間長的房屋。
現實中利用k-NN方法的強大功能存在三個困難。
雖然不需要從訓練資料中計算引數(就像引數模型(包括迴歸)的情況一樣),但在大型訓練集中發現最近鄰的時間可能會受到限制。已經實現了多種概念來克服這個困難。主要概念如下:
它可以透過使用降維技術(如主成分分析)在降低的維度上工作來減少計算距離所需的時間。
它可以使用複雜的數結構(如搜尋樹)來加速最近鄰的識別。這種方法通常選擇一個“幾乎最近的”鄰居來提高速度。一個例子是使用分桶,其中資料被組合到桶中,以便每個桶中的資料彼此靠近。
用於限定為大的訓練集中所需的多資料隨著多個預測變數p呈指數增長。這是因為除非訓練集的數量隨著p呈指數增長,否則最近鄰的預期距離會隨著p急劇增加。這種現象稱為維度災難,這是一個與某些分類、預測和聚類方法相關的基本問題。
k-NN是“懶惰學習者” - 耗時的計算被延遲到預測時。對於每個要預測的資料,它只能在預測時計算其與完整訓練資料集的距離。這種行為限制了使用該演算法同時對多個數據進行即時預測。
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP