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