當我們在談論貝葉斯時。

當我們在談論貝葉斯時。

來自專欄博知樓511機器學習討論班

昨天晚上小雨姑娘的機器學習討論班第一次開課,發現效果比較不錯,不僅給大家提供了新的知識對自己也有了更多的反思,畢竟很多東西想講明白的時候才發現自己好像不太明白。

今後討論班沒有特殊情況的話都會在每周一晚八點青島大學博知樓511舉行,主要講的內容是機器學習的基礎內容,包括但不僅限於線性代數、概率論、微積分、機器學習簡單模型,本課程主要目的是為今後的研究打下良好的基礎,對於高端模型與演算法並不涉獵。

之所以稱之為討論班,是因為希望本課程以一種討論、問答、交流的方式進行,大家提出問題討論問題的答案與本質,一起學習進步。每次開課後第二天我也會整理一下上節課討論的內容以供大家複習。

很多位置可以坐,歡迎各位大佬們前來討論,歡迎打臉( ̄ε(# ̄)


1.聯合概率、條件概率、邊緣概率

昨晚講課的時候本以為在坐大一的同學已經學過概率論了,結果發現由於課程變更概率論和線性代數被分開了,導致他們現在還沒有概率論的基礎知識,所以本來決定下幾周的線性代數內容可能也要改成概率論基礎知識了。

什麼是聯合概率?(本文中引用塊不代表引用內容)

聯合概率是指在多元的概率分布中多個隨機變數分別滿足各自條件的概率,即指多個事件同時發生的概率。

什麼是條件概率?

條件概率是指在某個事件發生下另一個事件的概率。

什麼是邊緣概率?

邊緣概率是某個事件發生的概率,與其他的事件沒有關係。

這三個概率的關係大概可以用這個圖來表示(來源網上,侵刪)

三個概率的關係

條件概率換算公式:

P(A|B)=frac{P(A,B)}{P(B)}

公式代表了什麼意義?

A在B下發生的概率 * B發生的概率 = A和B同時發生的概率。

這個很容易理解啦,知道了B發生的概率,知道了A在B下發生的概率,可以推出A和B同時發生的概率。

2. 加法定理

什麼是加法定理?

加法定理指有限個互不相容事件的和的概率等於這些事件的概率的和。

公式:

P(A_{1}+A_{2}+...+A_{n})=P(A_{1})+P(A_{2})+...+P(A_{n})

公式代表了什麼意義?

這個也很容易理解了,比如擲骰子的時候發生1或者2的概率,就是1發生的概率加上2發生的概率,就是1/3,核心就在於其是互不相容(互斥)事件,每次的情況就只有一種,想求某個情況下發生某幾種事件的概率,只要把概率分別加起來就好啦

3. 完備事件集

什麼是完備事件集?

一群事件互斥的事件組成的集合,集合中所有互斥事件的並集是樣本空間。

這個地方真的好生硬啊……這節課感覺最最失敗的地方,就在於很多預設的條件沒有給鋪墊好,什麼樣本空間什麼互斥事件都沒講好,所以下節課要先把這些概念都講清楚再說。

如何理解完備事件集?

當場就有同學提出了離散數學中學的那個劃分的概念,我覺得這樣解釋挺合理的,一群互斥事件的並集是樣本空間,不是發生這個就是發生那個,也就可以認為把樣本空間劃分成了一個個小的空間。

4. 全概率公式

什麼是全概率公式?

對於一個完備事件集,某個事件發生的概率,等於這個事件在某個完備事件集各個事件下發生概率的和。

公式:

P(A) = P(A|B_{1})P(B_{1})+P(A|B_{2})P(B_{2})+...+P(A|B_{n})P(B_{n})

一個小例子?

某地盜竊風氣盛行,且偷竊者屢教不改。我們根據過往的案件記錄,推斷A今晚作案的概率是0.8,B今晚作案的概率是0.1,C今晚作案的概率是0.5。作案者只可能是A、B、C中的一人,且這三人關係不好,不會聯手作案。除此之外,還推斷出A的得手率是0.1,B的得手率是1.0,C的得手率是0.5。那麼,今晚村裡有東西被偷的概率是多少?

解答:設事件A為A盜竊,事件B為B盜竊,C為C盜竊,則:P(A)=0.8,P(B)=0.1,P(C)=0.5設事件Se為村裡東西被偷,則得手率:P(S|A)=0.1,P(S|B)=1.0,P(S|C)=0.5根據全概率公式:P(S)=P(A)P(S|A)+P(B)P(S|B)+P(C)P(S|C)=0.43

如何理解全概率公式?

我認為全概率公式給我們提供了一個可能,當我們去求解一個概率很困難時,我們可以把這個概率求解轉化為很多簡單情況下的概率求解,僅當所有簡單的情況都被考慮到的時候。例如我想知道滿月的概率,那我可以去考慮星期一滿月的概率,星期二滿月的概率……等等

貝葉斯定理

什麼是貝葉斯定理?

貝葉斯定理是概率論中的一個定理,它跟隨機變數的條件概率以及邊緣概率分布有關。在有些關於概率的解釋中,貝葉斯定理(貝葉斯公式)能夠告知我們如何利用新證據修改已有的看法

沒看懂,直接擺出貝葉斯公式:

P(A|B)=P(B|A)P(A)/P(B)

看一個例題?

假設某種艾滋病在人口中的得病率為0.03,由於技術落後等等原因,使得病者有時也未被檢出陽性反應(假陰性),不得病者也可能會被檢出陽性反應(假陽性)。有如下數據:

P(陽性|有病)=0.99,

P(陰性|有病)=0.01,

P(陽性|沒病)=0.05,

P(陰性|沒病)=0.95

問一個人被檢測出陽性,他得病的概率是多少?

解答:根據貝葉斯公式,P(有病|陽性)=P(有病)P(陽性|有病)/P(陽性)=P(有病)P(陽性|有病)/(P(有病)P(陽性|有病)+P(沒病)P(陽性|沒病)) #本步根據全概率公式=0.03×0.990.03×0.99+0.97×0.05=0.38

首先有個很疑惑的問題,為什麼有病的查出來的概率很高,沒病的查錯了的概率很低,感覺要是被驗出來是陽性基本就穩了,但為什麼被檢測出陽性來,實際上得病率只有1/3呢?

這是因為本身得病就是一個罕見的事情啊!得病率比誤差率都要高!從人群中挑出來一個陽性的可能性為P(陽性)=P(陽性|有病)P(有病)+P(陽性|沒病)P(沒病)=0.0782,但是從人群中挑出來一個有病的概率只有0.03啊!所以大家查出來陽性也不要慌……

那麼貝葉斯理論有什麼意義呢?

貝葉斯理論給我們提供了一種「回推」的可能,通過一個事件發生後(原因)另一個事件發生的(結果)的概率,去推導已經發生的事情(結果)由某個事情導致(原因)的概率。

例如我擼了一隻貓,貓變得的很開心的概率可能很容易估算,但是貓變得很開心是由我擼他導致的概率卻很難以考慮,貝葉斯理論給了我們計算的可能性。

而在機器學習中很多情況下我們容易得到P(特徵|標籤)的概率,但是我們想要的P(標籤|特徵)的概率卻很難計算。

另一種看待貝葉斯的視角?

另一種觀點就是從先驗概率和後驗概率上出發,這裡給出定義:

先驗概率:就是邊緣概率,該事件不考慮其他因素計算的概率

後驗概率:某個時間發生後,該事件的概率

舉個例子,我們知道貓今天很開心的概率是50%,那麼又知道我今天擼了這隻貓,那麼現在它很開心的概率是多少?有常識的人知道現在貓的開心概率一定大於50%了。

在這裡貓被我擼後很開心的概率就是後驗概率,貓很開心就是先驗概率,而貝葉斯公式就代表了一種通過先驗概率去求得後驗概率的方法, 在這裡乘號右邊項即為我們對於先驗概率的調整。

P(A|B)=P(A)*frac{P(B|A)}{P(B)}

樸素貝葉斯分類模型

在這裡我們通過一個小例子說明樸素貝葉斯演算法。

《非誠勿擾》是一個很受歡迎的婚戀類節目,每次都會有男嘉賓上台,在場24位女嘉賓給他們在性格,顏值,身高,事業上進行打分判斷,最終比較優秀的男嘉賓會牽手成功。我們這裡取得了往期節目中很多男嘉賓的上台情況數據,如何構建一個模型判斷男嘉賓是否牽手成功?(圖片來源網路,侵刪)

解答:這裡我們把判斷男嘉賓是否牽手成功的問題轉化為求解概率問題令男嘉賓牽手成功為S,男嘉賓的條件為A,即轉化為求P(S|A)根據貝葉斯定理可以轉換為P(S|A) =P(S)*P(A|S)/P(A)=P(S)*P(A|S)/(P(A1)*P(A2)*P(A3)*P(A4)) #我們假定帥、身高等變數相互獨立這裡由於P(A1)P(A2)....在所有男嘉賓計算的時候都是一樣的,我們可以刪除=P(S)*P(A|S)=P(S)*(P(A|S1)P(S1)+P(A|S2)P(S2)) #全概率公式這裡由於我們假定獨立,那麼P(A|S1)也可以換成P(A1|S1)*P(A2|S1)....這樣我們只需要求出樣本中對應牽手成功下P(A1)P(A2)P(A3)概率和不牽手成功下的概率,還有牽手成功與不成功的概率,然後拿到新的男嘉賓時,我們根據男嘉賓的條件就能判斷是否成功啦!

但是有很多的問題還要慎重考慮一下。

首先為什麼要把P(條件)分成P(帥)*P(高)*P(有錢)去一個個統計它們,而不是去統計P(帥+高+有錢)呢?

我認為應該是提高了模型的魯棒性,如果去直接尋找P(帥+高+有錢+不上進)在牽手成功的樣本中的概率和P(帥+高+有錢+不上進)在牽手不成功中的概率,牽手=成功的樣本空間內符合條件的就一條,那麼計算得到其牽手成功的概率為100%,但是這顯然是不合理的,我們認為P(帥+高+有錢+上進)的人的概率應該要大於P(帥+高+有錢+不上進)

為什麼不直接統計P(S|A)而是通過貝葉斯方法進行計算呢?

問題在於計算P(S|A)的話A是拆不開的,這樣面臨的還是上面那個問題,P(帥+高+有錢+不上進)的牽手成功率為100%。

能不能直接通過計算牽手成功率,當牽手成功率大於50%認為可以牽手成功?

可以。P(S1|A)+P(S2|A) = 1,因為S1和S2互斥。

祝大家都可以牽手成功!


推薦閱讀:

格智教育:人工智慧技術領域
【讀論文】機器閱讀的最新進展與爭議
Kaggle入門項目之泰坦尼克之災獲救預測
利用Python,四步掌握機器學習
擬牛頓法之DFP演算法剖析

TAG:機器學習 | 概率論 | 貝葉斯理論 |