Python机器学习---KNN模型评价、追求
文章目錄
- 1. KNN模型評價
- 1.1 計算效率低,耗費計算資源較大
- 1.2 抗噪性較弱,對噪聲數(shù)據(jù)(異常值)較為敏感
- 1.3 模型不穩(wěn)定,可重復(fù)性較弱
- 1.4要進(jìn)行歸化處理:
- 2.模型的追求
- 2.1 模型效果
- 2.2 運算速度
- 2.3 可解釋性
- 2.4 服務(wù)于業(yè)務(wù)
1. KNN模型評價
到這里,能夠?qū)NN進(jìn)行的全部優(yōu)化就已經(jīng)完成了。KNN代表若"投票類"的算法,一直廣泛受到業(yè)界的歡迎。不過KNN也有自己的缺點,那就是它的計算非常緩慢,因為KNN必須對每一個測試點來計算到每一 個訓(xùn)練數(shù)據(jù) 點的距離,并且這些距離點涉及到所有的特征,當(dāng)數(shù)據(jù)的維度很大,數(shù)據(jù)量也很大的時候,KNN的計算會成為詛咒,大概幾萬數(shù)據(jù)就足夠讓KNN跑幾個小時了。
根據(jù)算法基本執(zhí)行流程,我們可總結(jié)最近鄰分類器的特點如下:
- 應(yīng)用廣泛:
最近鄰分類屬于一類更廣泛的技術(shù),這種技術(shù)稱為基于實例的學(xué)習(xí),它使用具體的訓(xùn)練實例進(jìn)行預(yù)測,而不必維護源自數(shù)據(jù)的抽象(或模型)。基于實例的學(xué)習(xí)算法需要鄰近性度量來確定實例間的相似性或距離,還需要分類函數(shù)根據(jù)測試實例與其他實例的鄰近性返回測試實例的預(yù)測類標(biāo)號。
1.1 計算效率低,耗費計算資源較大
像最近鄰分類器這樣的消極學(xué)習(xí)方法不需要建立模型,所以,學(xué)習(xí)的開銷很大,因為需要逐個計算測試樣例和訓(xùn)練樣例之間的相似度。相反,積極學(xué)習(xí)方法通常花費大量計算資源來建立模型,模型一旦建立,分類測試樣例就會非常快。
1.2 抗噪性較弱,對噪聲數(shù)據(jù)(異常值)較為敏感
最近鄰分類器基于局部信息進(jìn)行預(yù)測,而決策樹和基于規(guī)則的分類器則試圖找到一個擬合整個輸入空間的全局模型。正是因為這樣的局部分類決策,最近鄰分類器(k很小時)對噪聲非常敏感。
1.3 模型不穩(wěn)定,可重復(fù)性較弱
最近鄰分類器可以生成任意形狀的決策邊界。這樣的決策邊界與決策樹和基于規(guī)則的分類器通常所局限的直線決策邊界相比,能提供更加靈活的模型表示。最近鄰分類器的決策邊界還有很高的可變性,因為它們依賴于訓(xùn)練樣例的組合。增加最近鄰的數(shù)目可以降低這種可變性。
1.4要進(jìn)行歸化處理:
除非采用適當(dāng)?shù)泥徑远攘亢蛿?shù)據(jù)預(yù)處理,否則最近鄰分類器可能做出錯誤的預(yù)測。例如,我們想根據(jù)身高(以米為單位)和體重(以磅為單位)等屬性來對一群人分類。屬性高度的可變性很小,從1.5米到1.85米,而體重范圍則可能是從90磅到250磅。如果不考慮屬性值的單位,那么鄰近性度量可能就會被人的體重差異所左右。
2.模型的追求
2.1 模型效果
使用機器學(xué)習(xí)進(jìn)行判斷/預(yù)測的效果
如果不能接近/超過人類,那就沒有任何意義
如果人臉識別不能達(dá)到幾乎100%準(zhǔn)確
根本不可能使用人臉識別代替人工檢查
所以追求模型預(yù)測準(zhǔn)確是機器學(xué)習(xí)的核心目標(biāo)
2.2 運算速度
能夠同時處理大量數(shù)據(jù),可以在超短時間內(nèi)極速學(xué)習(xí),是機器學(xué)習(xí)的重要優(yōu)勢,如果機器學(xué)習(xí)的判斷速度不能接近/超越人類,那計算機判斷的優(yōu)越性就幾乎不存在了。
模型效果與運算速度往往是此消彼長的,在模型效果不錯的情況下保障運算速度較快,是機器學(xué)習(xí)中重要的一環(huán).
2.3 可解釋性
機器學(xué)習(xí)是一門技術(shù),是一門有門檻的技術(shù),所以大眾注定不太可能短時間內(nèi)熟悉它,但是技術(shù)人員肩負(fù)著要向老板,客戶,同事,甚至親朋好友解釋機器學(xué)習(xí)在做什么的職責(zé)。
比如說,在“是否分發(fā)信用卡"的問題中,如果算法判斷"這個人有違約風(fēng)險,不發(fā)信用卡”,那客戶很可能找上門來要個解釋,這個時候,你能告訴他說“因為算法判斷你不通過"嗎?在解釋性需求很強的領(lǐng)域,我們就需要可解釋的算法。
2.4 服務(wù)于業(yè)務(wù)
而所有的一切,都是為了服務(wù)于業(yè)務(wù)。只有模型效果優(yōu)秀,運算速度快,還帶有一部分可解釋性的算法才是最優(yōu)秀的算法。
總結(jié)
以上是生活随笔為你收集整理的Python机器学习---KNN模型评价、追求的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python机器学习--KNN归一化、距
- 下一篇: Python机器学习---何为机器学习?