SVM作為最為經(jīng)典的機器學習算法之一弥锄,面試中會經(jīng)常被面試官問道账月,最近想要細心鉆研機器學習算法,不如就先從這一經(jīng)典的機器學習算法寫起吧赁项,我本人的數(shù)學基礎也不是很好葛躏,所以我會盡量用簡單易懂的語言來解釋這一算法。想要對SVM算法有一個直觀的認識肤舞,我們先從一個故事講起(文章來源:如何向吃瓜群眾解釋SVM 微信公眾號:DataCastle數(shù)據(jù)城堡)紫新。
支持向量機英文全稱:Support Vector Machine,數(shù)據(jù)極客們親切地稱之為SVM李剖。這個抽象的概念用一個機器的名號作為大家的認知芒率,給人一種莫名的神秘感。但我們都知道篙顺,支持向量機并非是真正意義上的機器偶芍,而是一種算法,確切地說德玫,是一類算法匪蟀,雖說SVM實際上是一種分類器,但也被用來做回歸宰僧。
如何將SVM用最通俗的語言來描述材彪,reddit上的故事是這樣的:
在很久很久以前,在一個村莊里住著一位退隱江湖的大俠,相傳這位大俠劍法非常高明段化。
在一個月黑風高的夜晚嘁捷,魔鬼抓走了大俠的妻子,大俠取出塵封多年的劍显熏,決定去救他的妻子雄嚣,但魔鬼和他玩了一個游戲。
魔鬼在桌子上似乎有規(guī)律放了兩種顏色的球喘蟆,說:“用你手中的劍分開它們缓升?要求:盡量在放更多球之后,仍然適用蕴轨「垡辏”
大俠拔出利劍隨手一揮,桌上出現(xiàn)一道裂痕尺棋,準確地分開了兩種不同顏色的球封锉。
然后魔鬼,又在桌上放了更多的球膘螟,大俠如法炮制,手起刀落碾局,雖然有一個球沒有準確劃分荆残,但依然干得漂亮。
大俠發(fā)現(xiàn)净当,劍痕的最佳位置内斯,就是讓劍痕離兩邊的球都有盡可能大的間隙。
有了這樣的思想像啼,現(xiàn)在即使魔鬼放了更多的球俘闯,大俠仍然能夠很好地劃出分界線。
當然魔鬼不會善罷甘休忽冻,于是把一堆球隨手一扔:把它們分開真朗。
大俠看到這樣擺放的球,也是有點懵逼的僧诚。就在魔鬼開啟嘲諷模式在一旁裝逼時遮婶,大俠準備嘗試新的辦法。
大俠左手在桌上一拍湖笨,球飛到空中旗扑。然后,憑借大俠的輕功慈省,大俠用手中的劍劃出一道光波臀防,恰好穿過兩種球的中間。
從魔鬼的角度看這些球,這些球看起來像是被一條曲線分開了袱衷。
大俠救回了妻子琼锋,然后故事在村里傳開了,并被杜撰成了美麗的傳說祟昭。無聊的大人們缕坎,把這些球叫做 「data」,把棍子叫做 「classifier」, 最大間隙 trick 叫做「optimization」篡悟, 拍桌子叫做「kernelling」, 那張紙叫做「hyperplane」谜叹。
哈哈,看完了這個故事搬葬,是不是對SVM有了一個感性的認識荷腊,同時是不是覺得SVM并沒有想象重的那么難?不過急凰,這只是漫漫長征路的開始女仰,我們需要一步一個腳印的弄懂SVM,加油抡锈,老鐵們疾忍!