顧名思義,分類,是對事物進行區分的過程和方法。分類算法是目前數據挖掘、機器學習等領域中很重要的一部分。下面談談對分類算法幾個慨念的簡單認識。
1、朴素貝葉斯(Naive Bayes)
貝葉斯(Bayes)分類算法的原理是利用概率統計知識進行分類,朴素貝葉斯是其中一種。朴素貝葉斯算法成立的一個前提是滿足特征間條件獨立假設。這種假設可能和實際情況不符合,但讓我們判斷起來更加簡單粗暴。
舉個栗子:“十個吃貨有九個會變胖”
That means“吃貨”變胖的概率P(吃貨 | 變胖)=0.9,假設根據健康協會的數據吃貨占人群總數P(吃貨)=0.1、變胖的概率是P(變胖)=0.09,即有一旦有人變胖了,就可以通過貝葉斯公式推導出那個人是“吃貨”的概率P(吃貨 | 變胖)=P(變胖 | 吃貨)* P(吃貨)/ P(變胖)=1.0,則這個人100%是個“吃貨”。
非吃貨 | 吃貨 | ||
變胖 | 0 | 9 | P(變胖)=0.09 |
沒胖 | 90 | 1 | P(沒胖)=0.901 |
P(非吃貨)=0.9 P(吃貨)=0.1
2、決策樹
決策樹是一種依托策略抉擇建立起來的樹,一種對實例進行分類的樹形結構,這種結構由節點(node)和有向邊(directed edge)組成。在決策樹中,最能區分類別的特征將會作為最先判斷的條件,然后依次向下判斷各個次優特征。決策樹的核心是怎樣選區每個節點的最優判斷條件,即選擇的過程。
在每一個判斷節點,決策樹都會遵循一套類似於IF-THEN的判斷規則,舉個栗子:
IF “撒謊” THEN -> “壞孩子”
ELSE
IF “逃課” THEN -> “壞孩子”
ELSE IF “打架” THEN -> “壞孩子”
ELSE -> “好孩子”
3、支持向量機(Support Vector Machine,簡稱SVM)
支持向量指的是訓練樣本集中的最靠近分類決策面的點,這些數據點最難分割。機指的是機器學習中對算法的一個統稱,相當於把算法看作學習函數。支持向量機努力在正負樣本的邊界上找到一條分割線(超平面),使它可以完全區分兩類樣本並切保證划分出的間隔盡量大。
若一條分割界限沒辦法完全區分(線性不可分),我們要么通過核函數(可記作k(||x-xc||))對樣本進行空間上的映射后再划分,要么加上松弛變量進行適當容忍。
4、邏輯回歸
邏輯回歸常被稱為線性分類器,特征為自變量 x 和因變量 y 之間存在類似 y = ax+b 的一階的線性關系。
舉個栗子:假設學生在校表現里,“開小差”-1分、“玩手機”-2分、“作業優秀”+5分的次數分別為x1、x2、x3,並且每個學生的基礎分為0,即最終得分 y = -1*x1-2*x2+5*x3+0 。
邏輯回歸還通過Sigmoid函數將最終得分y變換到0-1之間,我們可以理解是當前樣本屬於正樣本的概率,就是說y值越高,屬於“良好表現”的概率越大。
5、K最鄰近(K-Nearest Neighbors,簡稱KNN)
K最鄰近是分類算法中最普通也最容易理解的算法,它主要是通過距離待預測樣本最近的K個樣本的類別來判斷當前樣本的類別。這個算法的思想是,讓目標樣本與其它正樣本距離更近、與其它負樣本距離更遠,使得其近鄰中正樣本的比例更高,從而更大概率被判為正樣本。
舉個栗子:開學安排座位的時候,老師把入學成績落后的同學編到周圍全是成績優秀的同學中間去。原因之一就是讓落后的那個學生與其他優秀學生走的更近。
6、人工神經網絡(Artificial Neural Networks,簡稱ANN)
人工神經網絡是一種新型的數學模型,它處理信息的結構類似於大腦的神經突觸聯結。這種結構由大量的節點(神經元)互相聯結形成網絡。神經網絡需要不斷地進行訓練,這是一個網絡學習的過程。通過訓練改變網絡節點的連接權的值,從而使得它有分類的功能,訓練后形成能識別對象的神經網絡。