青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆 - 51, 文章 - 1, 評(píng)論 - 41, 引用 - 0
數(shù)據(jù)加載中……

K近鄰算法

概述

k近鄰(k nearest neighbor)算法是一種監(jiān)督算法,用于分類。它基本思想是計(jì)算新實(shí)例和訓(xùn)練集元素的**距離**,找出k個(gè)最接近的實(shí)例(neighbor),統(tǒng)計(jì)它們所屬分類,次數(shù)最多的類別作為新實(shí)例的類別。

原理與步驟

監(jiān)督算法可大致分成兩個(gè)步驟:訓(xùn)練(train)和分類(classify)。從實(shí)現(xiàn)考慮還需要算法初始化過(guò)程。

本節(jié)的代碼為python風(fēng)格的示意代碼,不能直接運(yùn)行,可運(yùn)行代碼參考zxml。

示意代碼

?

class KNearestNeighbor:

    def __init__(...):  pass

    def train(...):     pass

    def classify(...):  pass

訓(xùn)練(train)

理論上k近鄰算法不需要訓(xùn)練,可直接使用原始數(shù)據(jù)進(jìn)行分類。

歸一化

數(shù)據(jù)的分類的量綱差別較大時(shí),小量綱分類在計(jì)算的權(quán)重將被削弱。使用歸一化消除這種影響。方法如下:

x??=?(x???xmin)/(xmax???xmin)

預(yù)處理

將數(shù)據(jù)進(jìn)行某種形式的處理可加快尋找k近鄰的速度,常用的處理方式有KD-Tree和Ball-Tree,前者對(duì)低維歐氏距離有效,后者對(duì)所有距離有效。

示意代碼

?

def train(self, X, C):

    '''X,C分別代表實(shí)例和類別'''

?

    # 實(shí)例數(shù)據(jù)歸一化,并保留數(shù)據(jù)備份

    (self.X, self.C) = (normalize(X), C.copy())

?

    # 可選,如果需要,則構(gòu)建KD-Tree()

    self.tree = KDTree()

    self.tree.create(self.X)

分類(classify)

分類的大致步驟:找出k個(gè)近鄰 和*統(tǒng)計(jì)類別的次數(shù)* 。 分類的部分處理與訓(xùn)練的處理向?qū)?yīng),如:

  • 訓(xùn)練對(duì)數(shù)據(jù)進(jìn)行歸一化,則分類是也需要?dú)w一化。
  • 訓(xùn)練使用如KD-Tree等方式進(jìn)行處理,則分類使用對(duì)應(yīng)的方法尋找k個(gè)近鄰。

示意代碼

?

def classify(self, x):

?

    _x = normalize(x)                   # 將x歸一化

    nearest = self.find_neighbors(_x)   # 找出k個(gè)近鄰

    freq = frequency(nearests)          # 統(tǒng)計(jì)每個(gè)類型的次數(shù)

    return freq.sorted()[-1]            # 排序后,返回次數(shù)最多的類別

?

def find_neighbors(self, x):

    '''尋找與x最接近的k個(gè)點(diǎn)'''

?

    if self.tree == None:               # 判斷是否使用了kd-tree

        ds = self.distance(x, self.X)   # 計(jì)算所有點(diǎn)的距離

        indices = ds.argsort()[0:k]     # 排序后,取前面k個(gè)

?

    else:

        indices = self.tree.find_neighbors(x, self.k)

?

    # indices是k個(gè)近鄰的索引位置

    return self.C[indices]

初始化(init)

初始化需要設(shè)置算法參數(shù),如k的值,距離公式。

距離

實(shí)例之間的距離一般采用歐氏距離,但不排除使用其它的距離計(jì)算方法。歐氏距離:

d?=?x???y?=?((xi???yi)2)?≥?xi???yi

?

def __init__(self, k, distance=euclidean ):

    (self.k, self.distance) = (k, distance)

scikit-learn

下面使用scikit-learn中的k近鄰算法分類的例子。

?

import numpy as np

from sklearn import neighbors

?

# 準(zhǔn)備數(shù)據(jù),分成A B兩類。A類在[0,0]附近,B類在[1,1]附近。

X = np.array([[0, 0.1],   [-0.1, 0],

              [0.1, 0.1], [0, 0],

              [1, 1],     [1.1, 1],

              [1, 1.1],   [1.1, 1.1]])

?

C = ['A','A','A','A','B','B','B','B']

?

# 初始化

clf = neighbors.KNeighborsClassifier(n_neighbors=3, weights="uniform")

?

# 訓(xùn)練

clf.fit(X, C)

?

# 分類

c = clf.predict(np.array([[0.9,0.8]]))

print(c)

上面的例子可以將k近鄰算法分成三步,初始化、訓(xùn)練和分類。初始化可設(shè)置參數(shù),本文涉及到的參數(shù)有:

  • n_neighbors: 指參數(shù)k
  • weights: 指定數(shù)據(jù)分類的權(quán)重,歸一化 是其中的一個(gè)方式。
  • algorithm: 該參數(shù)可設(shè)定使用kd-tree等方法。
  • metric: 距離計(jì)算公式

參考資料

posted on 2016-10-28 16:18 lemene 閱讀(462) 評(píng)論(0)  編輯 收藏 引用


