常見機器學習演算法背後的數學

dicksonjyl560101發表於2020-08-21

來源:DeepHub IMBA

本文約 2300字,建議閱讀 5分鐘。

在本文中,我們將介紹一些機器學習演算法的功能,以及在這些演算法中實現的有助於學習過程的一些數學方程。

不同的機器學習演算法是如何從資料中學習並預測未見資料的呢?

常見機器學習演算法背後的數學

機器學習演算法是這樣設計的,它們從經驗中學習,當它們獲取越來越多的資料時,效能就會提高。每種演算法都有自己學習和預測資料的方法。在本文中,我們將介紹一些機器學習演算法的功能,以及在這些演算法中實現的有助於學習過程的一些數學方程。

機器學習演算法的型別

機器學習演算法大致可以分為以下四類:

監督學習:預測的目標或輸出變數是已知的。這些演算法生成一個函式,該函式將輸入對映到輸出變數。迴歸和分類演算法屬於這一類。在迴歸中,輸出變數是連續的,而在分類中,輸出變數包含兩個或更多的離散值。一些監督學習演算法包括線性迴歸,邏輯迴歸,隨機森林,支援向量機,決策樹,樸素貝葉斯,神經網路。

無監督學習:目標或輸出變數是未知的。這些演算法通常對資料進行分析並生成資料簇。關聯、聚類和維數約簡演算法屬於這一類。K-means聚類、PCA(主成分分析)、Apriori演算法等是非監督學習演算法。

半監督學習:它是監督和非監督學習方法的結合。它使用已知資料來訓練自己,然後標記未知資料。

強化學習:機器或代理被訓練從“試錯”過程中學習。機器從過去的決策經驗中學習,並利用它的學習來預測未來決策的結果。強化學習演算法的例子有Q-Learning, Temporal Difference等。

線性迴歸

線性迴歸是通過擬合資料點上的最佳直線來預測連續變數的結果。最佳擬合線定義了因變數和自變數之間的關係。該演算法試圖找到最適合預測目標變數值的直線。通過使資料點與迴歸線之間的差的平方和最小達到最佳擬合線。

常見機器學習演算法背後的數學

公式: Y = c + m₁X₁ + m₂X₂ + ….. +mₙXₙ

邏輯迴歸

邏輯迴歸是一種基於自變數估計分類變數結果的分類演算法。它通過將資料擬合到logistic函式來預測某一事件發生的概率。通過最大化似然函式,對logistic函式中自變數的係數進行優化。優化決策邊界,使成本函式最小。利用梯度下降法可以使代價函式最小化。

常見機器學習演算法背後的數學

邏輯迴歸的s型曲線

常見機器學習演算法背後的數學

Logistic迴歸的代價函式

常見機器學習演算法背後的數學

邏輯迴歸方程

樸素貝葉斯

樸素貝葉斯是一種基於貝葉斯定理的分類演算法。該演算法假設自變數之間不存在相關性。在一個類中出現的某個特性與在同一類中出現的另一個特性沒有關係。我們針對類為所有預測器建立一個頻率表(目標變數的不同值),並計算所有預測器的可能性。利用樸素貝葉斯方程,計算所有類別的後驗概率。樸素貝葉斯分類器的結果將是所有類概率中概率最高的類。

常見機器學習演算法背後的數學

c→類,X→預測

決策樹

決策樹主要用於分類問題,但它們也可以用於迴歸。在該演算法中,我們根據最有效地劃分資料集的屬性,將資料集劃分為兩個或多個同構集。選擇將分割資料集的屬性的方法之一是計算熵和資訊增益。熵反映了變數中雜質的數量。資訊增益是父節點的熵減去子節點的熵之和。選擇提供最大資訊增益的屬性進行分割。我們也可以使用基尼指數作為雜質標準來分割資料集。為了防止過度分裂,我們優化了max_features、min_samples_split、max_depth等決策樹的超引數。

