本文為有志于成為數據科學家或對此感興趣的讀者們介紹最流行的機器學習算法。
機器學習是該行業的一個創新且重要的領域。我們為機器學習程序選擇的算法類型,取決于我們想要實現的目標。
現在,機器學習有很多算法。因此,如此多的算法,可能對于初學者來說,是相當不堪重負的。今天,我們將簡要介紹 10 種最流行的機器學習算法,這樣你就可以適應這個激動人心的機器學習世界了!
讓我們言歸正傳!
1. 線性回歸
線性回歸(Linear Regression)可能是最流行的機器學習算法。線性回歸就是要找一條直線,并且讓這條直線盡可能地擬合散點圖中的數據點。它試圖通過將直線方程與該數據擬合來表示自變量(x 值)和數值結果(y 值)。然后就可以用這條線來預測未來的值!
這種算法最常用的技術是最小二乘法(Least of squares)。這個方法計算出最佳擬合線,以使得與直線上每個數據點的垂直距離最小。總距離是所有數據點的垂直距離(綠線)的平方和。其思想是通過最小化這個平方誤差或距離來擬合模型。
2. 邏輯回歸
邏輯回歸(Logistic regression)與線性回歸類似,但它是用于輸出為二進制的情況(即,當結果只能有兩個可能的值)。對最終輸出的預測是一個非線性的 S 型函數,稱為 logistic function, g()。
這個邏輯函數將中間結果值映射到結果變量 Y,其值范圍從 0 到 1。然后,這些值可以解釋為 Y 出現的概率。S 型邏輯函數的性質使得邏輯回歸更適合用于分類任務。
3. 決策樹
決策樹(Decision Trees)可用于回歸和分類任務。
在這一算法中,訓練模型通過學習樹表示(Tree representation)的決策規則來學習預測目標變量的值。樹是由具有相應屬性的節點組成的。
在每個節點上,我們根據可用的特征詢問有關數據的問題。左右分支代表可能的答案。最終節點(即葉節點)對應于一個預測值。
每個特征的重要性是通過自頂向下方法確定的。節點越高,其屬性就越重要。
4. 樸素貝葉斯
樸素貝葉斯(Naive Bayes)是基于貝葉斯定理。它測量每個類的概率,每個類的條件概率給出 x 的值。這個算法用于分類問題,得到一個二進制“是 / 非”的結果。看看下面的方程式。
樸素貝葉斯分類器是一種流行的統計技術,可用于過濾垃圾郵件!
5. 支持向量機(SVM)
支持向量機(Support Vector Machine,SVM)是一種用于分類問題的監督算法。支持向量機試圖在數據點之間繪制兩條線,它們之間的邊距最大。為此,我們將數據項繪制為 n 維空間中的點,其中,n 是輸入特征的數量。在此基礎上,支持向量機找到一個最優邊界,稱為超平面(Hyperplane),它通過類標簽將可能的輸出進行最佳分離。
超平面與最近的類點之間的距離稱為邊距。最優超平面具有最大的邊界,可以對點進行分類,從而使最近的數據點與這兩個類之間的距離最大化。
6. K- 最近鄰算法(KNN)
K- 最近鄰算法(K-Nearest Neighbors,KNN)非常簡單。KNN 通過在整個訓練集中搜索 K 個最相似的實例,即 K 個鄰居,并為所有這些 K 個實例分配一個公共輸出變量,來對對象進行分類。
K 的選擇很關鍵:較小的值可能會得到大量的噪聲和不準確的結果,而較大的值是不可行的。它最常用于分類,但也適用于回歸問題。
用于評估實例之間相似性的距離可以是歐幾里得距離(Euclidean distance)、曼哈頓距離(Manhattan distance)或明氏距離(Minkowski distance)。歐幾里得距離是兩點之間的普通直線距離。它實際上是點坐標之差平方和的平方根。
7. K- 均值
K- 均值(K-means)是通過對數據集進行分類來聚類的。例如,這個算法可用于根據購買歷史將用戶分組。它在數據集中找到 K 個聚類。K- 均值用于無監督學習,因此,我們只需使用訓練數據 X,以及我們想要識別的聚類數量 K。
該算法根據每個數據點的特征,將每個數據點迭代地分配給 K 個組中的一個組。它為每個 K- 聚類(稱為質心)選擇 K 個點。基于相似度,將新的數據點添加到具有最近質心的聚類中。這個過程一直持續到質心停止變化為止。
8. 隨機森林
隨機森林(Random Forest)是一種非常流行的集成機器學習算法。這個算法的基本思想是,許多人的意見要比個人的意見更準確。在隨機森林中,我們使用決策樹集成(參見決策樹)。
為了對新對象進行分類,我們從每個決策樹中進行投票,并結合結果,然后根據多數投票做出最終決定。
9. 降維
由于我們今天能夠捕獲的數據量之大,機器學習問題變得更加復雜。這就意味著訓練極其緩慢,而且很難找到一個好的解決方案。這一問題,通常被稱為“維數災難”(Curse of dimensionality)。
降維(Dimensionality reduction)試圖在不丟失最重要信息的情況下,通過將特定的特征組合成更高層次的特征來解決這個問題。主成分分析(Principal Component Analysis,PCA)是最流行的降維技術。
主成分分析通過將數據集壓縮到低維線或超平面 / 子空間來降低數據集的維數。這盡可能地保留了原始數據的顯著特征。
可以通過將所有數據點近似到一條直線來實現降維的示例。
10. 人工神經網絡(ANN)
人工神經網絡(Artificial Neural Networks,ANN)可以處理大型復雜的機器學習任務。神經網絡本質上是一組帶有權值的邊和節點組成的相互連接的層,稱為神經元。在輸入層和輸出層之間,我們可以插入多個隱藏層。人工神經網絡使用了兩個隱藏層。除此之外,還需要處理深度學習。
人工神經網絡的工作原理與大腦的結構類似。一組神經元被賦予一個隨機權重,以確定神經元如何處理輸入數據。通過對輸入數據訓練神經網絡來學習輸入和輸出之間的關系。在訓練階段,系統可以訪問正確的答案。
如果網絡不能準確識別輸入,系統就會調整權重。經過充分的訓練后,它將始終如一地識別出正確的模式。
每個圓形節點表示一個人工神經元,箭頭表示從一個人工神經元的輸出到另一個人工神經元的輸入的連接。
接下來是什么?現在,你已經了解了最流行的機器學習算法的基礎介紹。你已經準備好學習更為復雜的概念,甚至可以通過深入的動手實踐來實現它們。如果你想了解如何實現這些算法,可以參考 Educative 出品的 Grokking Data Science 課程,該課程將這些激動人心的理論應用于清晰、真實的應用程序。
審核編輯 :李倩
-
算法
+關注
關注
23文章
4608瀏覽量
92844 -
人工智能
+關注
關注
1791文章
47208瀏覽量
238287 -
人工神經網絡
+關注
關注
1文章
119瀏覽量
14619 -
機器學習
+關注
關注
66文章
8408瀏覽量
132573
原文標題:人工智能10大流行算法,通俗易懂講明白
文章出處:【微信號:TheBigData1024,微信公眾號:人工智能與大數據技術】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論