只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美精品v日韩精品v国产精品| 免费看成人av| 欧美剧在线免费观看网站| 久久精品久久99精品久久| 亚洲一区二区三区在线| 在线亚洲欧美专区二区| 中文一区二区在线观看| 亚洲免费在线电影| 欧美一区三区三区高中清蜜桃| 午夜日韩激情| 欧美粗暴jizz性欧美20| 欧美精品国产一区| 欧美午夜精品一区二区三区| 欧美丝袜一区二区三区| 国产欧美一区二区精品秋霞影院| 国产美女在线精品免费观看| 国外成人免费视频| 亚洲国产精品精华液2区45| 亚洲国产天堂久久国产91| 99ri日韩精品视频| 久久aⅴ国产欧美74aaa| 亚洲国产国产亚洲一二三| 亚洲高清视频的网址| 亚洲色诱最新| 久久高清国产| 亚洲精品女av网站| 亚洲一区二区精品在线| 欧美精品福利视频| 1024亚洲| 欧美成人精品不卡视频在线观看| 一区二区精品在线观看| 欧美日一区二区三区在线观看国产免 | 亚洲一区二区欧美日韩| 男女av一区三区二区色多| 国产欧美视频一区二区| 久久国产免费| 久久九九热免费视频| 国产视频一区三区| 久久久久久久网站| 久久不射2019中文字幕| 国产专区综合网| 久久久www成人免费毛片麻豆| 亚洲免费在线| 在线观看亚洲视频啊啊啊啊| 久久这里有精品视频| 免费毛片一区二区三区久久久| 亚洲黄色成人| 亚洲视频一区二区| 狠狠色综合播放一区二区| 亚洲欧美日韩在线不卡| 欧美一区二区视频97| 尤物yw午夜国产精品视频明星| 欧美刺激性大交免费视频| 免费在线观看成人av| 免播放器亚洲一区| 亚洲自拍啪啪| 性色av香蕉一区二区| 美国成人直播| 欧美电影在线免费观看网站| 国产日韩欧美a| 久久久噜噜噜久久久| 亚洲人成人99网站| 亚洲日本无吗高清不卡| 国产网站欧美日韩免费精品在线观看 | 亚洲综合大片69999| 久久高清福利视频| 亚洲永久免费视频| 欧美成人精精品一区二区频| 欧美综合国产精品久久丁香| 欧美日本簧片| 亚洲精品久久视频| 亚洲人精品午夜| 免费成人毛片| 欧美国产大片| 亚洲区第一页| 蜜桃av久久久亚洲精品| 久久综合九色| 制服丝袜激情欧洲亚洲| 久久精品亚洲热| 久久综合久色欧美综合狠狠| 国产亚洲精品美女| 久久精品99无色码中文字幕| 久久久国产成人精品| 国产欧美一区二区三区久久人妖| 亚洲一二区在线| 欧美v日韩v国产v| 99在线精品免费视频九九视| 欧美日韩亚洲成人| 亚洲欧美日韩国产另类专区| 久久蜜桃av一区精品变态类天堂| 亚洲午夜激情网页| 久久av老司机精品网站导航| 国产午夜久久久久| 欧美国产激情| 亚洲女人小视频在线观看| 老鸭窝毛片一区二区三区| 亚洲激情网站免费观看| 国产精品久久久久久久午夜 | 亚洲专区一二三| 毛片一区二区| 久久精品国产在热久久| 日韩视频在线你懂得| 国产在线高清精品| 国产精品都在这里| 欧美日韩国语| 免费日韩一区二区| 久久成人综合网| 欧美在线免费看| 亚洲欧美综合v| 中文日韩在线视频| 一本综合久久| 亚洲男女自偷自拍图片另类| 日韩视频不卡| 一本色道久久88综合亚洲精品ⅰ| 亚洲欧洲精品一区二区三区不卡| 欧美69视频| 亚洲精品日韩综合观看成人91| 免费黄网站欧美| 欧美 亚欧 日韩视频在线| 你懂的国产精品| 亚洲高清资源| 日韩一级二级三级| 香蕉久久夜色精品| 久久久久久穴| 欧美日韩国产一区精品一区| 欧美日韩一区二区免费在线观看| 欧美日韩免费视频| 艳女tv在线观看国产一区| 亚洲色图自拍| 免费不卡欧美自拍视频| 欧美日韩在线播放| 国产日韩一区二区三区在线播放| 很黄很黄激情成人| 亚洲精品欧美极品| 欧美一二三区精品| 亚洲电影有码| 久久久久久久精| 国产精品高清网站| 亚洲片在线观看| 欧美在线观看天堂一区二区三区 | 国产精品呻吟| 亚洲国产欧美一区二区三区丁香婷| 一区二区三区欧美| 欧美大片在线观看一区| 性欧美大战久久久久久久久| 欧美三级电影网| 99ri日韩精品视频| 亚洲国产欧美一区二区三区久久| 午夜精品一区二区三区四区| 欧美日韩一区三区| 亚洲午夜精品一区二区| 亚洲国产网站| 欧美久久视频| 一区二区免费在线播放| 欧美韩日一区| 欧美日韩一区视频| 午夜免费日韩视频| 欧美一区二区视频在线| 曰本成人黄色| 欧美黄色影院| 欧美日韩精品免费观看视频完整| 一区二区三区日韩欧美| 亚洲午夜一区| 激情成人av| 亚洲麻豆av| 国产情侣一区| 91久久久在线| 国产精品美女www爽爽爽视频| 久久精品国产久精国产思思| 男女av一区三区二区色多| 欧美国产一区在线| 亚洲欧美日韩视频一区| 久久久99免费视频| 亚洲一区二区三区激情| 性色av一区二区三区| 亚洲国产午夜| 久久九九国产精品| 亚洲综合色婷婷| 欧美激情第9页| 久久亚洲捆绑美女| 欧美网站在线观看| 亚洲国产欧美一区二区三区久久| 国产精品毛片高清在线完整版| 免费观看成人| 国内精品久久久久影院色| 99这里只有精品| 亚洲精品专区| 久久久久久久久久码影片| 亚洲欧美日韩中文播放| 欧美极品一区| 亚洲成色www久久网站| 国产综合色在线视频区| 亚洲欧美成人综合| 午夜精品久久久久久久99樱桃| 欧美另类变人与禽xxxxx| 亚洲精品无人区| 亚洲午夜av| 狠狠干狠狠久久| 久久影视精品| 亚洲精品一区二区三区不|