網上看到一篇關于常用機器學習算法的總結,覺得淺顯易懂,轉來分享(略有更改),特此聲明
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 1、決策樹
根據一些 feature 進行分類,每個節點提一個問題,通過判斷,将資料分為兩類,再繼續提問。這些問題是根據已有資料學習出來的,再投入新資料的時候,就可以根據這棵樹上的問題,将資料劃分到合适的葉子上。
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 2、随機森林算法
視視訊講解
在源資料中随機選取資料,組成幾個子集
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 S 矩陣是源資料,有 1-N 條資料,A B C 是feature,最後一列C是類别
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 由 S 随機生成 M 個子矩陣
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 這 M 個子集得到 M 個決策樹
将新資料投入到這 M 個樹中,得到 M 個分類結果,計數看預測成哪一類的數目最多,就将此類别作為最後的預測結果
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 3、邏輯回歸
視訊講解
當預測目标是機率這樣的,值域需要滿足大于等于0,小于等于1的,這個時候單純的線性模型是做不到的,因為在定義域不在某個範圍之内時,值域也超出了規定區間。
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 是以此時需要這樣的形狀的模型會比較好
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 那麼怎麼得到這樣的模型呢?
這個模型需要滿足兩個條件 大于等于0,小于等于1
大于等于0 的模型可以選擇 絕對值,平方值,這裡用 指數函數,一定大于0
小于等于1 用除法,分子是自己,分母是自身加上1,那一定是小于1的了
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 再做一下變形,就得到了 logistic regression 模型
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 通過源資料計算可以得到相應的系數了
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 最後得到 logistic 的圖形
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 4、SVM
視訊講解
要将兩類分開,想要得到一個超平面,最優的超平面是到兩類的 margin 達到最大,margin就是超平面與離它最近一點的距離,如下圖,Z2>Z1,是以綠色的超平面比較好
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 将這個超平面表示成一個線性方程,線上上方的一類,都大于等于1,另一類小于等于-1
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 點到面的距離根據圖中的公式計算
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 是以得到 total margin 的表達式如下,目标是最大化這個 margin,就需要最小化分母,于是變成了一個優化問題
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 舉個栗子,三個點,找到最優的超平面,定義了 weight vector=(2,3)-(1,1)
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 得到 weight vector 為(a,2a),将兩個點代入方程,代入(2,3)另其值=1,代入(1,1)另其值=-1,求解出 a 和 截矩 w0 的值,進而得到超平面的表達式。
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 a 求出來後,代入(a,2a)得到的就是 support vector
a 和 w0 代入超平面的方程就是 support vector machine
5、樸素貝葉斯
視訊講解
舉個在 NLP 的應用:給一段文字,傳回情感分類,這段文字的态度是positive,還是negative
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 為了解決這個問題,可以隻看其中的一些單詞
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 這段文字,将僅由一些單詞和它們的計數代表
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 原始問題是:給你一句話,它屬于哪一類。通過 bayes rules 變成一個比較簡單容易求得的問題
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 問題變成,這一類中這句話出現的機率是多少,當然,别忘了公式裡的另外兩個機率
栗子:單詞 love 在 positive 的情況下出現的機率是 0.1,在 negative 的情況下出現的機率是 0.001
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 6、K最近鄰算法
視訊講解
給一個新的資料時,離它最近的 k 個點中,哪個類别多,這個資料就屬于哪一類
栗子:要區分 貓 和 狗,通過 claws 和 sound 兩個feature來判斷的話,圓形和三角形是已知分類的了,那麼這個 star 代表的是哪一類呢
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 k=3時,這三條線連結的點就是最近的三個點,那麼圓形多一些,是以這個star就是屬于貓
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 7、K均值算法
視訊講解
想要将一組資料,分為三類,粉色數值大,黃色數值小
最開心先初始化,這裡面選了最簡單的 3,2,1 作為各類的初始值
剩下的資料裡,每個都與三個初始值計算距離,然後歸類到離它最近的初始值所在類别
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 分好類後,計算每一類的平均值,作為新一輪的中心點
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 幾輪之後,分組不再變化了,就可以停止了
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 8、Adaboost 算法
視訊講解
adaboost 是 bosting 的方法之一
bosting就是把若幹個分類效果并不好的分類器綜合起來考慮,會得到一個效果比較好的分類器。
下圖,左右兩個決策樹,單個看是效果不怎麼好的,但是把同樣的資料投入進去,把兩個結果加起來考慮,就會增加可信度
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 adaboost 的栗子,手寫識别中,在畫闆上可以抓取到很多 features,例如 始點的方向,始點和終點的距離等等
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 training 的時候,會得到每個 feature 的 weight,例如 2 和 3 的開頭部分很像,這個 feature 對分類起到的作用很小,它的權重也就會較小
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 而這個 alpha 角 就具有很強的識别性,這個 feature 的權重就會較大,最後的預測結果是綜合考慮這些 feature 的結果
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 9、神經網絡
視訊講解
Neural Networks 适合一個input可能落入至少兩個類别裡
NN 由若幹層神經元,和它們之間的聯系組成
第一層是 input 層,最後一層是 output 層
在 hidden 層 和 output 層都有自己的 classifier
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 input 輸入到網絡中,被激活,計算的分數被傳遞到下一層,激活後面的神經層,最後output 層的節點上的分數代表屬于各類的分數,下圖例子得到分類結果為 class 1
同樣的 input 被傳輸到不同的節點上,之是以會得到不同的結果是因為各自節點有不同的weights 和 bias
這也就是 forward propagation
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 10、馬爾可夫
視訊講解
Markov Chains 由 state 和 transitions 組成
栗子,根據這一句話 ‘the quick brown fox jumps over the lazy dog’,要得到 markov chain
步驟,先給每一個單詞設定成一個狀态,然後計算狀态間轉換的機率
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 這是一句話計算出來的機率,當你用大量文本去做統計的時候,會得到更大的狀态轉移矩陣,例如 the 後面可以連接配接的單詞,及相應的機率
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫 生活中,鍵盤輸入法的備選結果也是一樣的原理,模型會更進階
常用機器學習算法總結1、決策樹2、随機森林算法3、邏輯回歸4、SVM5、樸素貝葉斯6、K最近鄰算法7、K均值算法8、Adaboost 算法9、神經網絡10、馬爾可夫