真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

python可視化實(shí)現(xiàn)KNN算法-創(chuàng)新互聯(lián)

簡(jiǎn)介

公司主營(yíng)業(yè)務(wù):網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、移動(dòng)網(wǎng)站開(kāi)發(fā)等業(yè)務(wù)。幫助企業(yè)客戶(hù)真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競(jìng)爭(zhēng)能力。創(chuàng)新互聯(lián)是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開(kāi)放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來(lái)的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶(hù)帶來(lái)驚喜。創(chuàng)新互聯(lián)推出澤庫(kù)免費(fèi)做網(wǎng)站回饋大家。

這里通過(guò)python的繪圖工具M(jìn)atplotlib包可視化實(shí)現(xiàn)機(jī)器學(xué)習(xí)中的KNN算法。


需要提前安裝python的Numpy和Matplotlib包。


KNN–最近鄰分類(lèi)算法,算法邏輯比較簡(jiǎn)單,思路如下:

1.設(shè)一待分類(lèi)數(shù)據(jù)iData,先計(jì)算其到已標(biāo)記數(shù)據(jù)集中每個(gè)數(shù)據(jù)的距離,例如歐拉距離sqrt((x1-x2)^2+(y1-y2)^2);

2.然后根據(jù)離iData最近的k個(gè)數(shù)據(jù)的分類(lèi),出現(xiàn)次數(shù)最多的類(lèi)別定為iData的分類(lèi)。

KNN——最近鄰算法python代碼


代碼實(shí)現(xiàn):

import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt

def KNNClassify(labelData,predData,k): #數(shù)據(jù)集包含分類(lèi)屬性
#labelData 是已經(jīng)標(biāo)記分類(lèi)的數(shù)據(jù)集
#predData 未分類(lèi)的待預(yù)測(cè)數(shù)據(jù)集
 labShape = labelData.shape
 for i in range(predData.shape[0]): #以predData的每行數(shù)據(jù)進(jìn)行遍歷
 iData = predData[i]
 iDset = np.tile(iData,(labShape[0],1)) #將iData重復(fù),擴(kuò)展成與labelData同形的矩陣
 #這里用歐拉距離sqrt((x1-x2)^2+(y1-y2)^2)
 diff = iDset[...,:-1] - labelData[...,:-1]
 diff = diff**2
 distance = np.sum(diff,axis=1)
 distance = distance ** 0.5 #開(kāi)根號(hào)
 sortedIND = np.argsort(distance) #排序,以序號(hào)返回。
 classCount = { }
 for j in range(k): #計(jì)算距離最近的前k個(gè)標(biāo)記數(shù)據(jù)的類(lèi)別
 voteLabel = labelData[sortedIND[j],-1]
 classCount[voteLabel] = classCount.get(voteLabel,0)+1

 maxcls = max(classCount,key=classCount.get) #類(lèi)別最多的,返回鍵名(類(lèi)別名)
 predData[i][...,-1] = maxcls

 return predData

分享文章:python可視化實(shí)現(xiàn)KNN算法-創(chuàng)新互聯(lián)
網(wǎng)頁(yè)網(wǎng)址:http://weahome.cn/article/diegog.html

其他資訊

在線(xiàn)咨詢(xún)

微信咨詢(xún)

電話(huà)咨詢(xún)

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部