本筆記為參加阿里云“天池龍珠計(jì)劃 機(jī)器學(xué)習(xí)訓(xùn)練營”所做的學(xué)習(xí)記錄,代碼及知識內(nèi)容均來源于訓(xùn)練營,本人稍作擴(kuò)充盾致。
具體活動(dòng)內(nèi)容請移步阿里云天池龍珠計(jì)劃; 同時(shí)感謝公眾號“機(jī)器學(xué)習(xí)煉丹術(shù)”的介紹主经、推廣和組織。
1. 實(shí)驗(yàn)室介紹
1.1 實(shí)驗(yàn)環(huán)境
1\. python3.7
2\. numpy >= '1.16.4'
3\. sklearn >= '0.23.1'
1.2 樸素貝葉斯的介紹
樸素貝葉斯算法(Naive Bayes, NB)
是應(yīng)用最為廣泛的分類算法之一庭惜。它是基于貝葉斯定義和特征條件獨(dú)立假設(shè)的分類器方法罩驻。由于樸素貝葉斯法基于貝葉斯公式計(jì)算得到,有著堅(jiān)實(shí)的數(shù)學(xué)基礎(chǔ)护赊,以及穩(wěn)定的分類效率惠遏。NB模型所需估計(jì)的參數(shù)很少,對缺失數(shù)據(jù)不太敏感骏啰,算法也比較簡單节吮。當(dāng)前的垃圾郵件分類都是基于樸素貝葉斯分類器識別的。
什么是條件概率
判耕,我們從一個(gè)摸球的例子來理解透绩。我們有兩個(gè)桶:灰色桶和綠色桶,一共有7個(gè)小球壁熄,4個(gè)藍(lán)色3個(gè)紫色帚豪,分布如下圖:
從這7個(gè)球中,隨機(jī)選擇1個(gè)球是紫色的概率p是多少草丧?選擇過程如下:
- 先選擇桶
-
再從選擇的桶中選擇一個(gè)球
NBFig2.jpg
上述我們選擇小球的過程就是條件概率的過程狸臣,在選擇桶的顏色的情況下是紫色的概率,另一種計(jì)算條件概率的方法是貝葉斯準(zhǔn)則昌执。
貝葉斯公式是英國數(shù)學(xué)家提出的一個(gè)數(shù)據(jù)公式:
p(A,B):表示事件A和事件B同時(shí)發(fā)生的概率烛亦。
p(B):表示事件B發(fā)生的概率;叫做先驗(yàn)概率懂拾;
p(A):表示事件A發(fā)生的概率煤禽。
p(A|B):表示當(dāng)事件B發(fā)生的條件下,事件A發(fā)生的概率委粉;叫做后驗(yàn)概率呜师。
p(B|A):表示當(dāng)事件A發(fā)生的條件下娶桦,事件B發(fā)生的概率贾节。
我們用一句話理解貝葉斯:世間很多事都存在某種聯(lián)系,假設(shè)事件A和事件B衷畦。注:原文如此
人們常常使用已經(jīng)發(fā)生的某個(gè)事件去推斷我們想要知道的之間的概率栗涂。 例如,醫(yī)生在確診的時(shí)候祈争,會根據(jù)病人的舌苔斤程、心跳等來判斷病人得了什么病。對病人來說,只會關(guān)注得了什么病忿墅,醫(yī)生會通過已經(jīng)發(fā)生的事件來確診具體的病情扁藕。這里就用到了貝葉斯思想,A是已經(jīng)發(fā)生的病人癥狀疚脐,在A發(fā)生的條件下是B_i的概率亿柑。
1.3 樸素貝葉斯的應(yīng)用
樸素貝葉斯算法假設(shè)所有特征的出現(xiàn)相互獨(dú)立互不影響,每一特征同等重要棍弄,又因?yàn)槠浜唵瓮。乙话憔哂泻芎玫目山忉屝浴O鄬τ谄渌脑O(shè)計(jì)的更復(fù)雜的分類算法呼畸,樸素貝葉斯分類算法是學(xué)習(xí)效率和分類效果較好的分類器之一痕支。
樸素貝葉斯算法一般應(yīng)用在文本分類,垃圾郵件的分類蛮原,信用評估卧须,釣魚網(wǎng)站檢測等。
2. 實(shí)驗(yàn)室手冊
2.1 學(xué)習(xí)目標(biāo)
- 掌握貝葉斯公式
- 結(jié)合兩個(gè)實(shí)例了解樸素貝葉斯的參數(shù)估計(jì)
- 掌握貝葉斯估計(jì)
2.2 代碼流程
-
Part 1. 鶯尾花數(shù)據(jù)集--貝葉斯分類
- Step1: 庫函數(shù)導(dǎo)入
- Step2: 數(shù)據(jù)導(dǎo)入&分析
- Step3: 模型訓(xùn)練
- Step4: 模型預(yù)測
- Step5: 原理簡析
-
Part 2. 模擬離散數(shù)據(jù)集--貝葉斯分類
- Step1: 庫函數(shù)導(dǎo)入
- Step2: 數(shù)據(jù)導(dǎo)入&分析
- Step3: 模型訓(xùn)練&可視化
- Step4: 原理簡析
參考資料:
B站的這個(gè)視頻有助于理解樸素貝葉斯的內(nèi)涵和應(yīng)用場景:使用貝葉斯公式的正確姿勢(up主: 小淵xyz)