[監督式]分類

2018-11-07  本文已影响0人  RJ阿杰

從上篇GradientDescent延伸,這次要處理的是分類問題,從數據特徵中推斷是屬於哪一類別的標籤,例如:從身高、體重、肝指數等特徵判斷是幾年級的學生,或從遊戲HP、MP、ATK、DP判斷人物的等級等等都是屬於分類問題。

線性回歸做分類問題

假設我們要預測寶可夢(神奇寶貝)的屬性(一般系或水系),我們把一般系當作1,水系當作-1去做迴歸分析的話,我們會得到一條如下圖的直線,使用線性回歸做分類問題會產生的問題是假如數據不是對稱的分佈就會像右圖那樣偏向某一邊,正常的情況分類問題我們應該是希望得到預測錯誤最少的直線(解),那麼後續我們從GradientDescent的基礎來改善這個問題。

分類問題的機率

假設我們有2個類別,類別1(C_1)跟類別2(C_2),我們知道從類別中選中C_1的機率以及從類別中選中C_2的機率,還有從C_1中選中x的機率,從C_2中選中x的機率,就能知道我選中了一個x是從C_1選出來的機率以及x是從C_2選出來的機率。
例如:我資料有79隻水系,61隻一般系,那麼P(C_1)=79/(79+61)=0.56

那麼P(x|C_1)呢?
x根本不在原本的資料中阿,我們怎麼知道C_1抽中x的機率?

多維高斯分怖

預備知識:聯合機率分佈概念筆記
x根本不在原本的資料中阿,我們怎麼知道C_1抽中x的機率?
那麼我們就需要去預估資料的分佈了,下圖是水系神奇寶貝對應他的SP防禦力跟防禦力,每個點代表一隻神奇寶貝,我們假設資料的分怖是呈多維高斯機率分佈(可能出現機率由中心往外降低),\mu=平均數,\Sigma=協方差矩陣,D=維度,高斯分佈由這3個參數決定,我們要找出符合我們資料的高斯分佈所對應的(\mu,\Sigma,D)D是維度由特徵數決定,這邊特徵有2維(SP防禦跟防禦),D=2 。

最大似然估計法(Maximum Likelihood)

最大似然估計法
我們要計算的是同時觀察到所有這些數據的概率,也就是所有觀測數據點的聯合概率分佈。
因此,我們需要計算一些可能很難算出來的條件概率。我們將在這裡做出第一個假設,假設每個數據點都是獨立於其他數據點生成的。
如果事件(即生成數據的過程)是獨立的,那麼觀察所有數據的總概率就是單獨觀察到每個數據點的概率的乘積(即邊緣概率的乘積)。

  1. 使用2維高斯分佈抽樣100個點,並作圖。
  2. 計算這100個樣本特徵(特徵:防禦,SP防禦)的聯合機率分佈,求(\mu,\Sigma)最大值。
  3. 繪圖比較

求分類問題的機率

經過最大似然估計法後,那麼P(x|C_1)的問題就解決了,我們有了P(x|C_1)後,我們可以代回P(C_1|x)式子求某個特徵值的機率了。
因此我們假設P(C_1|x)機率大於0.5(50%)就判斷是水系(P(C_1|x)+P(C_2|x)=1),但結果只有47%的準確率,但在7個特徵的情況下,準確率也只有54%,表示可能有underfitting或overfitting。

  1. high Bias即所謂的Underfitting,因為參數過少連Training set都會有頗大的預測誤差。
  2. low Bias high Variance即所謂的Overfitting,因為參數過多導致過度符合Training set的資料特性,使得其無法預測較為普遍的資料集。

解決overfitting

我們將\Sigma_1,\Sigma_2共用同一個\Sigma,使機率函數複雜度降低,減少overfitting。
\Sigma=\frac{類別1樣本數}{樣本總數}\Sigma^1+\frac{類別2樣本數}{樣本總數}\Sigma^2

能否用其他的分佈

是可以的,其他的分佈概念相同,以同樣的概念去推導公式。

後驗概率

參考李宏毅老師ML課程

上一篇 下一篇

猜你喜欢

热点阅读