樸素貝葉斯演算法:先驗機率、似然性和邊緣似然性
簡介
基於貝葉斯定理,樸素貝葉斯演算法是一種機率分類技術。它基於這樣的假設:一個特徵在某個類別中的存在與其他特徵的存在無關。該技術的應用包括文字分類、情感分析、垃圾郵件過濾和影像識別等。作為機率論中的一個關鍵概念,貝葉斯定理提供了一種計算事件發生機率的方法,前提是已知相關事件的機率。條件機率,即在另一個事件發生的情況下某個事件發生的機率,構成了其理論基礎。
先驗機率、似然性和邊緣似然性
根據貝葉斯定理,給定證據(E)時假設(H)的機率等於給定假設時證據的機率乘以假設本身的機率。其數學表示式如下:
P(H|E) = P(E|H) * P(H) / P(E)
其中,P(E) 是邊緣似然性,P(H|E) 是給定證據時假設的後驗機率,P(E|H) 是給定假設時證據的似然性。
關於特徵的獨立性,樸素貝葉斯方法涉及一些假設。假設給定類別時,特徵彼此之間是獨立的。儘管在實踐中這個假設並不總是準確的,但該方法仍然可以產生有意義的結果。
先驗機率
在樸素貝葉斯方法中,先驗機率是在觀察到任何特徵之前每個類別的機率。例如,在具有類別 A 和 B 的二元分類問題中,類別 A 的先驗機率是在觀察到任何特徵之前,一個專案屬於類別 A 的機率。類別 B 的先驗機率是在觀察到任何特徵之前,一個專案屬於類別 B 的機率。
通常可以透過計算每個類別中專案的百分比來從訓練資料中估計先驗機率。例如,如果訓練資料中有 100 個專案,其中 60 個屬於類別 A,40 個屬於類別 B,那麼類別 A 和類別 B 的先驗機率分別為 0.6 和 0.4。
似然性
在樸素貝葉斯方法中,似然性是給定類別時觀察到每個特徵的機率。例如,如果有兩個特徵 X1 和 X2,以及兩個類別 A 和 B,那麼給定類別 A 時特徵 X1 的似然性就是屬於類別 A 的專案中觀察到特徵 X1 的機率。給定類別 B 時特徵 X2 的似然性就是屬於類別 B 的專案中觀察到特徵 X2 的機率。
通常透過計算每個類別中具有每個特徵的專案的數量來使用訓練資料計算似然性。例如,如果類別 A 中有 60 個專案,其中 30 個具有特徵 X1,那麼給定類別 A 時特徵 X1 存在的機率為 0.5。
邊緣似然性
在樸素貝葉斯方法中,邊緣似然性是觀察到證據的機率。在樸素貝葉斯方法中,證據被認為是對於一個專案觀察到的特徵集。例如,如果有兩個特徵 X1 和 X2,並且一個專案具有 X1 但不具有 X2,那麼證據將是“X1,非 X2”。
通常透過將每個類別的先驗機率和似然性加起來來計算邊緣似然性。例如,如果有兩個類別 A 和 B,並且先驗機率分別為 0.6 和 0.4,並且對於類別 A 和 B,特徵 X1 和 X2 的似然性分別為 0.5 和 0.2 以及 0.3 和 0.8,那麼觀察到 X1 而非 X2 的邊緣似然性將是:
P({X1, not X2}) = P(X1|A)P(not X2|A)P(A) + P(X1|B)P(not X2|B)P(B)
= 0.50.70.6 + 0.20.20.4
= 0.19
後驗機率
在樸素貝葉斯演算法中,後驗機率是給定證據時每個類別的機率。它是透過結合使用先驗機率、似然性和邊緣似然性以及貝葉斯定理來確定的。選擇具有最高後驗機率的類別作為專案的預測類別。
例如,如果有兩個類別 A 和 B,證據是 X1,非 X2,並且先驗機率和似然性如上所述,則後驗機率可能如下所示。
P(A|{X1, not X2}) = P({X1, not X2}|A)P(A) / P({X1, not X2}) = 0.5 * 0.7 * 0.6 / 0.19 = 0.92
P(B|{X1, not X2}) = P({X1, not X2}|B)P(B) / P({X1, not X2}) = 0.2 * 0.2 * 0.4 / 0.19 = 0.42
因此,專案的預測類別將是 A。
結論
總之,樸素貝葉斯方法是一種機率分類系統,它使用貝葉斯定理根據可用資料確定每個類別的後驗機率。似然性是給定類別時觀察到每個特徵的機率,先驗機率是在觀察到任何特徵之前每個類別的機率,邊緣似然性是觀察到證據的機率。樸素貝葉斯方法基於這樣一個假設:給定類別時,特徵彼此之間是獨立的。儘管存在這個假設,但樸素貝葉斯方法被廣泛使用,並且在現實世界場景中通常是有效的。
資料結構
網路
關係型資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP