1. 程式人生 > >k近鄰演算法--理解和使用場景

k近鄰演算法--理解和使用場景

1. k近鄰演算法:

                數學知識歐式距離:

                         

               使用k近鄰演算法的條件:

                        1. 你需要一個訓練的資料集,這個資料集包含各種特徵值和對應的label值 ,在使用前需要將各種特徵值

                       歸一化處理。

                        2. 利用訓練的資料集來對要分類的資料進行分類:

                                 根據歐式距離計算出要預測的資料與訓練資料集中距離最短的前k個值,然後根據前k個值對應的label

                         統計出 label值最最多的,如選擇的前k個對應的label:['dog','dog','dog','fish'] ,那麼這個結果是dog類。

             k近鄰演算法特點:

                      優點: 計算精度高,不受異常值影響。

                      缺點: 計算複雜度高,空間複雜度高

                     適用於: 帶lable的數值類

             python中主要使用函式:

             主要的使用numpy 模組,這個模組主要有兩種資料型別: 

                         1.  array 型別

                         2.  matrix 型別 

            mat:   將array 轉化成 matrix

            matix.min(0)  獲取特徵值最小值

            matix.max(0)  獲取特徵值最大值