日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

K 近邻法(K-Nearest Neighbor, K-NN)

發布時間:2024/7/5 编程问答 51 豆豆
生活随笔 收集整理的這篇文章主要介紹了 K 近邻法(K-Nearest Neighbor, K-NN) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

    • 1. k近鄰算法
    • 2. k近鄰模型
      • 2.1 模型
      • 2.2 距離度量
        • 2.2.1 距離計算代碼 Python
      • 2.3 kkk 值的選擇
      • 2.4 分類決策規則
    • 3. 實現方法, kd樹
      • 3.1 構造 kdkdkd
        • Python 代碼
      • 3.2 搜索 kdkdkd
        • Python 代碼
    • 4. 鳶尾花KNN分類
      • 4.1 KNN實現
      • 4.2 sklearn KNN
    • 5. 文章完整代碼

k近鄰法(k-nearest neighbor,k-NN)是一種基本分類與回歸方法。

  • 輸入:實例的特征向量,對應于特征空間的點
  • 輸出:實例的類別,可以取多類
  • 假設:給定一個訓練數據集,其中的實例類別已定。
  • 分類:對新的實例,根據其k個最近鄰的訓練實例的類別,通過多數表決等方式進行預測。因此,k近鄰法不具有顯式的學習過程。
  • k近鄰法實際上利用訓練數據集對特征向量空間進行劃分,并作為其分類的“模型”。

k近鄰法1968年由Cover和Hart提出。

1. k近鄰算法

