十大必須掌握的機器學習演算法,你都知道了嗎?
為了拉近和大家的距離
每篇文章的文末都有一個小話題
歡迎大家參與討論
有任何想說的都可以在評論區交流~
通過本篇文章可以對ML的常用演算法有個常識性的認識,沒有代碼,沒有複雜的理論推導,就是圖解一下,知道這些演算法是什麼,它們是怎麼應用的,例子主要是分類問題。
每個演算法都看了好幾個視頻,挑出講的最清晰明了有趣的,便於科普。
以後有時間再對單個演算法做深入地解析。
今天的演算法如下:
決策樹
隨機森林演算法
邏輯回歸
SVM
樸素貝葉斯
K最近鄰演算法
K均值演算法
Adaboost 演算法
神經網路
馬爾可夫
1. 決策樹
根據一些 feature 進行分類,每個節點提一個問題,通過判斷,將數據分為兩類,再繼續提問。這些問題是根據已有數據學習出來的,再投入新數據的時候,就可以根據這棵樹上的問題,將數據劃分到合適的葉子上。
2. 隨機森林
在源數據中隨機選取數據,組成幾個子集
S 矩陣是源數據,有 1-N 條數據,A B C 是feature,最後一列C是類別
由 S 隨機生成 M 個子矩陣
這 M 個子集得到 M 個決策樹
將新數據投入到這 M 個樹中,得到 M 個分類結果,計數看預測成哪一類的數目最多,就將此類別作為最後的預測結果
3. 邏輯回歸
當預測目標是概率這樣的,值域需要滿足大於等於0,小於等於1的,這個時候單純的線性模型是做不到的,因為在定義域不在某個範圍之內時,值域也超出了規定區間。
所以此時需要這樣的形狀的模型會比較好
那麼怎麼得到這樣的模型呢?
這個模型需要滿足兩個條件 大於等於0,小於等於1
大於等於0 的模型可以選擇 絕對值,平方值,這裡用 指數函數,一定大於0
小於等於1 用除法,分子是自己,分母是自身加上1,那一定是小於1的了
再做一下變形,就得到了 logistic regression 模型
通過源數據計算可以得到相應的係數了
最後得到 logistic 的圖形
4. SVM
support vector machine
要將兩類分開,想要得到一個超平面,最優的超平面是到兩類的 margin 達到最大,margin就是超平面與離它最近一點的距離,如下圖,Z2>Z1,所以綠色的超平面比較好
將這個超平面表示成一個線性方程,在線上方的一類,都大於等於1,另一類小於等於-1
點到面的距離根據圖中的公式計算
所以得到 total margin 的表達式如下,目標是最大化這個 margin,就需要最小化分母,於是變成了一個優化問題
得到 weight vector 為(a,2a),將兩個點代入方程,代入(2,3)另其值=1,代入(1,1)另其值=-1,求解出 a 和 截矩 w0 的值,進而得到超平面的表達式。
a 求出來後,代入(a,2a)得到的就是 support vector
a 和 w0 代入超平面的方程就是 support vector machine
5. 樸素貝葉斯
點擊展開全文
※基礎 | 10幅圖解釋機器學習中的基本概念
※谷歌開源機器學習可視化工具 Facets:從全新角度觀察數據
※機器學習演算法實踐:決策樹 (Decision Tree)
※讓您的 iOS 應用加入到機器學習的浪潮中
TAG:機器學習 |
※數據產品必備技術知識:機器學習及常見演算法,看這一篇就夠了
※誰說選擇機器學習演算法沒有套路的?
※演算法太多挑花眼?教你如何選擇正確的機器學習演算法
※不想硬啃理論和演算法,我還能入門深度學習嗎?
※為什麼我們需要學習演算法?
※手機拍照演算法好 真的就可以為所欲為?
※抖音的演算法推薦,果蠅也做得到!
※新手必看的十種機器學習演算法
※老說演算法已經入侵我們生活,那機器學習都用在哪些地方?
※躺著也能學演算法!
※別再讓演算法控制你的大腦
※在演算法中練習百年後,機器人的手能比你更靈活嗎?
※演算法無法創作藝術,但它已經能夠左右你我的審美;是忠粉給了蘋果自信,讓發布會不再那麼有趣
※玩手機的是大人還是小孩?這種演算法知道
※最萌演算法學習來啦,看不懂才怪!
※不同機器學習演算法的數據要求
※用演算法識別「熊孩子」?難以想像的智能技術
※把看不懂的演算法做成產品,「智鈾科技」讓 AI 小白也能上手機器學習
※無監督機器學習中,最常見的聚類演算法有哪些?
※要學習機器學習,先從這十大演算法開始吧