統計學習筆記六----樸素貝葉斯
前言
樸素貝葉斯(naive Bayes)算法是基于貝葉斯定理和特征條件獨立假設的分類方法,它是一種生成模型!
對于給定的訓練數據集,首先基于特征條件獨立假設學習輸入/輸出的聯合概率分布;然后基于此模型,對給定的輸入x,利用貝葉斯定理求出后驗概率最大的輸出y。
樸素貝葉斯算法實現簡單,學習與預測的效率都很高,是一種常用的方法。
條件獨立性的假設
樸素貝葉斯法對條件概率分布作了條件獨立性的假設:假設對于樣本用于分類的特征,在類確定的條件下都是條件獨立的(特征是條件獨立的)。這是一個較強的假設,樸素貝葉斯法也由此得名,(樸素:條件獨立性假設)。這一假設使得樸素貝葉斯算法變得簡單,但是有的時候會犧牲一定的分類準確率。
具體地,條件獨立性假設是:
假設每一個樣本X的特征為,那么在這里的條件獨立性假設是指,
之間相互獨立互不影響,即:
如果沒有條件獨立性這條假設的存在,則會是:
注意,在上面公式的推導過程中我們用到了以下公式:
但是在這里,我們假設了特征條件獨立性,所以我們可以的得到公式(4.3)。
后驗概率
條件概率:
Bayes解釋:
P(A):A的先驗概率,不在任何條件下(沒有任何先驗知識下),A事件的概率
P(A|B):A的后驗概率,在已知B的條件下(有了B的先驗知識),A事件的概率
P(B|A):B的后驗概率
P(B):B的先驗概率,在此也常被稱為標準化常量。
實際上貝葉斯公式就是在以上條件概率的基礎上推導出來的。我們用Bayes來描述上述公式:
后驗概率=(相似度*先驗概率)/標準化常量
P(B|A)在此稱為可能性函數,目的是使得預估計概率更接近于真實概率。
我們可以簡化為:
后驗概率=先驗概率*調整因子
樸素貝葉斯方法分類的時候,對給定的輸入x,通過學習到的模型計算后驗概率分布,將后驗概率最大的類作為x的類輸出。
后驗概率計算根據貝葉斯定理進行:
后驗概率最大化的含義
樸素貝葉斯方法將實例分到后驗概率最大的類中,這等價于期望風險最小化,我們可以證明一下。
假設選擇0-1損失函數:
在一章的時候,我們已經介紹過損失函數的期望風險為:
這是理論上模型f(X)關于聯合分布P(X,Y)的平均意義下的損失,稱為風險函數或者期望損失。
根據P(X,Y)=P(Y|X)P(X),我們可以得到以下公式:
為了使得期望風險最小化,我們只需對X=x逐個極小化,由此得到:
這樣一來,根據期望風險最小化準則就得打了后驗概率最大化準則:
實際上這就是樸素貝葉斯所采用的判別類的原理。
貝葉斯分類算法
極大似然估計
在此有點像樣本估計總體的感覺,前提條件是樣本容量足夠大,當樣本容量不夠大的時候,就會有誤差存在。
貝葉斯估計
用極大似然估計可能會出現所要估計的概率值為0的情況,又因為我們的條件獨立性假設,這時會影響到后驗概率的計算結果,使分類產生偏差。解決這一問題的方法是采用貝葉斯估計。具體地,條件概率的貝葉斯估計是:
拓展
計算各個劃分樣本的條件概率P(xi|Y)是樸素貝葉斯分類的關鍵性步驟,當特征屬性為離散值的時候,只要很方便的統計訓練樣本中各個劃分在每個類別中出現的頻率即可用來估計P(xi|Y),然后計算P(x1|Y)P(x2|Y)…P(xn|Y)就可以得到P(X|Y)。問題是當特征屬性是連續值的時候我們該怎么辦?
當特征屬性為連續值的時候,通常假定其值服從高斯分布(也稱為正態分布)。即:
則P(xi|Y)為:
因此只要計算出訓練樣本中各個類別中此特征項劃分的各均值和標準差,帶入上述公式即可得到需要的估計值。
《完》
所謂的不平凡就是平凡的N次冪。
-------By Ada
智能推薦
統計學習方法第四章:樸素貝葉斯法(naive Bayes),貝葉斯估計及python實現
統計學習方法第二章:感知機(perceptron)算法及python實現 統計學習方法第三章:k近鄰法(k-NN),kd樹及python實現 統計學習方法第四章:樸素貝葉斯法(naive Bayes),貝葉斯估計及python實現 統計學習方法第五章:決策樹(decision tree),CART算法,剪枝及python實現 統計學習方法第五章:決策樹(decision tree),ID3算法,C...
樸素貝葉斯(naive Bayes)的python實現——基于《統計學習方法》例題的編程求解
樸素貝葉斯方法是基于貝葉斯定理與特征條件獨立假設的分類方法。認為樣本的特征X與標簽y服從聯合概率分布P(X, y),所有的樣本都是基于這個概率分布產生的。由于條件概率P(X=x|Y=y)的參數具有指數數量級,因此進行估算切實際。貝葉斯法對條件概率分布做了條件獨立性假設,從而減少了模型的復雜性,增加了模型的泛化能力,減少了過擬合的風險。 #后驗概率最大化 可以證明,期望風險最小化準則可以得到后驗概率...
《統計學習方法》代碼全解析——第四部分樸素貝葉斯
1.樸素貝葉斯法是典型的生成學習方法。生成方法由訓練數據學習聯合概率分布 (,) P(X,Y) ,然后求得后驗概率分布 (|) P(Y|X) 。具體來說,利用訓練數據學習 (|) P(X|Y) 和 () P(Y) 的估計,得到聯合概率分布: (,)=()(|) 概率估計方法可以是極大似然估計或貝葉斯估計。 2.樸素貝葉斯法的基本假設是條件獨立性 這是一個較強的假...
(每天一點點)統計學習方法——樸素貝葉斯法
1、概率論基礎 貝葉斯原理就是求解后驗概率。如果已知p(x|c)要求p(c|x),我們可以使用貝葉斯公式進行求解。 貝葉斯公式: ps:圖片出處 樸素貝葉斯分類器中的樸素指的是特征樣本之間相互獨立。 2、舉個栗子 已在線社區留言板為例子,我們要屏蔽侮辱性言論。對此問題我們建立兩個類別:侮辱性和非侮辱性。我們先定一個詞典,比如[dog,love,cute…],然后把一條留言分成詞向量[...
統計學習方法第四章(樸素貝葉斯)及Python實現及sklearn實現
1原理 樸素貝葉斯 貝葉斯:根據貝葉斯定理p(y|x) = p(y)p(x|y)/p(x).選擇p(y|x) 最大的類別作為x的類別。可知樸素貝葉斯是監督學習的生成模型(由聯合概率分布得到概率分布)。選擇p(y|x) 最大的類別時,分母相同,所以簡化為比較 p(y)p(x|y)的大小。 樸素: 計算p(x|y)的概率,假設x是n維向量,每維向量有sn個取值可能,則就要計算類別*(sn的n次方)次。...
猜你喜歡
freemarker + ItextRender 根據模板生成PDF文件
1. 制作模板 2. 獲取模板,并將所獲取的數據加載生成html文件 2. 生成PDF文件 其中由兩個地方需要注意,都是關于獲取文件路徑的問題,由于項目部署的時候是打包成jar包形式,所以在開發過程中時直接安照傳統的獲取方法沒有一點文件,但是當打包后部署,總是出錯。于是參考網上文章,先將文件讀出來到項目的臨時目錄下,然后再按正常方式加載該臨時文件; 還有一個問題至今沒有解決,就是關于生成PDF文件...
電腦空間不夠了?教你一個小秒招快速清理 Docker 占用的磁盤空間!
Docker 很占用空間,每當我們運行容器、拉取鏡像、部署應用、構建自己的鏡像時,我們的磁盤空間會被大量占用。 如果你也被這個問題所困擾,咱們就一起看一下 Docker 是如何使用磁盤空間的,以及如何回收。 docker 占用的空間可以通過下面的命令查看: TYPE 列出了docker 使用磁盤的 4 種類型: Images:所有鏡像占用的空間,包括拉取下來的鏡像,和本地構建的。 Con...
requests實現全自動PPT模板
http://www.1ppt.com/moban/ 可以免費的下載PPT模板,當然如果要人工一個個下,還是挺麻煩的,我們可以利用requests輕松下載 訪問這個主頁,我們可以看到下面的樣式 點每一個PPT模板的圖片,我們可以進入到詳細的信息頁面,翻到下面,我們可以看到對應的下載地址 點擊這個下載的按鈕,我們便可以下載對應的PPT壓縮包 那我們就開始做吧 首先,查看網頁的源代碼,我們可以看到每一...