貝葉斯

這兩篇文章寫得超讚:
樸素貝葉斯:
http://www.cnblogs.com/leoo2sk/archive/2010/09/17/naive-bayesian-classifier.html
貝葉斯網絡:
http://www.cnblogs.com/leoo2sk/archive/2010/09/18/bayes-network.html

這篇文章寫得很全:
http://www.kuqin.com/shuoit/20141111/343155.html

好了,開始隨便寫點東西吧:

  • 貝葉斯,最根本的思想,莫不就是 先驗分佈+ 樣本信息 = 後驗分佈

    • 先驗,是沒有任何輸入的時候,最有可能的猜測

    • 然後我們有了若干樣本,知道這些樣本的信息

    • 最後,我們知道了,在這些樣本下,後驗分佈如何

  • “貝葉斯定理之所以有用,是因爲我們在生活中經常遇到這種情況:我們可以很容易直接得出P(A|B),P(B|A)則很難直接得出,但我們更關心P(B|A),貝葉斯定理就爲我們打通從P(A|B)獲得P(B|A)的道路。”

  • 樸素貝葉斯:

    • 所有條件都是相互獨立的

    • 要求的是 P(Yi|X)。而根據貝葉斯公式,需要計算 P(X|Yi) 和 P(Yi)。而根據條件獨立,X={w1,w2….},只要求得 P(w1|Yi),P(w2|Yi)… 就可以了

    • 注意的兩點,一是如果w是連續的,可以使用正態分佈的公式來算。二是如果某個類別沒有某個特徵,那實際上P(w|Y)就是0了,干擾會很大,所以默認給1的技術

  • 貝葉斯網絡

    • 樸素貝葉斯的問題在於,假設了各個因素是條件獨立的。不對。所以可以構建網絡型的結構。有專家進行關係的梳理

    • 一個例子網絡如下:

    • 這裏寫圖片描述
    • 則它的計算如下:
    • P(a,b,c) = P(c|a,b)P(b|a)P(a)
  • 注意區分幾種方法,一是概率,二是貝葉斯,三是加權。注意公式後的意義。以根據用戶的購買行爲判斷性別爲例說明。

    • 首先,假設數據張這個樣子:
    • 這裏寫圖片描述
    • 然後,可以計算得到各個w的值,即P(w|Yi)
    • 這裏寫圖片描述
    • 一、概率的方法:
      • 假設已知一個人買了潤脣膏,連衣裙和登山杖,問他是男還是女,則可以計算下:
        • P(男) = 0.25×0.33×0.68 = 0.0561
        • P(女) = 0.75×0.66×0.31 = 0.1534
      • 即:
        • P(男) =0.0561/ (0.0561 + 0.1534 ) = 26.7%
        • P(女) =0.1534/ (0.0561 + 0.1534 ) = 73.2%
      • 故是個女的
      • 這裏,是幾個連乘起來,公式後的意義就是:假設ta每次購買的時候,都是某一種性別的可能。多次購買,則這個概率連乘起來。
    • 二、貝葉斯的方法:
      • 依舊是理解公式的意義,已知買了c1,c2,c3,求解是某種性別的概率,即P(男|c1,c2,c3)。按貝葉斯公式,由假設各個類目條件獨立,推理得 P(男|c1,c2,c3) = P(c1,c2,c3|男)P(男) / P(c1,c2,c3) = p(c1|男)p(c2|男)p(c3|男)p(男) / P(c1,c2,c3)。而分母可以去除掉,因爲大家都一樣的。
    • 三、加權的方法:
      • 可以看到,上面是有區分男女分佈這種先驗的概率的P(男)。衍生而來的一種“加權”的方法,如下:
      • P(男) = (P(男|c1) * c1件數 + P(男|c2) * c2件數 + P(男|c3) * c3件數 ) / (c1件數 + c2件數 + c3件數)
      • 類似是購買權重,以及考慮買的件數的關係
    • 上述三個對比,其實發現都差不多…. 加權的可能要稍微好一點,約65%,反而是樸素貝葉斯最差….
    • 再引申出來一點,上面是隻考慮了購買,顯然是不夠的。而且會有男人的號被他女朋友用的情況,購買行爲就很混亂。發現簡單粗暴的,是根據姓名來,直觀來看,叫健什麼的男的多,叫麗什麼的女的多。這個能到80%幾啊!
  • 頻率 vs 概率

    • 偶爾遇到一個問題,樸素貝葉斯時,的確要計算P(男|c1,c2,c3)的值,那就要計算分母P(c1,c2,c3)了。
    • 當然,假設P(男|c1,c2,c3)的分子部分是A,可以再計算P(女|c1,c2,c3)的分子部分B,則P(男|c1,c2,c3) = A / (A+B),這是沒有問題的
    • 如果就是要算 P(c1,c2,c3),那麼又有兩種方法了。一是直接看(c1,c2,c3)這樣的組合,在整個樣本空間的佔比,二是根據條件獨立分別算P(c1)*P(c2)*P(c3)。直觀上來,他們是不一樣的,而且應該後一種方法更合理。其實沒有這種說法,要明白 頻率 和 概率的區別。我們都是在用頻率來近似替代概率。所以樣本量足夠充足的話,這兩種方法是一樣的。不過樣本量小的,還是後一種相對比較靠譜。
發佈了147 篇原創文章 · 獲贊 12 · 訪問量 25萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章