(給演演算法愛好者加星標,修煉程式設計內功)
轉自:學習板塊
本文和大家分享一個入門級分類方法的講解
—什麼是SVM?
關於什麼是SVM這個事情,就要必須要說一說強西救愛人的故事:
在很久以前的情人節,魔鬼搶走了強西的愛人,旅館老闆強西便發誓要救他的愛人。
來到魔鬼的城堡前,魔鬼和他玩了一個遊戲,只要他透過了就放走他的愛人。
魔鬼在桌子上似乎有規律放了兩種顏色的球,說:“你用一根棍分開它們?要求:即便再放更多球之後,仍然能將它們分開。”
於是強西這樣放,乾的不錯?!
然後魔鬼想了想,又在桌上放了更多的球,故意搞怪,讓一個球站錯了陣營。
強西沒有亂了陣腳,只是稍微調整一下棍子。說道:即使你放了更多的球,我的棍仍然是一個好的分界線。
(SVM就是試圖把棍放在最佳位置,好讓在棍的兩邊有盡可能大的間隙。)
魔鬼看到強西這麼厲害,準備給了強西一個新的挑戰,這次的球更亂了。
現在,強西沒有合適的棍可以很好幫他分開兩種球了,現在怎麼辦呢?
看著,魔鬼手中,心愛的人,強西焦急萬分。
突然,強西靈光一閃。
強西像所有武俠片中大俠一樣,桌子一拍,球飛到空中。然後,憑藉輕功,強西使用trick絕招(SVM工具箱)抓起一張紙,插到了兩種球的中間。
現在,從魔鬼的角度看這些球,這些球看起來像是被一條曲線分開了。
而且,這個武功理論上幾乎通用於所有分類。
魔鬼看到後,氣絕,卒。
故事最後,強西救出了他心愛的人。。。一起開了一間旅館,名叫:京西旅館。
再之後,無聊的人們,把這些球叫做 「data」(資料源),把棍子 叫做 「classifier」(分類器), 最大間隙trick 叫做「optimization」(最最佳化), 拍桌子叫做「kernelling」(建立核函式), 那張紙叫做「hyperplane」(超平面)。