距離上次看svm演算法已經快過了半個月了,今天再次看到,溫故知新後決定把自己的理解寫出來。不過由於本人文筆不佳,所以想到什麼寫什麼,等有空了再整理。看到覺得混亂的還請見諒。
剛剛看svm的時候,只能明白支援向量機之所以叫支援向量機是因為支援向量,後面懂得了w的內容是什麼、幾何距離的意義、低維對映到高維的作用、核函式、smo、隨機梯度下降。svm演算法相對其他機器學習演算法,內容涉及要廣的多,很多東西都非常巧妙,在計算上相對其他要遍歷所有樣本的演算法來說,只需作為支援向量的樣本即可構造模型,讓**計算複雜度降低很多,而核函式又將維**的問題完美解決。而我覺得對於svm,即使是面對新的gbrt(gradient boosting random tree,迭代隨機森林)也不失下風,就像2023年**天池大賽使用svm演算法的參賽者獲得了第八的成績。
svm演算法優勢來自於高維空間,將向量投影到高維空間後,每個特徵點都獲得了更多的屬性,更多的屬性意味著樣本背後隱藏的資訊也會被帶出,顯然,額外的資訊可以讓樣本得到更好的分類。可惜,不一樣的核函式構造的高維空間有很大特異性,這也就造成了不一樣的核函式對同一組樣品**的能力天差地別,這或許也是svm的缺點,它能否將隱藏的資訊帶出,在一定程度上是不受控制的,一旦核函式不合適,帶來的將會是無用的干擾資訊。或許有一天誰能把核函式也用上boosting的方法就能解決了,哈哈,誰知道呢。
SVM演算法掃盲理解
名稱 svm support vector machine 支援向量機 要解決的問題 二分類問題 形象理解 用乙個超平面,將資料二分類。尋找最優超平面,並使得兩個類別中,距離超平面距離最近的點,距超平面的距離最遠。也即 兩個類別中,距離超平面最近的點,會分別決定兩個平行的超平面,這兩個超平面稱為支援...
svm的簡單理解
svm是一種訓練機器學習的演算法,可以用於解決分類和回歸問題,同時還使用了一種稱之為kernel trick的技術進行資料的轉換,然後再根據這些轉換資訊,在可能的輸出之中找到乙個最優的邊界。簡單來說,就是做一些非常複雜的資料轉換工作,然後根據預定義的標籤或者輸出進而計算出如何分離使用者的資料。簡單理...
關於SVM的理解
因為參閱 涉及到svm數學原理,故跟著學習了下。先是看了知乎對svm的解釋,其中乙個高票答案看得我一頭霧水,擷取如下 畫第乙個圈的地方就很有誤導性,此處的y與後面的y都不一樣,後面的兩處y都是標記值。應該這麼去理解wt b 這個理解好了再參考 的內容就很容易把svm原理理解了 再談下關於文中 兩條直...