1,K值設(shè)定為多大?
K太小,分類結(jié)果易受噪聲點(diǎn)影響;K太大,近鄰中又可能包含太多的其他類別的點(diǎn)。(對(duì)距離加權(quán),可以降低K值設(shè)定的影響)
K值通常是采用交叉檢驗(yàn)來(lái)確定
經(jīng)驗(yàn)規(guī)則:K一般低于訓(xùn)練樣本數(shù)的平方根
2,類別如何判斷最合適?
投票法沒(méi)有考慮近鄰的距離遠(yuǎn)近,距離更近的近鄰也許更應(yīng)該決定最終的分類,所以加權(quán)投票法更加恰當(dāng)一些。
3,如何選擇合適的距離衡量?
高維度對(duì)距離衡量的影響:眾所周知當(dāng)變量數(shù)越多,歐氏距離的區(qū)分能力就越差。
變量值域?qū)嚯x的影響:值域越大的變量常常會(huì)在距離計(jì)算中占據(jù)主導(dǎo)作用,因此應(yīng)當(dāng)對(duì)變量進(jìn)行標(biāo)準(zhǔn)化。
4,訓(xùn)練樣本是否要一視同仁?
在訓(xùn)練集中,有些樣本可能是更值得依賴的
可以給不同的樣本施加不同的權(quán)重,加強(qiáng)依賴樣本的權(quán)重,降低不可信賴樣本的影響。
5,性能問(wèn)題?
KNN是一種懶惰算法,平時(shí)不好好學(xué)習(xí),考試(對(duì)測(cè)試樣本分類)時(shí)才臨陣磨槍(臨時(shí)找k個(gè)近鄰)。
懶惰的后果:構(gòu)造模型很簡(jiǎn)單,但是對(duì)測(cè)試樣本分類的系統(tǒng)開(kāi)銷很大,因?yàn)橐獟呙枞坑?xùn)練樣本并計(jì)算距離。
已經(jīng)有一些方法提高計(jì)算的效率,例如壓縮訓(xùn)練樣本量等。
6,能否大幅度減少訓(xùn)練樣本量,同時(shí)又保持分類精度?
濃縮技術(shù)(condensing)
編輯技術(shù)(editing)
以上內(nèi)容為大家介紹了Pythonk-近鄰算法常見(jiàn)問(wèn)題,希望對(duì)大家有所幫助,如果想要了解更多Python相關(guān)知識(shí),請(qǐng)關(guān)注IT培訓(xùn)機(jī)構(gòu):千鋒教育。