初識機器學習算法有哪些?

機器學習無疑是現在數據分析領域的一個重要內容,凡事從事IT工作領域的人都在平時的工作中或多


或少的會用到機器學習的算法。


機器學習有很多算法,不過大的方面可分爲兩類:一個是學習的方式,一個是算法的類似性。


學習方式:


根據數據類型的不同,對一個問題的建模有不同的方式。在機器學習或者人工智能領域,人們首先會


考慮算法的學習方式。在機器學習領域,有幾種主要的學習方式。將算法按照學習方式分類是一個不


錯的想法,這樣可以讓人們在建模和算法選擇的時候考慮能根據輸入數據來選擇最合適的算法來獲得


最好的結果。


算法的主要學習方式和學習模型主要有以下幾個:


監督學習:輸入數據被稱爲訓練數據,它們有已知的標籤或者結果,比如垃圾郵件/非垃圾郵件或者某


段時間的股票價格。模型的參數確定需要通過一個訓練的過程,在這個過程中模型將會要求做出預測


,當預測不符時,則需要做出修改。


無監督學習:輸入數據不帶標籤或者沒有一個已知的結果。通過推測輸入數據中存在的結構來建立模


型。這類問題的例子有關聯規則學習和聚類。算法的例子包括Apriori算法和K-means算法。


半監督學習:輸入數據由帶標記的和不帶標記的組成。合適的預測模型雖然已經存在,但是模型在預


測的同時還必須能通過發現潛在的結構來組織數據。這類問題包括分類和迴歸。典型算法包括對一些


其他靈活的模型的推廣,這些模型都對如何給未標記數據建模做出了一些假設。


強化學習:輸入數據作爲來自環境的激勵提供給模型,且模型必須作出反應。反饋並不像監督學習那樣


來自於訓練的過程,而是作爲環境的懲罰或者是獎賞。典型問題有系統和機器人控制。算法的例子包


括Q-學習和時序差分學習(Temporal Difference Learning)。


算法類似性


根據算法的功能和形式的類似性,我們可以把算法分類,比如說基於樹的算法,基於神經網絡的算法


等等。當然,機器學習的範圍非常龐大,有些算法很難明確歸類到某一類。而對於有些分類來說,同


一分類的算法可以針對不同類型的問題。這裏,我們儘量把常用的算法按照最容易理解的方式進行分


類。 


迴歸分析


迴歸是這樣一種建模方式,它先確定一個衡量模型預測誤差的量,然後通過這個量來反覆優化變量之


間的關係。迴歸方法是統計學的主要應用,被歸爲統計機器學習。這有些讓人迷惑,因爲我們可以用


迴歸來指代一類問題和一類算法。實際上,迴歸是一個過程。以下是一些例子:


普通最小二乘法

邏輯迴歸

逐步迴歸

多元自適應樣條迴歸(MARS)

局部多項式迴歸擬合(LOESS)


基於實例的方法


基於實例的學習模型對決策問題進行建模,這些決策基於訓練數據中被認爲重要的或者模型所必需的


實例。這類方法通常會建立一個範例數據庫,然後根據某個相似性衡量標準來把新數據和數據庫進行


比較,從而找到最匹配的項,最後作出預測。因此,基於實例的方法還被叫做“贏者通吃”方法和基


於記憶的學習。這種方法的重點在於已有實例的表示以及實例間相似性的衡量標準。


K最近鄰算法(kNN)

學習矢量量化(LVQ)

自組織映射(SOM)


正則化方法


這是對另一種方法(通常是迴歸分析方法)的擴展,它懲罰複雜度高的模型,傾向推廣性好的更加簡


單的模型。我在這裏列下了一些正則化的方法,因爲他們流行、強大,而且通常只是對其他方法簡單


的改進。


嶺迴歸

套索算法(LASSO)

彈性網絡


決策樹學習


決策樹方法對決策過程進行建模,決策是基於數據中屬性的實際數值。決策在樹形結構上分叉直到對


特定的某個記錄能做出預測。在分類或者回歸的問題中我們用數據來訓練決策樹。


分類與迴歸樹算法(CART)

迭代二叉樹3代(ID3)

C4.5算法

卡方自動互動檢視(CHAID)

單層決策樹

隨機森林

多元自適應樣條迴歸(MARS)

梯度推進機(GBM)


貝葉斯算法


貝葉斯方法是那些明確地在分類和迴歸問題中應用貝葉斯定理的算法。


樸素貝葉斯算法

AODE算法

貝葉斯信度網絡(BBN)


核函數方法


核函數方法中最爲出名的是流行的支持向量機算法,它其實是一系列方法。核函數方法關心的是如何


把輸入數據映射到一個高維度的矢量空間,在這個空間中,某些分類或者回歸問題可以較容易地解決



支持向量機(SVM)

徑向基函數(RBF)

線性判別分析(LDA)


聚類方法


就像迴歸一樣,聚類既表示一類問題,也表示一類方法。聚類方法一般按照建模方式來劃分:基於質


心的或者層級結構的。所有的方法都是利用數據的內在結構來儘量地把數據歸入具有最大共性的一類


裏。


K均值法

最大期望算法(EM)


關聯規則學習


關聯規則學習是提取規則的一類算法,這些規則能最好地解釋觀測到的數據中的變量之間的關係。這


些規則能在大型多維數據集中發現重要且在商業上有用的關聯,然後進一步被利用。


Apriori算法

Eclat算法


人工神經網絡


人工神經網絡是受啓發於生物神經網絡的結構和/或功能的算法。它們是一類常用在迴歸和分類問題中


的模式匹配方法,但其實這個龐大的子類包含了上百種算法和算法的變形,可以解決各種類型的問題


。一些經典流行的方法包括(我已經把深度學習從這個類中分出來了):


感知器

反向傳播算法

Hopfield神經網絡

自適應映射(SOM)

學習矢量量化(LVQ)


深度學習


深度學習方法是利用便宜冗餘的計算資源對人工神經網絡的現代改進版。這類方法試圖建立大得多也


複雜得多的神經網絡,就如前面說到的,許多方法都是基於大數據集中非常有限的標記數據來解決半


監督學習問題。


受限玻爾茲曼機(RBM)

深度信念網(DBN)

卷積神經網絡

層疊自動編碼器(SAE)


降維方法


如同聚類方法,降維方法試圖利用數據中的內在結構來總結或描述數據,所不同的是它以無監督的方


式利用更少的信息。這對於可視化高維數據或者爲之後的監督學習簡化數據都有幫助。


主成分分析(PCA)

偏最小二乘法迴歸(PLS)

薩蒙映射

多維尺度分析(MDS)

投影尋蹤


集成方法


集成方法由多個較弱模型組合而成,這些子模型獨立訓練,它們的預測結果以某種方式整合起來得出


總的預測。很多努力都集中在選擇什麼類型的學習模型作爲子模型,以及用什麼方式整合它們的結果


。這是一類非常強大的技術,因此也很流行。


推進技術(Boosting)

自展集成(Bagging)

適應性推進(AdaBoost)

層疊泛化策略(Blending)

梯度推進機(GBM)

隨機森林


http://www.peileyuan.com/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章