貝葉斯分類器 Bayesian decision, BD

貝葉斯決策論是概率框架下實施決策的基本方法。

給定兩個事件x和y,其各自發生的概率分別爲P(X)P(y)。它們聯合發生的概率(表示爲p(x,y),以及它們相互發生的條件概率(如p(y|x)就表示給定事件x發生的情況下,事件y發生的概率)有如下關係:

                                                           p(y|x)p(x)=p(x,y)=p(x|y)p(y)

應用此式,可以得到貝葉斯法則並進而得到關於p(y|x)的概率表示

                                                                p(y|x)=\frac{p(x|y)p(y)}{p(x)}

貝葉斯實際例子:垃圾郵件過濾器

A、單個單次判斷垃圾郵件(貝葉斯定理)

郵件中單詞用“word”表示,垃圾郵件用“spam”表示,應用貝葉斯公式可以計算出,如果一個單次出現,該郵件可能是垃圾郵件的概率:

                                                                   p(spam|word)=\frac{p(word|spam)p(spam)}{p(word))}

如果有足夠多的已經做好標籤的訓練數據,右邊各項都可以計算出來。如果用“ham”表示正常郵件,那麼只需計算:p(word|spam),p(word|ham),p(ham)以及p(spam)=1-p(spam)。等式右邊分母部分計算:

p(word)=p(word|spam)*p(spam)+p(word|ham)*p(ham)

步驟:

  1. 計算所有郵件中垃圾郵件的比例p(spam)
  2. 在所有垃圾郵件中計算某一個特定單詞出現的概率p(word|spam)
  3. 在所有正常郵件中計算某一個特定單詞出現的概率p(word|ham)

假設p(spam|meeting)=\frac{p(meeting|spam)*p(spam)}{p(meeting)}=\frac{0.0106*0.29}{0.0106*0.29+0.0416*0.71}     =9%

          money:80%

           enron:0%

            vigra:100%

B、利用所有單詞信息,搭建樸素貝葉斯( 樸素貝葉斯是基於貝葉斯定理與特徵條件假設的分類方法)

每一份郵件都可以表示爲一個二元向量,這個向量的第 j 個元素是0 還是1 取決於第 j 個單詞是否出現在這封郵件中(出現爲1,否則爲0)。向量的長度取決於總共要考慮的單詞個數。如果要考慮所有在郵件中出現過的單詞,那麼這個向量必然會很長。

輸出目標:

給定一份郵件的標籤後(即知道它是否爲垃圾郵件後),這封郵件所代表的向量中單詞一起出現的概率。

一份郵件的單詞向量是多維的,p(words| class)=p(f_{0},f_{1},\cdots ,f_{n}|c),這裏假設爲2維的,有

                                              p(f_{0},f_{1}|c)=p(f_{1}|c,f_{0})p(f_{0}|c)

假設單詞之間是獨立的

                                               p(f_{0},f_{1}|c)=p(f_{1}|c)p(f_{0}|c)

                                                  p(f_{0},f_{1},\cdots ,f_{n}|c)=\prod_{i}^{n}p(f_{i}|c)

對每個類別計算一個概率p(c_{i}),然後再計算所有特徵的條件概率p(f_{j}|c_{i}),那麼分類依據貝葉斯找一個最可能的類別:

                                               p(class_{i}| f_{0},f_{1},\cdots ,f_{n})=\frac{p(class_{i})\prod_{j}^{n}p(f_{j}|c_{j})}{p(f_{0},f_{1},\cdots ,f_{n})}

樸素貝葉斯模型的核心概念是獨立性

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章