機(jī)器學(xué)習(xí)分兩大類,有監(jiān)督學(xué)習(xí)(supervised learning)和無監(jiān)督學(xué)習(xí)(unsupervised learning)。有監(jiān)督學(xué)習(xí)又可分兩類:分類(classification.)和回歸(regression),分類的任務(wù)就是把一個(gè)樣本劃為某個(gè)已知類別,每個(gè)樣本的類別信息在訓(xùn)練時(shí)需要給定,比如人臉識(shí)別、行為識(shí)別、目標(biāo)檢測(cè)等都屬于分類?;貧w的任務(wù)則是預(yù)測(cè)一個(gè)數(shù)值,比如給定房屋市場(chǎng)的數(shù)據(jù)(面積,位置等樣本信息)來預(yù)測(cè)房價(jià)走勢(shì)。而無監(jiān)督學(xué)習(xí)也可以成兩類:聚類(clustering)和密度估計(jì)(density estimation),聚類則是把一堆數(shù)據(jù)聚成弱干組,沒有類別信息;密度估計(jì)則是估計(jì)一堆數(shù)據(jù)的統(tǒng)計(jì)參數(shù)信息來描述數(shù)據(jù),比如深度學(xué)習(xí)的RBM。
創(chuàng)新互聯(lián)-云計(jì)算及IDC服務(wù)提供商,涵蓋公有云、IDC機(jī)房租用、聯(lián)通機(jī)房服務(wù)器托管、等保安全、私有云建設(shè)等企業(yè)級(jí)互聯(lián)網(wǎng)基礎(chǔ)服務(wù),溝通電話:13518219792根據(jù)機(jī)器學(xué)習(xí)實(shí)戰(zhàn)講解順序,先學(xué)習(xí)K近鄰法(K Nearest Neighbors-KNN)
K近鄰法是有監(jiān)督學(xué)習(xí)方法,原理很簡單,假設(shè)我們有一堆分好類的樣本數(shù)據(jù),分好類表示每個(gè)樣本都一個(gè)對(duì)應(yīng)的已知類標(biāo)簽,當(dāng)來一個(gè)測(cè)試樣本要我們判斷它的類別是,就分別計(jì)算到每個(gè)樣本的距離,然后選取離測(cè)試樣本最近的前K個(gè)樣本的標(biāo)簽累計(jì)投票,得票數(shù)最多的那個(gè)標(biāo)簽就為測(cè)試樣本的標(biāo)簽。
例子(電影分類):
(圖一)
(圖一)中橫坐標(biāo)表示一部電影中的打斗統(tǒng)計(jì)個(gè)數(shù),縱坐標(biāo)表示接吻次數(shù)。我們要對(duì)(圖一)中的問號(hào)這部電影進(jìn)行分類,其他幾部電影的統(tǒng)計(jì)數(shù)據(jù)和類別如(圖二)所示:
(圖二)
從(圖二)中可以看出有三部電影的類別是Romance,有三部電影的類別是Action,那如何判斷問號(hào)表示的這部電影的類別?根據(jù)KNN原理,我們需要在(圖一)所示的坐標(biāo)系中計(jì)算問號(hào)到所有其他電影之間的距離。計(jì)算出的歐式距離如(圖三)所示:
(圖三)
由于我們的標(biāo)簽只有兩類,那假設(shè)我們選K=6/2=3,由于前三個(gè)距離最近的電影都是Romance,那么問號(hào)表示的電影被判定為Romance。
代碼實(shí)戰(zhàn)(Python版本):
先來看看KNN的實(shí)現(xiàn):
from numpy import * import operator from os import listdir def classify0(inX, dataSet, labels, k): dataSetSize = dataSet.shape[0] #獲取一條樣本大小 diffMat = tile(inX, (dataSetSize,1)) - dataSet #計(jì)算距離 sqDiffMat = diffMat**2 #計(jì)算距離 sqDistances = sqDiffMat.sum(axis=1) #計(jì)算距離 distances = sqDistances**0.5 #計(jì)算距離 sortedDistIndicies = distances.argsort() #距離排序 classCount={} for i in range(k): voteIlabel = labels[sortedDistIndicies[i]] #前K個(gè)距離最近的投票統(tǒng)計(jì) classCount[voteIlabel] = classCount.get(voteIlabel,0) + 1 #前K個(gè)距離最近的投票統(tǒng)計(jì) sortedClassCount = sorted(classCount.iteritems(), key=operator.itemgetter(1), reverse=True) #對(duì)投票統(tǒng)計(jì)進(jìn)行排序 return sortedClassCount[0][0] #返回最高投票的類別
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
分享標(biāo)題:python機(jī)器學(xué)習(xí)理論與實(shí)戰(zhàn)(一)K近鄰法-創(chuàng)新互聯(lián)
分享鏈接:http://jinyejixie.com/article18/gipgp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站、網(wǎng)站建設(shè)、軟件開發(fā)、電子商務(wù)、自適應(yīng)網(wǎng)站、商城網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容
移動(dòng)網(wǎng)站建設(shè)知識(shí)