1. 程式人生 > >機器學習與深度學習系列連載: 第一部分 機器學習(五) 生成概率模型(Generative Model)

機器學習與深度學習系列連載: 第一部分 機器學習(五) 生成概率模型(Generative Model)

生成概率模型(Generative Model)

1.概率分佈

我們還是從分類問題說起:
當我們把問題問題看做是一個迴歸問題, 分類是class 1 的時候結果是1
分類為class 2的時候結果是-1;
測試的時候,結果接近1的是class1 ,結果接近-1的是class2
這裡寫圖片描述
問題解決了! 但是這只是看起來很美,但是如果結果遠遠大於1的時候,他的分類應該是class1還是class2,我們為了降低整體誤差,需要調整已經找到的分類函式,這樣會實際導致結果的不準確
這裡寫圖片描述
所以這是另一個角度,分類不能用迴歸的思路去做的原因。

分類問題機器學習三板斧

  • 1.函式(Model)

以二分類為例,f(x)
這裡寫圖片描述

  • 2.損失函式(Loss)

這裡寫圖片描述

  • 3.找到最好的函式(SVM,perceptorn)(以後會講)

我們開始我們的生成概率模型,首先舉一個例子,有兩個盒子,有藍球和綠球,
那麼問題來了,如果閉著眼睛拿出一個藍色的球,並且它盒子1的概率是多少。
p(B1|x), 當p(B1|x)0.5 我們就認為它屬於盒子1.
這裡寫圖片描述
在這裡盒子1的和盒子2 的先驗概率已知。其他概率很好計算。
那麼藍球來自盒子1的概率是:
這裡寫圖片描述
推而廣之:如果我們看成分類,兩個類別
這裡寫圖片描述
那麼給一個x,他的分類的概率是:
這裡寫圖片描述
整體

p(x)的概率是:
這裡寫圖片描述

生成概率模型其實是先假設資料的概率分佈(正太、伯努利、泊松),然後用概率公式去計算x所屬於的型別p(C1|x)

一般的,我們假設x的分佈為高斯分佈(最為常見的概率分佈模型),為什麼會往往選擇高斯分佈呢,概率論中的中心極限定理告訴我們答案。
一維的概率分佈一般是鐘形曲線,大家都比較瞭解,那麼高緯的分佈是:
這裡寫圖片描述
均值為μ,協方差為
這裡寫圖片描述
上面三幅圖表示均值都為0,但是協方差分別為為I , 0.6I,2I

更多的例子
這裡寫圖片描述

這裡寫圖片描述
我們假設資料點服從高緯高斯分佈,那麼,我們需要找到這個高斯分佈的函式,也就是為μ,和協方差
這個函式滿足,它的所有資料點的生成概率是最大的,假設有79個數據點,他的高斯函式的求法:
這裡寫圖片描述

2.解決問題

讓我們開始我們的分類問題:
我們要進行二分類,分別是水系的怪物精靈和一般的怪物精靈,我們計算得到他們的高斯分佈分別為
這裡寫圖片描述
那麼我們就可以用本篇第一部分的公式計算x的分類了,p(C1)p(C2) 分別在資料中就可以簡單計算,p(x|C1)p(x|C2) 由它們概率密度函式推導求解得到(積分)
這裡寫圖片描述
這樣就把分類問題變成了一個概率計算問題了。
但是結果不理想,只有54%的正確率。
這裡寫圖片描述
我們分析一下原因,是由於兩類額協方差導致引數過多,那我們讓協方差共享,減少協方差的種類。
這裡寫圖片描述
我們得到了73%的正確率
這裡寫圖片描述