輸入:一組訓練數據集,特征向量 xix_ixi?,及其類別 yiy_iyi?,給定實例特征向量 xxx
輸出:實例 xxx 所屬的類 yyy

  • 根據距離度量,在訓練集中找出與 xxx 最鄰近的 kkk 個點,涵蓋這 kkk 個點的 xxx 的鄰域記為 Nk(x)N_k(x)Nk?(x)
  • Nk(x)N_k(x)Nk?(x) 中根據分類決策規則(如,多數表決)決定 xxx 的類別 yyy
    y=arg?max?cj∑xi∈Nk(x)I(yi=cj),i=1,2,...,N,j=1,2,...,Ky = \argmax\limits_{c_j} \sum\limits_{x_i \in N_k(x) } I(y_i = c_j),\quad i=1,2,...,N, j = 1,2,...,Ky=cj?argmax?xi?Nk?(x)?I(yi?=cj?),i=1,2,...,N,j=1,2,...,K
    III 為指示函數,表示當 yi=cjy_i=c_jyi?=cj?III 為 1, 否則 III 為 0
    k=1k=1k=1 時,特殊情況,稱為最近鄰算法,跟它距離最近的點作為其分類
  • 2. k近鄰模型

    三要素:k值的選擇、距離度量、分類決策規則

    2.1 模型

    • kkk 近鄰模型,三要素確定后,對于任何一個新的輸入實例,它的類唯一確定
    • 這相當于根據上述要素將特征空間劃分為一些子空間,確定子空間里的每個點所屬的類。這一事實從最近鄰算法中可以看得很清楚。

    2.2 距離度量

    空間中兩個點的距離是兩個實例相似程度的反映。

    • LpL_pLp? 距離:
      設特征 xix_ixi?nnn 維的,Lp(xi,xj)=(∑l=1n∣xi(l)?xj(l)∣p)1pL_p(x_i,x_j) = \bigg(\sum\limits_{l=1}^n |x_i^{(l)}-x_j^{(l)}|^p \bigg)^{\frac{1}{p}}Lp?(xi?,xj?)=(l=1n?xi(l)??xj(l)?p)p1?
    • 歐氏距離:上面 p=2p=2p=2 時,L2(xi,xj)=(∑l=1n∣xi(l)?xj(l)∣2)12L_2(x_i,x_j) = \bigg(\sum\limits_{l=1}^n |x_i^{(l)}-x_j^{(l)}|^2 \bigg)^{\frac{1}{2}}L2?(xi?,xj?)=(l=1n?xi(l)??xj(l)?2)21?
    • 曼哈頓距離:上面 p=1p=1p=1 時,L1(xi,xj)=∑l=1n∣xi(l)?xj(l)∣L_1(x_i,x_j) = \sum\limits_{l=1}^n |x_i^{(l)}-x_j^{(l)}|L1?(xi?,xj?)=l=1n?xi(l)??xj(l)?
    • 切比雪夫距離:當 p=∞p=\inftyp= 時,它是坐標距離的最大值:L∞(xi,xj)=max?l∣xi(l)?xj(l)∣L_\infty(x_i,x_j) = \max\limits_l |x_i^{(l)}-x_j^{(l)}|L?(xi?,xj?)=lmax?xi(l)??xj(l)?

    2.2.1 距離計算代碼 Python

    import mathdef L_p(xi, xj, p=2):if len(xi) == len(xj) and len(xi) > 0:sum = 0for i in range(len(xi)):sum += math.pow(abs(xi[i] - xj[i]), p)return math.pow(sum, 1 / p)else:return 0 x1 = [1, 1] x2 = [5, 1] x3 = [4, 4] X = [x1, x2, x3] for i in range(len(X)):for j in range(i + 1, len(X)):for p in range(1, 5):print("x%d,x%d的L%d距離是:%.2f" % (i + 1, j + 1, p, L_p(X[i], X[j], p))) x1,x2的L1距離是:4.00 x1,x2的L2距離是:4.00 x1,x2的L3距離是:4.00 x1,x2的L4距離是:4.00 x1,x3的L1距離是:6.00 x1,x3的L2距離是:4.24 x1,x3的L3距離是:3.78 x1,x3的L4距離是:3.57 x2,x3的L1距離是:4.00 x2,x3的L2距離是:3.16 x2,x3的L3距離是:3.04 x2,x3的L4距離是:3.01

    2.3 kkk 值的選擇

    • k值的選擇會對k近鄰法的結果產生重大影響

    • 較小的 k 值,相當于用較小的鄰域中的訓練實例進行預測,“學習”的近似誤差(approximation error)會減小,只有與輸入實例較近的(相似的)訓練實例才會對預測結果起作用。但缺點是“學習”的估計誤差(estimation error)會增大,預測結果會對近鄰的實例點非常敏感

    • 如果鄰近的實例點恰巧是噪聲,預測就會出錯。換句話說,k值的減小就意味著整體模型變得復雜容易發生過擬合

    • 較大的 k 值,相當于用較大鄰域中的訓練實例進行預測。優點是可以減少學習的估計誤差,但缺點是學習的近似誤差會增大。這時與輸入實例較遠的(不相似的)訓練實例也會對預測起作用,使預測發生錯誤。

    • k值的增大就意味著整體的模型變得簡單

    • 如果 k=N,無論輸入實例是什么,都將簡單地預測它屬于在訓練實例中最多的類。模型過于簡單,完全忽略大量有用信息,不可取。

    • 應用中,k 值一般取一個比較小的數值。通常采用交叉驗證法來選取最優的 k 值。

    2.4 分類決策規則

    • 多數表決(majority voting rule)
      假設損失函數為0-1損失,對于 xix_ixi? 的近鄰域 Nk(x)N_k(x)Nk?(x) 的分類是 cjc_jcj?,那么誤分類率是:
      1k∑xi∈Nk(x)I(yi≠cj)=1?1k∑xi∈Nk(x)I(yi=cj)\frac{1}{k} \sum\limits_{x_i \in N_k(x) }I(y_i \neq c_j) = 1- \frac{1}{k}\sum\limits_{x_i \in N_k(x) } I(y_i = c_j)k1?xi?Nk?(x)?I(yi??=cj?)=1?k1?xi?Nk?(x)?I(yi?=cj?)
      要使誤分類率最小,那么就讓 ∑xi∈Nk(x)I(yi=cj)\sum\limits_{x_i \in N_k(x) } I(y_i = c_j)xi?Nk?(x)?I(yi?=cj?) 最大,所以選多數的那個類(經驗風險最小化)

    3. 實現方法, kd樹

    • 算法實現時,需要對大量的點進行距離計算,復雜度是 O(n2)O(n^2)O(n2),訓練集很大時,效率低,不可取

    • 考慮特殊的結構存儲訓練數據,以減少計算距離次數,如 kdkdkd

    3.1 構造 kdkdkd

    kdkdkd 樹是一種對 k 維空間中的實例點進行存儲以便對其進行快速檢索的樹形數據結構。

    • kdkdkd 樹是二叉樹,表示對k維空間的一個劃分(partition)。
    • 構造 kdkdkd 樹相當于不斷地用垂直于坐標軸的超平面將 k 維空間切分,構成一系列的k維超矩形區域。
    • kdkdkd 樹的每個結點對應于一個 k 維超矩形區域。

    構造 kdkdkd 樹的方法:

    • 根結點:使根結點對應于k維空間中包含所有實例點的超矩形區域;通過遞歸方法,不斷地對 k 維空間進行切分,生成子結點
    • 在超矩形區域(結點)上選擇一個坐標軸和在此坐標軸上的一個切分點,確定一個超平面,將當前超矩形區域切分為左右兩個子區域(子結點)
    • 實例被分到兩個子區域。這個過程直到子區域內沒有實例時終止(終止時的結點為葉結點)。在此過程中,將實例保存在相應的結點上。

    Python 代碼

    class KdNode():def __init__(self, dom_elt, split, left, right):self.dom_elt = dom_elt # k維向量節點(k維空間中的一個樣本點)self.split = split # 整數(進行分割維度的序號)self.left = left # 該結點分割超平面左子空間構成的kd-treeself.right = right # 該結點分割超平面右子空間構成的kd-treeclass KdTree():def __init__(self, data):k = len(data[0]) # 實例的向量維度def CreatNode(split, data_set):if not data_set:return Nonedata_set.sort(key=lambda x: x[split])split_pos = len(data_set) // 2 # 整除median = data_set[split_pos]split_next = (split + 1) % kreturn KdNode(median, split,CreatNode(split_next, data_set[:split_pos]),CreatNode(split_next, data_set[split_pos + 1:]))self.root = CreatNode(0, data)def preorder(self, root):if root:print(root.dom_elt)if root.left:self.preorder(root.left)if root.right:self.preorder(root.right) data = [[2, 3], [5, 4], [9, 6], [4, 7], [8, 1], [7, 2]] kd = KdTree(data) kd.preorder(kd.root)

    運行結果:

    [7, 2] [5, 4] [2, 3] [4, 7] [9, 6] [8, 1]

    3.2 搜索 kdkdkd

    給定目標點,搜索其最近鄰。

    • 先找到包含目標點的葉結點
    • 從該葉結點出發,依次回退到父結點;不斷查找與目標點最鄰近的結點
    • 當確定不可能存在更近的結點時終止。
    • 這樣搜索就被限制在空間的局部區域上,效率大為提高。
    • 目標點的最近鄰一定在以目標點為中心并通過當前最近點的超球體的內部。
    • 然后返回當前結點的父結點,如果父結點的另一子結點的超矩形區域與超球體相交,那么在相交的區域內尋找與目標點更近的實例點。
    • 如果存在這樣的點,將此點作為新的當前最近點。算法轉到更上一級的父結點,繼續上述過程。
    • 如果父結點的另一子結點的超矩形區域與超球體不相交,或不存在比當前最近點更近的點,則停止搜索。

    Python 代碼

    from collections import namedtuple# 定義一個namedtuple,分別存放最近坐標點、最近距離和訪問過的節點數 result = namedtuple("Result_tuple","nearest_point nearest_dist nodes_visited")def find_nearest(tree, point):k = len(point) # 數據維度def travel(kd_node, target, max_dist):if kd_node is None:return result([0] * k, float("inf"), 0)# python中用float("inf")和float("-inf")表示正負無窮nodes_visited = 1s = kd_node.split # 進行分割的維度pivot = kd_node.dom_elt # 進行分割的“軸”if target[s] <= pivot[s]: # 如果目標點第s維小于分割軸的對應值(目標離左子樹更近)nearer_node = kd_node.left # 下一個訪問節點為左子樹根節點further_node = kd_node.right # 同時記錄下右子樹else: # 目標離右子樹更近nearer_node = kd_node.right # 下一個訪問節點為右子樹根節點further_node = kd_node.lefttemp1 = travel(nearer_node, target, max_dist) # 進行遍歷找到包含目標點的區域nearest = temp1.nearest_point # 以此葉結點作為“當前最近點”dist = temp1.nearest_dist # 更新最近距離nodes_visited += temp1.nodes_visitedif dist < max_dist:max_dist = dist # 最近點將在以目標點為球心,max_dist為半徑的超球體內temp_dist = abs(pivot[s] - target[s]) # 第s維上目標點與分割超平面的距離if max_dist < temp_dist: # 判斷超球體是否與超平面相交return result(nearest, dist, nodes_visited) # 不相交則可以直接返回,不用繼續判斷# ----------------------------------------------------------------------# 計算目標點與分割點的歐氏距離p = np.array(pivot)t = np.array(target)temp_dist = np.linalg.norm(p-t)if temp_dist < dist: # 如果“更近”nearest = pivot # 更新最近點dist = temp_dist # 更新最近距離max_dist = dist # 更新超球體半徑# 檢查另一個子結點對應的區域是否有更近的點temp2 = travel(further_node, target, max_dist)nodes_visited += temp2.nodes_visitedif temp2.nearest_dist < dist: # 如果另一個子結點內存在更近距離nearest = temp2.nearest_point # 更新最近點dist = temp2.nearest_dist # 更新最近距離return result(nearest, dist, nodes_visited)return travel(tree.root, point, float("inf")) # 從根節點開始遞歸 from time import time from random import randomdef random_point(k):return [random() for _ in range(k)]def random_points(k, n):return [random_point(k) for _ in range(n)]ret = find_nearest(kd, [3, 4.5]) print(ret)N = 400000 t0 = time() kd2 = KdTree(random_points(3, N))#40萬個3維點(坐標值0-1之間) ret2 = find_nearest(kd2, [0.1, 0.5, 0.8]) t1 = time() print("time: ", t1 - t0, " s") print(ret2)

    運行結果:40萬個點,只用了4s就搜索完畢,找到最近鄰點

    Result_tuple(nearest_point=[2, 3], nearest_dist=1.8027756377319946, nodes_visited=4) time: 4.314465284347534 s Result_tuple(nearest_point=[0.10186986970329936, 0.5007753108096316, 0.7998708312483109], nearest_dist=0.002028350099282986, nodes_visited=49)

    4. 鳶尾花KNN分類

    4.1 KNN實現

    # -*- coding:utf-8 -*- # @Python Version: 3.7 # @Time: 2020/3/2 22:44 # @Author: Michael Ming # @Website: https://michael.blog.csdn.net/ # @File: 3.KNearestNeighbors.py # @Reference: https://github.com/fengdu78/lihang-code import math import numpy as np import pandas as pd import matplotlib.pyplot as plt from sklearn.datasets import load_iris from sklearn.model_selection import train_test_split from collections import Counterclass KNearNeighbors():def __init__(self, X_train, y_train, neighbors=3, p=2):self.n = neighborsself.p = pself.X_train = X_trainself.y_train = y_traindef predict(self, X):knn_list = []# 先在訓練集中取n個點出來,計算距離for i in range(self.n):dist = np.linalg.norm(X - self.X_train[i], ord=self.p)knn_list.append((dist, self.y_train[i]))# 再在剩余的訓練集中取出剩余的,計算距離,有距離更近的,替換knn_list里最大的for i in range(self.n, len(self.X_train)):max_index = knn_list.index(max(knn_list, key=lambda x: x[0]))dist = np.linalg.norm(X - self.X_train[i], ord=self.p)if knn_list[max_index][0] > dist:knn_list[max_index] = (dist, self.y_train[i])# 取出所有的n個最近鄰點的標簽knn = [k[-1] for k in knn_list]count_pairs = Counter(knn)# 次數最多的標簽,排序后最后一個 標簽:出現次數max_count = sorted(count_pairs.items(), key=lambda x: x[1])[-1][0]return max_countdef score(self, X_test, y_test):right_count = 0for X, y in zip(X_test, y_test): # zip 同時遍歷多個對象label = self.predict(X)if math.isclose(label, y, rel_tol=1e-5): # 浮點型相等判斷right_count += 1print("準確率:%.4f" % (right_count / len(X_test)))return right_count / len(X_test)if __name__ == '__main__':# ---------鳶尾花K近鄰----------------iris = load_iris()df = pd.DataFrame(iris.data, columns=iris.feature_names)df['label'] = iris.targetplt.scatter(df[:50][iris.feature_names[0]], df[:50][iris.feature_names[1]], label=iris.target_names[0])plt.scatter(df[50:100][iris.feature_names[0]], df[50:100][iris.feature_names[1]], label=iris.target_names[1])plt.xlabel(iris.feature_names[0])plt.ylabel(iris.feature_names[1])data = np.array(df.iloc[:100, [0, 1, -1]]) # 取前2種花,前兩個特征X, y = data[:, :-1], data[:, -1]# 切分數據集,留20%做測試數據X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)# KNN算法,近鄰選擇20個,距離度量L2距離clf = KNearNeighbors(X_train, y_train, 20, 2)# 預測測試點,統計正確率clf.score(X_test, y_test)# 隨意給一個點,用KNN預測其分類test_point = [4.75, 2.75]test_point_flower = '測試點' + iris.target_names[int(clf.predict(test_point))]print("測試點的類別是:%s" % test_point_flower)plt.plot(test_point[0], test_point[1], 'bx', label=test_point_flower)plt.rcParams['font.sans-serif'] = 'SimHei' # 消除中文亂碼plt.rcParams['axes.unicode_minus'] = False # 正常顯示負號plt.legend()plt.show() 準確率:1.0000 測試點的類別是:測試點setosa

    4.2 sklearn KNN

    sklearn.neighbors.KNeighborsClassifier

    class sklearn.neighbors.KNeighborsClassifier(n_neighbors=5, weights='uniform', algorithm='auto', leaf_size=30, p=2, metric='minkowski', metric_params=None, n_jobs=None, **kwargs)
    • n_neighbors: 臨近點個數
    • p: 距離度量
    • algorithm: 近鄰算法,可選{‘auto’, ‘ball_tree’, ‘kd_tree’, ‘brute’}
    • weights: 確定近鄰的權重
    from sklearn.neighbors import KNeighborsClassifier clf_skl = KNeighborsClassifier(n_neighbors=50, p=4, algorithm='kd_tree') start = time.time() sum = 0 for i in range(100):clf_skl.fit(X_train, y_train)sum += clf_skl.score(X_test, y_test) end = time.time() print("平均準確率:%.4f" % (sum/100)) print("花費時間:%0.4f ms" % (1000*(end - start)/100))

    5. 文章完整代碼

    # -*- coding:utf-8 -*- # @Python Version: 3.7 # @Time: 2020/3/2 22:44 # @Author: Michael Ming # @Website: https://michael.blog.csdn.net/ # @File: 3.KNearestNeighbors.py # @Reference: https://github.com/fengdu78/lihang-code import math import numpy as np import pandas as pd import matplotlib.pyplot as plt from sklearn.datasets import load_iris from sklearn.model_selection import train_test_split from collections import Counter import timedef L_p(xi, xj, p=2):if len(xi) == len(xj) and len(xi) > 0:sum = 0for i in range(len(xi)):sum += math.pow(abs(xi[i] - xj[i]), p)return math.pow(sum, 1 / p)else:return 0class KNearNeighbors():def __init__(self, X_train, y_train, neighbors=3, p=2):self.n = neighborsself.p = pself.X_train = X_trainself.y_train = y_traindef predict(self, X):knn_list = []# 先在訓練集中取n個點出來,計算距離for i in range(self.n):dist = np.linalg.norm(X - self.X_train[i], ord=self.p)knn_list.append((dist, self.y_train[i]))# 再在剩余的訓練集中取出剩余的,計算距離,有距離更近的,替換knn_list里最大的for i in range(self.n, len(self.X_train)):max_index = knn_list.index(max(knn_list, key=lambda x: x[0]))dist = np.linalg.norm(X - self.X_train[i], ord=self.p)if knn_list[max_index][0] > dist:knn_list[max_index] = (dist, self.y_train[i])# 取出所有的n個最近鄰點的標簽knn = [k[-1] for k in knn_list]count_pairs = Counter(knn)# 次數最多的標簽,排序后最后一個 標簽:出現次數max_count = sorted(count_pairs.items(), key=lambda x: x[1])[-1][0]return max_countdef score(self, X_test, y_test):right_count = 0for X, y in zip(X_test, y_test): # zip 同時遍歷多個對象label = self.predict(X)if math.isclose(label, y, rel_tol=1e-5): # 浮點型相等判斷right_count += 1print("準確率:%.4f" % (right_count / len(X_test)))return right_count / len(X_test)class KdNode():def __init__(self, dom_elt, split, left, right):self.dom_elt = dom_elt # k維向量節點(k維空間中的一個樣本點)self.split = split # 整數(進行分割維度的序號)self.left = left # 該結點分割超平面左子空間構成的kd-treeself.right = right # 該結點分割超平面右子空間構成的kd-treeclass KdTree():def __init__(self, data):k = len(data[0]) # 實例的向量維度def CreatNode(split, data_set):if not data_set:return Nonedata_set.sort(key=lambda x: x[split])split_pos = len(data_set) // 2 # 整除median = data_set[split_pos]split_next = (split + 1) % kreturn KdNode(median, split,CreatNode(split_next, data_set[:split_pos]),CreatNode(split_next, data_set[split_pos + 1:]))self.root = CreatNode(0, data)def preorder(self, root):if root:print(root.dom_elt)if root.left:self.preorder(root.left)if root.right:self.preorder(root.right)from collections import namedtuple# 定義一個namedtuple,分別存放最近坐標點、最近距離和訪問過的節點數 result = namedtuple("Result_tuple","nearest_point nearest_dist nodes_visited")def find_nearest(tree, point):k = len(point) # 數據維度def travel(kd_node, target, max_dist):if kd_node is None:return result([0] * k, float("inf"), 0)# python中用float("inf")和float("-inf")表示正負無窮nodes_visited = 1s = kd_node.split # 進行分割的維度pivot = kd_node.dom_elt # 進行分割的“軸”if target[s] <= pivot[s]: # 如果目標點第s維小于分割軸的對應值(目標離左子樹更近)nearer_node = kd_node.left # 下一個訪問節點為左子樹根節點further_node = kd_node.right # 同時記錄下右子樹else: # 目標離右子樹更近nearer_node = kd_node.right # 下一個訪問節點為右子樹根節點further_node = kd_node.lefttemp1 = travel(nearer_node, target, max_dist) # 進行遍歷找到包含目標點的區域nearest = temp1.nearest_point # 以此葉結點作為“當前最近點”dist = temp1.nearest_dist # 更新最近距離nodes_visited += temp1.nodes_visitedif dist < max_dist:max_dist = dist # 最近點將在以目標點為球心,max_dist為半徑的超球體內temp_dist = abs(pivot[s] - target[s]) # 第s維上目標點與分割超平面的距離if max_dist < temp_dist: # 判斷超球體是否與超平面相交return result(nearest, dist, nodes_visited) # 不相交則可以直接返回,不用繼續判斷# ----------------------------------------------------------------------# 計算目標點與分割點的歐氏距離p = np.array(pivot)t = np.array(target)temp_dist = np.linalg.norm(p - t)if temp_dist < dist: # 如果“更近”nearest = pivot # 更新最近點dist = temp_dist # 更新最近距離max_dist = dist # 更新超球體半徑# 檢查另一個子結點對應的區域是否有更近的點temp2 = travel(further_node, target, max_dist)nodes_visited += temp2.nodes_visitedif temp2.nearest_dist < dist: # 如果另一個子結點內存在更近距離nearest = temp2.nearest_point # 更新最近點dist = temp2.nearest_dist # 更新最近距離return result(nearest, dist, nodes_visited)return travel(tree.root, point, float("inf")) # 從根節點開始遞歸if __name__ == '__main__':# ---------計算距離----------------x1 = [1, 1]x2 = [5, 1]x3 = [4, 4]X = [x1, x2, x3]for i in range(len(X)):for j in range(i + 1, len(X)):for p in range(1, 5):print("x%d,x%d的L%d距離是:%.2f" % (i + 1, j + 1, p, L_p(X[i], X[j], p)))# ---------鳶尾花K近鄰----------------iris = load_iris()df = pd.DataFrame(iris.data, columns=iris.feature_names)df['label'] = iris.targetplt.scatter(df[:50][iris.feature_names[0]], df[:50][iris.feature_names[1]], label=iris.target_names[0])plt.scatter(df[50:100][iris.feature_names[0]], df[50:100][iris.feature_names[1]], label=iris.target_names[1])plt.xlabel(iris.feature_names[0])plt.ylabel(iris.feature_names[1])data = np.array(df.iloc[:100, [0, 1, -1]]) # 取前2種花,前兩個特征X, y = data[:, :-1], data[:, -1]# 切分數據集,留20%做測試數據X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)# KNN算法,近鄰選擇20個,距離度量L2距離clf = KNearNeighbors(X_train, y_train, 20, 2)# 預測測試點,統計正確率clf.score(X_test, y_test)# 隨意給一個點,用KNN預測其分類test_point = [4.75, 2.75]test_point_flower = '測試點' + iris.target_names[int(clf.predict(test_point))]print("測試點的類別是:%s" % test_point_flower)plt.plot(test_point[0], test_point[1], 'bx', label=test_point_flower)plt.rcParams['font.sans-serif'] = 'SimHei' # 消除中文亂碼plt.rcParams['axes.unicode_minus'] = False # 正常顯示負號plt.legend()plt.show()# ---------sklearn KNN----------from sklearn.neighbors import KNeighborsClassifierclf_skl = KNeighborsClassifier(n_neighbors=50, p=4, algorithm='kd_tree')start = time.time()sum = 0for i in range(100):clf_skl.fit(X_train, y_train)sum += clf_skl.score(X_test, y_test)end = time.time()print("平均準確率:%.4f" % (sum / 100))print("花費時間:%0.4f ms" % (1000 * (end - start) / 100))# ------build KD Tree--------------data = [[2, 3], [5, 4], [9, 6], [4, 7], [8, 1], [7, 2]]kd = KdTree(data)kd.preorder(kd.root)# ------search in KD Tree-----------from time import timefrom random import randomdef random_point(k):return [random() for _ in range(k)]def random_points(k, n):return [random_point(k) for _ in range(n)]ret = find_nearest(kd, [3, 4.5])print(ret)N = 400000t0 = time()kd2 = KdTree(random_points(3, N))ret2 = find_nearest(kd2, [0.1, 0.5, 0.8])t1 = time()print("time: ", t1 - t0, " s")print(ret2)

    總結

    以上是生活随笔為你收集整理的K 近邻法(K-Nearest Neighbor, K-NN)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    狠狠干狠狠插 | 国产精品一区二区三区免费视频 | 免费观看第二部31集 | 久久视频99 | aaa黄色毛片 | 亚洲视频 中文字幕 | 在线观看亚洲免费视频 | 日韩欧美综合 | 97精品国产97久久久久久春色 | 97成人在线观看 | 欧美黑人猛交 | 久久色亚洲 | 特级黄色片免费看 | 一本一道久久a久久精品蜜桃 | 国产一级视频免费看 | 久久伊人精品天天 | 最新久久免费视频 | 久久99电影 | 久久久久久久久影视 | 天天天操操操 | 日韩精品免费一区二区三区 | 99久久婷婷国产综合亚洲 | www.黄色片.com | 九色视频网| 高清免费av在线 | 日韩欧美在线一区二区 | 日本一区二区免费在线观看 | 日韩有码网站 | 亚洲国产资源 | 99国产一区 | 亚洲综合成人专区片 | 中文字幕888 | 日韩av免费一区 | 中文字幕人成乱码在线观看 | 精品人人人人 | 色网免费观看 | 久久久久久久久久福利 | 超碰97人| 91精品1区 | 国产精品系列在线观看 | 九九九在线观看 | 中文字幕一区二区在线播放 | 手机看片午夜 | 中文字幕在线乱 | 日韩精品中文字幕在线不卡尤物 | 一区二区激情 | 国产精品国产三级国产aⅴ9色 | 精品免费国产一区二区三区四区 | 免费观看性生活大片3 | 久久在线影院 | 91精品国产福利 | 日韩动漫免费观看高清完整版在线观看 | 午夜12点| 999日韩 | 欧美一区二区日韩一区二区 | 成人在线观看网址 | av中文字幕在线免费观看 | 欧美黑人巨大xxxxx | 免费福利在线播放 | 黄色日本片 | 国产亚洲精品久久久久久无几年桃 | 亚洲欧洲成人 | 一区在线免费观看 | 国产精品久久久久久久毛片 | 国产在线视频一区二区 | 久久爱992xxoo| 国产精品激情偷乱一区二区∴ | 91麻豆操 | 中文字幕日韩一区二区三区不卡 | 麻豆视频国产精品 | 99re6热在线精品视频 | 人人爱人人舔 | 国产91精品一区二区麻豆亚洲 | 色网站视频 | 奇米先锋 | 久久久免费精品国产一区二区 | 午夜12点 | 青青射| 亚洲免费在线观看视频 | 精品国产一区二区三区久久久久久 | 中文在线最新版天堂 | 插插插色综合 | 808电影| 日韩av网站在线播放 | 黄色大全免费网站 | 久久少妇免费视频 | 国产不卡在线 | 国产亚洲精品久久久久久 | 深夜免费小视频 | 手机在线观看国产精品 | 在线欧美日韩 | 97超级碰碰碰碰久久久久 | www色网站 | 欧美日韩不卡一区二区三区 | 欧美日韩在线网站 | 欧美一区二区三区在线看 | av成人资源 | 欧美 日韩 视频 | 97超碰中文字幕 | 国产黄a三级三级三级三级三级 | 欧美日韩精品在线 | 美女黄视频免费 | 亚洲最大的av网站 | 日韩区欠美精品av视频 | 欧美日韩三区二区 | 91视频免费看片 | 三级av中文字幕 | 国产资源精品在线观看 | 亚洲va男人天堂 | 亚洲国产中文字幕在线视频综合 | 免费国产在线视频 | 国产日本在线 | 午夜精品成人一区二区三区 | 日韩欧美一区二区在线播放 | 国产视频日韩视频欧美视频 | 欧美另类重口 | 婷婷色站| 视频在线精品 | 五月激情丁香图片 | 国产精品va | 五月激情综合婷婷 | 欧美少妇xx| 色吊丝在线永久观看最新版本 | 国产高清精品在线观看 | 国产精品欧美激情在线观看 | 亚洲五月婷 | 久久成人亚洲欧美电影 | 午夜色性片 | 国产精品私拍 | 婷婷色综合网 | 在线播放视频一区 | 欧美男同视频网站 | 香蕉视频在线免费看 | 亚洲精品在线看 | a在线播放 | 在线观看国产 | 国产专区在线视频 | 国产精品自拍在线 | 国产精品人人做人人爽人人添 | 欧美国产一区在线 | 国产精品久久久久一区二区三区共 | 中文字幕网站 | 久久福利在线 | 一级一片免费观看 | 欧美天天干 | 最新av网址在线 | 999电影免费在线观看2020 | 国产91大片 | 国产精品免费一区二区三区 | 日韩视频免费在线 | 色com网 | 人人射人人爱 | 五月激情久久 | 人人舔人人舔 | 色噜噜狠狠狠狠色综合 | 成人免费在线电影 | 精品久久久久国产免费第一页 | 亚洲精品人人 | 免费看污网站 | 玖玖视频网 | 久久精品8 | 免费h漫在线观看 | 亚洲精品国产高清 | 日韩av免费一区 | 日韩av中文在线观看 | 91福利专区 | 韩国精品福利一区二区三区 | 成年人黄色av | 免费网站黄色 | 久草精品国产 | 999成人| 国产精品九九久久99视频 | 亚洲午夜精品久久久久久久久久久久 | 一本到视频在线观看 | 成片视频免费观看 | 一区二区视频在线免费观看 | 中文字幕第一页在线播放 | 制服丝袜在线91 | 黄色国产成人 | 国产成人精品久久二区二区 | 国产99亚洲 | 国产亚洲精品日韩在线tv黄 | 国产精品视频资源 | 99 国产精品 | 中文字幕免费高清 | 国产裸体永久免费视频网站 | 日本精品久久久一区二区三区 | 国产自产高清不卡 | 国产精品18毛片一区二区 | av超碰免费在线 | 久久久午夜视频 | 欧美日韩在线视频观看 | 成人欧美一区二区三区在线观看 | 激情婷婷 | 韩国精品视频在线观看 | 在线播放国产一区二区三区 | 色综合久久久久综合 | 亚洲精品成人免费 | 国产玖玖精品视频 | 国产视频第二页 | 亚洲激情一区二区三区 | 97色视频在线 | 色播激情五月 | 这里有精品在线视频 | 亚洲色图色 | 午夜性色 | 丝袜一区在线 | 天天插日日插 | 欧美三级高清 | 丝袜av网站 | 亚洲精品成人av在线 | 国产精品久久久久高潮 | 亚洲成人高清在线 | 免费黄色a网站 | 色综合久久88色综合天天6 | 黄色成人在线观看 | 久久99深爱久久99精品 | 国产日韩视频在线观看 | 91av美女| 久久九九影视 | 日日夜夜天天人人 | 樱空桃av| 天天干天天拍天天操天天拍 | 免费在线观看a v | a黄色片 | 日韩欧美在线不卡 | 午夜一级免费电影 | 黄色一级在线视频 | 精品在线二区 | 91av在线视频免费观看 | 欧美一级裸体视频 | 久久久精品 一区二区三区 国产99视频在线观看 | 亚洲更新最快 | 国产高清 不卡 | 五月激情丁香 | 日本中文字幕影院 | 国产精品一区二区三区99 | 蜜桃av久久久亚洲精品 | 97成人资源站 | 麻豆久久精品 | 久草网首页 | 久久久久在线视频 | 狠狠色丁香婷婷 | 亚洲免费在线观看视频 | 国产a视频免费观看 | 曰本免费av| 一级精品视频在线观看宜春院 | 免费的成人av | .国产精品成人自产拍在线观看6 | 探花在线观看 | www.com在线观看 | 99久久婷婷国产综合亚洲 | 十八岁以下禁止观看的1000个网站 | 九九免费在线视频 | 丁香九月婷婷综合 | 精品一区二区免费在线观看 | 91福利视频久久久久 | 精品一区电影 | 国产色拍拍拍拍在线精品 | 日本中文乱码卡一卡二新区 | 国产精品久久久久久久久久久杏吧 | 欧美日韩一区二区三区视频 | 久久伦理 | 久久成人高清视频 | av播放在线 | 国产高清无线码2021 | 国产精品毛片完整版 | 伊人天堂久久 | 国产成人a v电影 | 97中文字幕 | 久久电影日韩 | 在线观看免费色 | 91视频在线国产 | 欧美日韩一区二区三区免费视频 | 久久久www成人免费精品张筱雨 | 久久精品国产免费 | 国内精品中文字幕 | 色伊人网 | 麻豆视频网址 | 91色视频 | 97精产国品一二三产区在线 | 欧美日韩国产一区二区在线观看 | 天天操狠狠操网站 | 天天操比 | 精品久久久久国产免费第一页 | 99久久精品国产亚洲 | 免费黄色小网站 | 久久综合九色综合久99 | 久久久久久久久久伊人 | 99视频在线精品国自产拍免费观看 | 91成人破解版 | 久久久久久久久久网站 | 91精品对白一区国产伦 | 久久精品欧美视频 | 亚洲91网站 | 亚洲国产精品电影在线观看 | 国产精品成人久久久 | 国产精品国产亚洲精品看不卡15 | 精品一二三区视频 | av千婊在线免费观看 | 日韩精品在线观看视频 | 亚洲国产三级 | 蜜臀av性久久久久蜜臀aⅴ流畅 | 久久久精品国产一区二区 | 久久老司机精品视频 | 国产一级大片在线观看 | 色资源在线观看 | 国产色黄网站 | 一区二区三区电影大全 | 亚洲国产日韩一区 | 国产96在线视频 | 精品久久久久久电影 | 色在线网| 三级黄色免费 | 欧美一区二区在线 | 成人久久18免费网站 | 国产麻豆精品久久一二三 | 激情av网 | 欧美日韩国内在线 | a极黄色片 | 欧美色图88| 超碰97人人干 | 黄色免费网站 | 成人a级免费视频 | 天天操综合| 亚洲高清在线观看视频 | 色五月成人 | 狠狠综合| 久久成人国产精品一区二区 | 国产精品久久久久久久av大片 | 久久av免费 | 最近最新中文字幕视频 | 国产一区在线视频 | 怡红院久久 | 久久精品看片 | 国产午夜精品av一区二区 | 最新国产精品视频 | 亚洲高清91 | a天堂最新版中文在线地址 久久99久久精品国产 | 国产亚洲精品久久久网站好莱 | 九草视频在线 | 夜夜操夜夜干 | 青青久草在线视频 | 91麻豆网站| 99色在线播放 | 欧美国产日韩在线观看 | 久久久久久久综合色一本 | 亚洲欧美综合 | 国产中文字幕av | 日韩av进入 | 亚洲播放一区 | 成人小视频在线观看免费 | 亚洲国内精品 | 一区二区在线电影 | 在线小视频你懂得 | 国产一区二区三区高清播放 | 超碰在线最新网址 | 国产在线国偷精品产拍免费yy | 国产淫片免费看 | 色婷婷av一区二 | 日韩欧美综合在线视频 | 国产大片免费久久 | 亚洲第一伊人 | 国产精品久久久久久久久岛 | 国产精品美女毛片真酒店 | 伊人射 | 色www精品视频在线观看 | 成人福利在线 | 91探花在线 | 韩国一区在线 | 国色天香永久免费 | 国产视频69 | www激情久久 | 91在线播放国产 | 人人超碰97 | 在线观看免费高清视频大全追剧 | 91传媒在线看 | 91桃色在线观看视频 | 8090yy亚洲精品久久 | 欧美一区日韩精品 | 精品国产欧美一区二区三区不卡 | 欧美日韩另类在线 | 久久人人爽人人人人片 | 国产一区二区免费看 | 九九九九热精品免费视频点播观看 | 久久久国产精品网站 | 国产精品成人一区二区三区 | 精品1区2区| 日韩av视屏在线观看 | 六月天色婷婷 | 国产精品123 | 久久久久国产精品午夜一区 | 97自拍超碰 | 日本黄色免费电影网站 | 国产亚洲视频在线免费观看 | 国产伦精品一区二区三区照片91 | 91豆麻精品91久久久久久 | 在线观看视频日韩 | 免费观看av | 国内精品久久久久影院优 | 亚洲成人资源 | 91入口在线观看 | 日本久久久久久久久久 | 96精品高清视频在线观看软件特色 | 久久99中文字幕 | 日韩精品高清视频 | 免费福利影院 | 亚洲影院天堂 | 99视频在线免费观看 | 综合国产在线观看 | 精品福利片 | 成人av影院在线观看 | 欧美ⅹxxxxxx| 久久高清国产视频 | 亚洲激情 在线 | 色av男人的天堂免费在线 | 不卡视频一区二区三区 | 久久国产精品成人免费浪潮 | 国产xvideos免费视频播放 | 国产精品女同一区二区三区久久夜 | 四虎成人精品 | 麻豆手机在线 | 天堂av免费看 | 日日操网| 69久久久| 免费在线精品视频 | av成人动漫在线观看 | 欧美日韩国产一区二区三区在线观看 | 毛片网站在线观看 | 最近免费中文视频 | 亚洲乱码久久久 | 日日爱夜夜爱 | 五月花丁香婷婷 | 精品专区一区二区 | 国产中文字幕一区 | 日日爱av| 久久精品99国产精品亚洲最刺激 | 国产手机精品视频 | 久久久久久久影院 | 亚洲黄色免费在线 | 日本精品久久久一区二区三区 | 狠狠色丁香婷婷综合最新地址 | 久久官网 | 丁香婷婷综合网 | 日韩免费在线一区 | 国产精品9区 | 国产超碰在线观看 | 亚洲婷婷在线 | 摸bbb搡bbb搡bbbb | 日本二区三区在线 | 久久人人爽视频 | 免费av网址大全 | 蜜臀av性久久久久av蜜臀三区 | 欧日韩在线 | 女人18毛片a级毛片一区二区 | 色香蕉在线 | 国产精品完整版 | 69久久99精品久久久久婷婷 | 欧美日韩高清一区二区 | 91豆花在线 | 在线观看不卡视频 | 天天射天天 | 欧美性精品| 天天躁天天操 | 国产 字幕 制服 中文 在线 | 丁香婷婷综合激情五月色 | 超碰av在线播放 | 中文字幕黄色av | 久久久久久久影院 | 日韩免费视频一区二区 | 欧美性色综合网站 | 四虎成人精品永久免费av | 伊人国产在线播放 | 国产精品99久久久久久久久 | 国产午夜三级 | 激情丁香综合五月 | av超碰在线观看 | 顶级欧美色妇4khd | 四虎在线永久免费观看 | 久草免费资源 | 日本久久成人 | 日韩女同av | 亚洲精品福利在线 | 婷婷电影在线观看 | 日韩一级电影网站 | 综合色播 | 成年人免费看片网站 | 婷婷在线播放 | 99色免费视频 | 久久久国产一区二区三区四区小说 | 天天搞天天 | 日韩黄色大片在线观看 | 日韩电影一区二区三区 | 天堂av观看 | 欧美亚洲精品在线观看 | 欧美91成人网 | 香蕉网址| 国产在线播放一区 | 国产日韩欧美在线免费观看 | 日韩中文字幕免费视频 | 中文字幕人成人 | 人九九精品 | 国产亚洲精品成人av久久影院 | 亚洲精品视频免费观看 | 午夜国产一区 | 97在线精品国自产拍中文 | 亚洲无吗视频在线 | 韩国av免费观看 | 欧美精品三级在线观看 | 久久不卡国产精品一区二区 | 在线综合 亚洲 欧美在线视频 | 香蕉网在线观看 | 久草网站 | 成年人看片 | 久久久久国产精品www | 婷婷丁香在线视频 | 久久只精品99品免费久23小说 | 亚洲成人av电影在线 | 在线天堂v | 国产一区二区在线免费观看 | www..com毛片 | www好男人 | 久久综合欧美精品亚洲一区 | 国产精品综合久久久久久 | 日本女人的性生活视频 | 一级黄色片在线免费看 | 国产永久免费高清在线观看视频 | 人人看人人艹 | 一区二区三区av在线 | 天操夜夜操 | 香蕉久久久久 | 国产96在线视频 | 亚洲精品动漫在线 | 亚洲人成网站精品片在线观看 | 久久草在线视频国产 | 四虎8848免费高清在线观看 | 国产免费一区二区三区最新 | 一区二区三区日韩在线 | 成人av在线影视 | 日本精品二区 | 久久在现| 国产福利一区在线观看 | 亚洲日本成人网 | 久产久精国产品 | a视频免费在线观看 | 99精品福利| 欧美人人 | 毛片永久新网址首页 | 亚洲免费在线视频 | 久久艹在线观看 | 免费观看性生交大片3 | 日韩一区在线免费观看 | 五月天六月婷 | 日本在线观看一区二区三区 | 欧美激情综合五月色丁香 | 国产精品毛片完整版 | 91视频麻豆视频 | 91高清视频 | 久草精品免费 | 91人人爽人人爽人人精88v | 精品久久久久久久久久久院品网 | 日韩精品视频在线观看免费 | 日韩v在线| 国产亚洲字幕 | 999色视频 | 日本在线观看视频一区 | 亚洲女欲精品久久久久久久18 | 天天爽夜夜爽人人爽一区二区 | 日韩手机在线 | 日本不卡视频 | av不卡网站 | 久久精品小视频 | 久久精品九色 | 日韩电影一区二区在线观看 | 久久视频99 | 欧美极品少妇xxxxⅹ欧美极品少妇xxxx亚洲精品 | 超碰.com | 六月丁香婷婷网 | 国产精品亚洲精品 | 日韩免费一级a毛片在线播放一级 | 在线色亚洲 | 9999国产精品 | 81国产精品久久久久久久久久 | 久久精品久久精品 | 欧美与欧洲交xxxx免费观看 | 91成人区 | 久久精品一二三 | 成人毛片在线观看视频 | 99久久精品国产系列 | 97网| 美女在线观看网站 | 日韩精品免费一线在线观看 | 午夜视频黄 | 极品久久久久 | 国产精品 日韩 | 西西4444www大胆视频 | 日本高清中文字幕有码在线 | 一区二区三区四区精品视频 | 国产一区成人在线 | 亚洲国产精品免费 | 日韩女同一区二区三区在线观看 | 二区视频在线观看 | 亚洲影视九九影院在线观看 | 91传媒91久久久 | 一区二区伦理 | 在线观看免费一级片 | 日本电影久久 | 久久国产精品久久w女人spa | 久久激情视频网 | 成人九九视频 | 在线观看中文字幕dvd播放 | 亚洲激情视频 | 成人小视频在线观看免费 | 国产成人精品一区二区三区福利 | 中文国产在线观看 | 在线国产99 | 午夜在线看片 | 在线观看一区二区视频 | 91亚洲激情 | 深夜男人影院 | 在线视频 91 | 久久久久免费电影 | 国产精品久久久久久久电影 | 亚洲国产经典视频 | 久久av不卡| 国产精品美女视频网站 | 国产手机在线精品 | 黄色三级网站 | 香蕉网在线 | 免费在线观看a v | 在线观看黄网站 | 五月综合激情婷婷 | 一级免费看视频 | 99色网站 | 成人一区影院 | bbbbb女女女女女bbbbb国产 | 人人干免费 | 欧美中文字幕久久 | 看片一区二区三区 | 国产伦精品一区二区三区四区视频 | 伊人射 | 国产精品 国产精品 | 国产午夜精品一区二区三区嫩草 | 五月婷婷丁香在线观看 | 欧美日韩国产精品一区二区三区 | 毛片精品免费在线观看 | 9i看片成人免费看片 | 国语黄色片 | 欧美9999| 精品国产乱码久久久久久1区2匹 | 欧美另类视频 | 在线国产不卡 | 99久久99视频只有精品 | 久久久高清一区二区三区 | 国产成人精品午夜在线播放 | 国产亚洲精品综合一区91 | 亚洲 欧洲av | 伊人久久av | 黄色精品网站 | 一区二区三区动漫 | 久久成人免费视频 | 免费一级毛毛片 | 国产精品9区 | 免费在线观看av网址 | 国产一级精品视频 | 中文字幕在线观看日本 | 少妇精品久久久一区二区免费 | 久久精品超碰 | 天天色官网 | 欧美激情精品久久 | 亚洲最新av网址 | www.av免费观看 | 亚洲免费成人 | 国产伦精品一区二区三区无广告 | 午夜天天操 | 99久久婷婷国产综合亚洲 | 操操操影院 | 婷婷在线免费 | 日韩精品一区二区三区在线视频 | 日韩最新在线 | 国产精品18久久久久久首页狼 | 欧美污污视频 | 免费在线色视频 | 日韩av电影免费观看 | 免费在线观看成人小视频 | 99国产在线观看 | 91视频久久久久 | 欧美激情精品久久久久久变态 | 一区二区三区影院 | 国产一区私人高清影院 | 国产高清在线观看av | 国产亚洲精品久久久久久久久久 | 午夜国产福利在线 | 久久久男人的天堂 | 美女网站视频免费都是黄 | 国产 欧美 在线 | 欧美激情奇米色 | 国产不卡av在线 | 亚洲第一成网站 | 日韩免费电影在线观看 | 欧美激情精品久久久久久免费 | 久久看视频 | 美女精品久久久 | 色噜噜日韩精品欧美一区二区 | 精品久久久久久一区二区里番 | 国产手机在线 | 国产亚洲精品精品精品 | 黄色亚洲精品 | 日本在线免费看 | 亚洲欧洲精品一区二区精品久久久 | 亚洲精品欧美视频 | 九9热这里真品2 | 日本三级人妇 | 综合国产在线观看 | 午夜国产福利在线 | 精品免费视频 | 日本动漫做毛片一区二区 | 99视频精品免费视频 | 手机在线欧美 | 日韩久久激情 | 婷婷六月综合亚洲 | av短片在线观看 | 国产高清 不卡 | 一级片视频免费观看 | 婷婷伊人五月天 | 999一区二区三区 | 日韩,中文字幕 | 欧美与欧洲交xxxx免费观看 | 亚洲欧美国产精品 | 国产96精品| 国产不卡精品 | 蜜桃久久久 | 毛片一区二区 | 丁香 婷婷 激情 | 欧美日韩国产一区二区三区在线观看 | 黄色一级大片在线观看 | 国产精品大全 | 久久国产精品99国产 | 日日干日日色 | 中文字幕久久精品一区 | 女人18精品一区二区三区 | 国产精品av在线免费观看 | 91精品国自产在线 | 一区二区中文字幕在线观看 | 国产不卡一区二区视频 | 2019天天干夜夜操 | 天天做日日做天天爽视频免费 | 久久国产精品免费 | 激情开心色 | av女优中文字幕在线观看 | 成人精品国产免费网站 | 超碰在线97免费 | 911精品美国片911久久久 | 91av在线不卡| 狠狠狠狠狠狠天天爱 | 天堂av在线| 久草国产在线观看 | 亚洲二区精品 | 欧美日韩中文国产一区发布 | 精品国产一区二区三区久久久蜜月 | av线上看| 超碰99人人 | 69中文字幕 | 人人dvd| 国产精品福利久久久 | 黄色三级在线 | 99亚洲天堂| 久久精品精品 | 色综合天天综合 | 国产成人精品在线 | 干狠狠| 婷婷色婷婷 | 亚洲久草在线 | 亚洲精品美女在线观看播放 | 99国产精品久久久久老师 | 韩国视频一区二区三区 | 欧美激情精品久久久 | 韩国精品在线 | 日产中文字幕 | 激情欧美一区二区三区免费看 | av中文字幕日韩 | 91大神dom调教在线观看 | 日b视频在线观看网址 | 国产日产高清dvd碟片 | 午夜精品久久久久久久久久 | 69欧美视频 | 91久久国产自产拍夜夜嗨 | 在线播放你懂 | 欧美日韩视频在线观看一区二区 | 国产色婷婷精品综合在线手机播放 | a在线观看国产 | 9999毛片| 国产精品女同一区二区三区久久夜 | 99精品视频在线免费观看 | 国产不卡在线观看 | 九九九九色| 91在线网址 | 久久久久久久久久久免费av | se婷婷 | 91精品国产一区二区三区 | 国产一级在线免费观看 | 一区 二区电影免费在线观看 | 97网| 亚洲aaa毛片 | 91视频麻豆视频 | 精品国产一区二区三区日日嗨 | 日日摸日日添夜夜爽97 | 91在线一区| 综合精品久久久 | 欧美极度另类性三渗透 | 四虎4hu永久免费 | 五月天综合激情 | 国产精品网红直播 | 久草在线综合网 | 激情久久婷婷 | 久久综合久久综合九色 | 免费的黄色的网站 | 欧美作爱视频 | 成年人网站免费在线观看 | 国产v在线| 欧美亚洲一区二区在线 | 丁香婷婷射 | 久久久久久免费视频 | 日日爱影视| 久久福利综合 | 99热9| 五月天婷婷在线观看视频 | 久久国产成人午夜av影院潦草 | 久久久久国产精品一区 | 91精品国产亚洲 | 久久综合精品国产一区二区三区 | 草莓视频在线观看免费观看 | 九九久久成人 | 91人人视频在线观看 | 国产一区精品在线 | 五月天婷婷丁香花 | 国产又粗又硬又爽视频 | 成年人精品 | 激情婷婷亚洲 | 欧美日韩色婷婷 | 色视频成人在线观看免 | 在线天堂8√ | 人人插人人搞 | 国产精品系列在线观看 | 国产精品色视频 | 9999精品免费视频 | 国产h在线观看 | 精品国产一区二区久久 | 亚洲精品国精品久久99热 | 最近日韩中文字幕中文 | 婷婷深爱激情 | 日韩免费在线播放 | 成人观看视频 | 日韩中文字幕视频在线观看 | 97在线看| 欧美性生活一级片 | 在线免费黄色av | 日韩电影精品一区 | 色天天综合久久久久综合片 | 国产精品青青 | 欧美激情视频一二区 | 亚洲黄色a| 狠狠狠狠狠狠 | 丁香激情综合久久伊人久久 | 在线看毛片网站 | 99精品在线视频观看 | 日韩网站一区二区 | 国产高清在线免费 | 成人av一二三区 | 欧美激情视频在线免费观看 | 国产在线观看xxx | 91精品国自产在线偷拍蜜桃 | 激情xxxx| 国产亚洲精品久久久久秋 | 在线国产日本 | 久久精品网 | 精品人人人| 激情视频免费观看 | 99精品在线观看 | 色偷偷88欧美精品久久久 | 婷婷色视频 | 91福利小视频 | 午夜久久影视 | av中文天堂在线 | 九热精品 | www免费看 | 日韩中字在线观看 | 久久久香蕉视频 | 日韩一级网站 | 毛片的网址 | 在线黄av| 91视频中文字幕 | 成人在线你懂得 | 天天插天天色 | 亚洲免费av电影 | www.夜夜操.com | 狠狠撸电影 | 亚洲精品网站在线 | 亚洲午夜精品一区二区三区电影院 | 精品v亚洲v欧美v高清v | 又黄又色又爽 | 国产一区二区在线免费播放 | 国产亚洲一区二区三区 | 久久久久久久国产精品影院 | 亚洲精品国产精品国自产观看浪潮 | 久久久久久久久久久电影 | 在线免费高清一区二区三区 | 色小说av| 精品美女久久久久久免费 | 久草在线视频看看 | 国产精品h在线观看 | 91精品国产亚洲 | 最近中文字幕在线中文高清版 | 日韩黄色在线观看 | 国产精品久久久久久麻豆一区 | 91成人亚洲 | 在线天堂视频 | 日韩电影黄色 | 国产精品观看视频 | 免费看一级| 国产成年人av | 9在线观看免费高清完整版 玖玖爱免费视频 | 国产精品久久久一区二区 | 深爱五月激情网 | 天天摸天天干天天操天天射 | 国产精品一区二区你懂的 | 97在线看 | 国产尤物一区二区三区 | 久草在线一免费新视频 | 中文字幕在线国产 | 亚洲精品h | 五月婷影院 | 欧美少妇的秘密 | 日本aa在线 | 91精品久久久久久久久 | 不卡av电影在线 | 99re国产视频 | 国产99久久久精品 | 毛片黄色一级 | 精品视频专区 | 91国内在线| 国产成人精品亚洲日本在线观看 | 国产免费黄视频在线观看 | 91av99| 亚洲激情一区二区三区 | 欧美久久久久久久 | 一级片视频免费观看 | 天天操天天操天天操天天操天天操天天操 | 超碰在线公开免费 | 午夜在线观看 | 免费在线电影网址大全 | 永久av免费在线观看 | 亚洲一一在线 | 久久99国产精品久久99 | 国产精成人品免费观看 | 97香蕉久久超级碰碰高清版 | 99热手机在线 | 欧美福利在线播放 | 亚洲精品av中文字幕在线在线 | 免费观看av网站 | 玖玖爱国产在线 | 9i看片成人免费看片 | 久久99亚洲热视 | 精品国产一区二区三区四区在线观看 | 日韩欧美aaa | 91亚洲狠狠婷婷综合久久久 | 亚洲国产免费看 | 免费欧美高清视频 | 黄色录像av| 亚洲午夜电影网 | 欧美性生活免费 | 日韩av免费观看网站 | 国产美女精品视频 | 久久公开免费视频 | 国产在线传媒 | 99综合视频| 久久国产三级 | 肉色欧美久久久久久久免费看 | 国产不卡av在线 | 成人中文字幕+乱码+中文字幕 | 久久y| 日韩毛片在线一区二区毛片 | 黄网站色欧美视频 | 久久久久久久久久久久久国产精品 | 国产特级毛片aaaaaa毛片 | 天堂va欧美va亚洲va老司机 | 日日干激情五月 | 国产精品一区二区你懂的 | 91大神免费视频 | 99久久久久久国产精品 | 国产精品久久久久久高潮 | 国产又粗又硬又爽的视频 | 国产精品 视频 | 九精品| 国产精品人人做人人爽人人添 | 日韩精品在线观看视频 | 欧美精品日韩 | 99久久久国产精品免费99 |