機器學習無疑是現在資料分析領域的乙個重要內容,凡事從事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)
隨機森林
機器學習 初識機器學習
1.什麼是機器學習?對於機器學習到現在都還沒有統一的定義,但是,通過乙個例子和較權威的定義來理解機器學習,最後附上我個人對機器學習的理解 2.監督學習 1 監督學習基本思想 我們資料集中的每個樣本都有相應的 正確答案 即每個樣本都是真實值,再根據這些樣本作出 舉乙個房價預售的例子來說明 eg 下面圖...
機器學習初識之KNN演算法
knn演算法,k nearest neighbor 最近的k個鄰居,了解乙個演算法,先從了解乙個問題開始,現在問題如下,有很多的數字,每個上面有乙個數字,每個是28 28畫素的的,灰度值從0 255,我們把每個看作是乙個1x784的一行矩陣,因為784 28 28,矩陣上的數字大小表示該畫素點的灰度...
初識機器學習
學機器學習已經大半年了,現在才發現自己是初識機器學習。一開始學機器學習,真的以為它是個機器,學會了就可以拿來用,或是拿來改進。現在才明白,學機器學習的方法不僅要弄明白理論基礎和演算法思路,還要明白演算法的脈絡,它的每一步都是為什麼這麼做,掌握演算法背後的真正的思想,才能融會貫通,針對不同的問題提出不...