一句話概括:
1. 聚類:無監督學習,學習結果將產生幾個集合,集合中的元素彼此相似;
2. 分類:有監督學習,學習結果將產生幾個函數,通過函數劃分爲幾個集合,數據對象是離散值;
3. 迴歸:有監督學習,學習結果將產生幾個函數,通過函數產生連續的結果,數據對象是連續值;
聚類
聚類算法是無監督學習的一種算法,也就是說,並沒有一批已經打好標籤的數據供機器訓練模型。因此該算法用於在數據中尋找數據間隱藏的聯繫和區別。通過聚類後形成幾個集合,集合內部的元素間具有較高的相似度,相似度的衡量可以通過歐幾里得距離、概率距離、加權重距離計算。
常見的聚類算法有:
1.劃分聚類: K-means 算法、k-medoids算法、K-pototypes算法、CLARANS算法
2.層次聚類:BIRCH算法、CURE算法、
3.密度聚類:DBSCAN算法、OPTICS算法、DENCLUE算法
4.網格聚類:STING算法、CLIQUE算法、WAVE-CLUSTER算法
5.混合聚類:高斯混合模型、CLIQUE算法(綜合密度和網格的算法)
幾個聚類算法的簡單對比:
算法 | 算法效率 | 數據類型 | 發現的聚類類型 | 對噪點的敏感性 | 對輸入順序的敏感性 |
BIRCH | 高 | 數值 | 凸形或球形 | 不敏感 | 不太敏感 |
DBSCAN | 一般 | 數值 | 任意形狀 | 敏感 | 敏感 |
CURE | 較高 | 數值 | 任意形狀 | 不敏感 | 不太敏感 |
K-pototypes | 一般 | 數值和符號 | 凸形或球形 | 敏感 | 一般 |
CLARANS | 較低 | 數值 | 凸形或球形 | 不敏感 | 非常敏感 |
CUQUE | 較低 | 數值 | 凸形或球形 | 一般 | 不敏感 |
分類
分類算法要求先向模型輸入數據的訓練樣本,從訓練樣本中提取描述該類數據的一個函數或模型。通過該模型對其他數據進行預測和歸類,分類算法是一種對離散型隨機變量建模或預測的監督學習算法,同時產生離散的結果。比如在醫療診斷中判斷是否患有癌症,在放貸過程中進行客戶評級等。
常見的分類算法:
1.決策樹:ID3、C4.5(C5.0)、CART、PUBLIC、SLIQ、SPRINT算法;
2.神經網絡:BP網絡、徑向基RBF網絡、Hopfield網絡、隨機神經網絡(Boltzmann機)、競爭神經網絡(Hamming網絡,自組織映射網絡);
3.貝葉斯:樸素貝葉斯(Naive Bayes)算法、TAN算法;
4.基於關聯規則的分類:CBA算法、ADT算法、CMAR算法、ARCS算法;
5.混合分類方法:Bagging算法、Boosting算法
6.支持向量機;
迴歸
迴歸算法與分類算法一樣都是有監督的學習算法,因此也需要先向模型輸入數據的訓練樣本。但是與分類算法的區別是,迴歸算法是一種對數值型連續隨機變量進行預測和建模的監督學習算法,產生的結果也一般是數值型的。
例如向已經訓練好的迴歸模型中輸入一個人的數據,判斷此人20年後的經濟能力,則模型的迴歸結果是連續的,往往得到一條迴歸曲線。當自變量改變時,因變量呈現連續型變化。
常見的迴歸算法:
1.線性迴歸/邏輯迴歸/多項式迴歸:LR算法、LWLR算法(局部加權)、LRCV算法(交叉驗證)、MLP算法(神經網絡);
2.逐步迴歸;
3.嶺迴歸;
4.LASSO迴歸;
5.ElasticNet迴歸;