首頁  >  文章  >  科技週邊  >  機器學習中入門級必學的演算法有哪些?

機器學習中入門級必學的演算法有哪些?

PHPz
PHPz轉載
2023-05-02 20:19:05800瀏覽

K-近鄰演算法

什麼是k-近鄰演算法?

機器學習中入門級必學的演算法有哪些?

就是根據你的鄰居推論你的類別

概念:

K Nearest Neighbor演算法又叫KNN演算法,這個演算法是機器學習裡面一個比較經典的演算法, 整體來說KNN演算法是相對比較容易理解的演算法。

定義

如果一個樣本在特徵空間中的k個最相似(即特徵空間中最鄰近)的樣本中的大多數屬於某一個類別,則樣本也屬於這個類別。

來源:KNN演算法最早是由Cover和Hart提出的一種分類演算法

##距離公式

兩個樣本的距離可以透過以下公式計算,又叫歐式距離,關於距離公式會在後面進行討論

#線性迴歸

##應用場景為:房價預測、銷售量預測、貸款額度預測

機器學習中入門級必學的演算法有哪些?

什麼是線性迴歸?

(1)定義與公式

線性迴歸(Linear regression)是利用迴歸方程式(函數)對一個或多個自變量(特徵值)和因變數(目標值)之間關係進行建模的一種分析方式。

特徵:只有一個自變數的情況稱為單變數迴歸,多於一個自變數情況的叫做多元迴歸。

機器學習中入門級必學的演算法有哪些?

線性迴歸用矩陣表示範例:

##那麼怎麼理解呢?我們來看幾個例子:

期末成績:0.7×考試成績0.3×平時成績

房子價格= 0.02×中心區域的距離0.04×城市一氧化氮濃度(-0.12×自住平均房價) 0.254×城鎮犯罪率

上面兩個例子,我們看到特徵值與目標值之間建立了一個關係,這個關係可以理解為線性模型。

邏輯迴歸

邏輯迴歸(Logistic Regression)是機器學習中的分類模型,邏輯迴歸是一種分類演算法,雖然名字中帶有回歸。由於演算法的簡單和高效,在實際中應用非常廣泛。

應用程式場景:廣告點擊率、是否為垃圾郵件、是否患病、金融詐騙,虛假帳號。

這裡就可以發現一個特點了,就是兩個類別之間都屬於判斷,邏輯迴歸就是解決二分類問題的利器。

要掌握邏輯迴歸,必須掌握兩點:

邏輯迴歸中,其輸入值是什麼?

如何判斷邏輯迴歸的輸出?

輸入:

機器學習中入門級必學的演算法有哪些?

#啟動函數:sigmoid函數

機器學習中入門級必學的演算法有哪些?

判斷標準

回歸的結果輸入到sigmoid函數當中,輸出結果:[ 0, 1]區間中的一個機率值,預設為0.5為閾值。

邏輯迴歸最終的分類是透過屬於某個類別的機率值來判斷是否屬於某個類別,而這個類別預設標記為1(正例),另外的一個類別會標記為0(反例)。 (方便損失計算)

輸出結果解釋(重要):假設有兩個類別A,B,並且假設我們的機率值為屬於A(1)這個類別的機率值。現在有一個樣本的輸入到邏輯迴歸輸出結果0.55,那麼這個機率值超過0.5,代表我們訓練或預測的結果就是A(1)類別。那麼反之,如果得出結果為0.3那麼,訓練或預測結果就為B(0)類別。

關於邏輯迴歸的閾值是可以進行改變的,例如上面舉例中,如果你把閾值設為0.6,那麼輸出的結果0.55,就屬於B類。

決策樹演算法

決策樹思想的來源非常樸素,程式設計中的條件分支結構就是if-else結構,最早的決策樹就是利用這類結構分割資料的一種分類學習方法

決策樹:是一種樹狀結構,其中每個內部節點表示一個屬性上的判斷,每個分支代表一個判斷結果的輸出,最後每個葉節點代表一種分類結果,本質是一顆由多個判斷節點組成的樹。

怎麼理解這句話?透過一個對話例子

機器學習中入門級必學的演算法有哪些?

上面案例是女生透過定性的主觀意識,把年齡放到最上面,那麼如果需要對這一過程進行量化,該如何處理?

此時需要用到資訊理論中的知識:資訊熵,資訊增益。

整合演算法

機器學習中入門級必學的演算法有哪些?

#整合學習透過建立幾個模型來解決單一預測問題。它的工作原理是產生多個分類器/模型,各自獨立地學習和做出預測。這些預測最後結合成組合預測,因此優於任何一個單分類的做出預測。

聚類演算法

機器學習中入門級必學的演算法有哪些?

#實際應用:

使用者畫像,廣告推薦,Data Segmentation,搜尋引擎的流量推薦,惡意流量識別

#基於位置資訊的商業推送,新聞聚類,篩選排序。

影像分割,降維,辨識;離群點偵測;信用卡異常消費;發掘相同功能的基因片段。

聚類演算法:

一種典型的無監督學習演算法,主要用於將相似的樣本自動歸到一個類別中。

在聚類演算法中根據樣本之間的相似性,將樣本劃分到不同的類別中,對於不同的相似度計算方法,會得到不同的聚類結果,常用的相似度計算方法有歐式距離法。

以上是機器學習中入門級必學的演算法有哪些?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:51cto.com。如有侵權,請聯絡admin@php.cn刪除