常見機器學習演算法背後的數學

熵:c→類的數量

常見機器學習演算法背後的數學

基尼指數

隨機森林

隨機森林由多個決策樹組成,決策樹作為一個集合來執行。一個整體由一組用來預測結果的模型組成,而不是一個單獨的模型。在隨機森林中,每棵決策樹預測一個類結果,投票最多的類結果成為隨機森林的預測。為了做出準確的預測,決策樹之間的相關性應該最小。有兩種方法可以確保這一點,即使用Bagging和特性選擇。Bagging是一種從資料集中選擇隨機觀察樣本的技術。特徵選擇允許決策樹僅在特徵的隨機子集上建模。這就防止單個樹使用相同的特性進行預測。

常見機器學習演算法背後的數學

k -近鄰

該演算法也可用於迴歸和分類。該演算法通過計算資料點與所有資料點的距離來找到k個資料點的最近鄰。資料點被分配給k個鄰居中點數最多的類(投票過程)。在迴歸的情況下,它計算k個最近鄰居的平均值。不同的距離度量可以使用歐幾里得距離,曼哈頓距離,閔可夫斯基距離等。為了消除平局的概率,k的值必須是一個奇數。由於每個資料點與其他資料點的距離都需要計算,因此該演算法的計算開銷較大。

常見機器學習演算法背後的數學

K - means

K-Means是一種無監督學習演算法,用於形成資料簇。形成的叢集應該使叢集內的資料點儘可能相似,叢集之間的差異儘可能明顯。它隨機選擇K個位置,每個位置作為一個簇的質心。資料點被分配到最近的簇。在分配資料點之後,計算每個聚類的質心,再次將資料點分配到最近的聚類中。此過程將重複進行,直到在每次連續迭代中資料點保持在同一簇中,或簇的中心不改變為止。我們還可以指示演算法在進行一定次數的迭代後停止計算。

常見機器學習演算法背後的數學

Apriori演算法

Apriori演算法是一種基於關聯規則的資料庫頻繁項集識別演算法。頻繁項集是支援度大於閾值(支援度)的項集。關聯規則可以被認為是一種IF-THEN關係。它通常用於市場籃子(market basket)分析中,發現不同商品之間的關聯。支援、信心和提升是幫助確定關聯的三個措施。

常見機器學習演算法背後的數學

支援指示某些專案集一起出現的頻率。

常見機器學習演算法背後的數學

置信度計算專案集在其中一個專案出現時發生的概率。

常見機器學習演算法背後的數學

Lift表示關聯規則的強度。支援是使用者定義的閾值。

常見機器學習演算法背後的數學

XGBoost

XGBoost是一種基於決策樹的梯度增強演算法(整合的另一種型別)。XGBoost涉及一組較弱的學習者,它們結合在一起可以做出值得注意的準確預測。Boosting是一個序列整合,每個模型都是在修正之前模型錯誤分類的基礎上構建的。換句話說,它接收到前一個模型的錯誤,並試圖通過學習這些錯誤來改進模型。

常見機器學習演算法背後的數學

支援向量機(SVM)

SVM也是一種監督學習演算法,可用於分類和迴歸問題。支援向量機試圖在N維空間(N指特徵的數量)中找到一個最優超平面來幫助分類不同的類。它利用Hinge損失函式,通過最大化類觀測值之間的裕度距離來尋找最優超平面。超平面的維數取決於輸入特徵的數量。如果特徵個數為N,則超平面的維數為N-1。

常見機器學習演算法背後的數學

損失函式:t→目標變數,w→模型引數,x→輸入變數

常見機器學習演算法背後的數學

原文連結:

https://towardsdatascience.com/the-math-behind-machine-learning-algorithms-9c5e4c87fff

編輯:文婧

—完—



https://www.toutiao.com/i6861554364557820429/



來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29829936/viewspace-2713570/,如需轉載,請註明出處,否則將追究法律責任。

相關文章