機器學(xué)習(xí)分類算法中必須要懂的四種算法
本文主要介紹了 4 種應(yīng)用比較普遍的的機器學(xué)習(xí)算法,但是機器學(xué)習(xí)算法還有其他很多不同的算法,大家感興趣的可以自己去了解。
樸素貝葉斯分類樸素貝葉斯分類是基于貝葉斯定理與特征條件獨立假設(shè)的分類方法,發(fā)源于古典數(shù)學(xué)理論,擁有穩(wěn)定的數(shù)學(xué)基礎(chǔ)和分類效率。它是一種十分簡單的分類算法,當(dāng)然簡單并不一定不好用。通過對給出的待分類項求解各項類別的出現(xiàn)概率大小,來判斷此待分類項屬于哪個類別,而在沒有多余條件的情況下,樸素貝葉斯分類會選擇在已知條件下,概率最大的類別。
貝葉斯分類算法的實質(zhì)就是計算條件概率的公式。在事件 B 發(fā)生的條件下,事件 A 發(fā)生的概率為 P(A | B)來表示。
P(A | B)的概率為
。在日常應(yīng)用中,我們經(jīng)??梢灾苯拥贸?P(A | B),而 P(B | A)直接得到比較困難,通過貝葉斯定理就可以通過 P(A | B)獲得 P(B | A)。
而樸素貝葉斯分類的正式定義則如下:
樸素貝葉斯算法在執(zhí)行文本分類等工作是會有很好的效果,比如樸素貝葉斯算法常被使用于垃圾郵件的過濾分類中。
SVM算法支持向量機(Support Vector Machine,常簡稱為 SVM)是一種監(jiān)督式學(xué)習(xí)的方法,可廣泛地應(yīng)用于統(tǒng)計分類以及回歸分析。支持向量機屬于一般化線性分類器,它能夠同時最小化經(jīng)驗誤差與最大化幾何邊緣區(qū),因此支持向量機也被稱為最大邊緣區(qū)分類器。
同時支持向量機將向量映射到一個更高維的空間里,在這個空間里建立有一個最大間隔超平面。在分開數(shù)據(jù)的超平面的兩邊建有兩個互相平行的超平面,分隔超平面使兩個平行超平面的距離最大化。假定平行超平面間的距離或差距越大,分類器的總誤差越小。
SVM 算法雖然存在難以訓(xùn)練和難以解釋的問題,但是在非線性可分問題上的表現(xiàn)十分優(yōu)秀,在非線性可分問題中常選擇 SVM 算法。
基于 KNN 的算法K - 近鄰算法,簡稱 KNN(k-Nearest Neighbor),它同樣是一個比較簡單的分類、預(yù)測算法。對選取與待分類、待預(yù)測數(shù)據(jù)的最相似的 K 個訓(xùn)練數(shù)據(jù),通過對這 K 個數(shù)據(jù)的結(jié)果或者分類標(biāo)號取平均、取眾數(shù)等方法得到待分類、待預(yù)測數(shù)據(jù)的結(jié)果或者分類標(biāo)號。
K - 近鄰算法如上圖所示,有兩類不同的樣本數(shù)據(jù),分別用藍色的小正方形和紅色的小三角形表示,而圖正中間的那個綠色的圓所標(biāo)示的數(shù)據(jù)則是待分類的數(shù)據(jù)。在不知道中間那個綠色的數(shù)據(jù)是從屬于哪一類(藍色小正方形or紅色小三角形)的情況下,我們可以從它的臨近的樣本進行判斷。
如果 K=3,綠色圓點最近的 3 個鄰居是 2 個紅色小三角形和 1 個藍色小正方形,少數(shù)從屬于多數(shù),基于統(tǒng)計的方法,判定綠色的這個待分類點屬于紅色的三角形一類。
如果 K=5,綠色圓點的最近的 5 個鄰居是 2 個紅色三角形和 3 個藍色的正方形,還是少數(shù)從屬于多數(shù),基于統(tǒng)計的方法,判定綠色的這個待分類點屬于藍色的正方形一類。
從上文我們看到,當(dāng)無法判定當(dāng)前待分類點是從屬于已知分類中的哪一類時,可以依據(jù)統(tǒng)計學(xué)的理論看它所處的位置特征,衡量它周圍鄰居的權(quán)重,而把它歸為(或分配)到權(quán)重更大的那一類,這就是 K 近鄰算法的核心思想。