在機器學習中,有着許多模型,比如傳統的線性迴歸模型,logistic迴歸,soft max迴歸啊之類的很多,那麼從傳統的線性迴歸模型中我們觀察到,這並不能很好的解決因變量是離散的或者是分類的這樣的情況,經過國內外許多數學界的大牛們長期的摸索與驗證,廣義線性模型的理論被逐步建立起來,用以解決以往傳統的線性迴歸模型的缺陷。
在引入廣義線性模型之前,有必要先引入指數分佈族(exponential family)這一概念
指數分佈族的定義很簡單,只要是形式上如同下圖這樣的即是指數分佈族
其密度函數如果可以轉化成這種形式的話,那麼就爲指數分佈族
η是一個自然的參數,T(y)是充分統計量,一般來說T(y)=y,a(y)爲累計量母函數。
正態分佈,伯努利分佈,泊松分佈,指數分佈等均屬於指數分佈族,我們可以求出相應的η的表達式。
根據三個假設來建立廣義線性模型
- y的概率分佈服從指數分佈
- 計算T(y)的期望
- η是x的線性表示
那麼到這裏你可能還是不知道廣義線性模型的作用,廣義線性模型的主要作用在於第二個假設中,計算T(y)的期望,一般情況下就是計算y的期望,那麼和我們之前學習的利用一個h(x)去估計y是不是有點類似呢,沒錯,就是這樣的作用,我們之前利用一個線性帶參的函數h(x)去估計其實都是基於我們對樣本的理解從而主觀假設出來的,而廣義線性模型給出了一個通用的方法來計算出我們的假設函數h(x)
步驟一般是這樣的,首先通過指數分佈族的建立,我們可以計算出指數分佈的各個參數的表達式,然後利用對於T(y)的期望來試着去估計y,而T(y)的期望我們可以通過概率統計的知識用原有的概率密度函數的參數表示出來,再利用之前我們得到的表達式,關聯起來就可以得到T(y)和x之間的聯繫
舉個簡單的例子,伯努利分佈(y只有0和1兩種取值)
首先轉換成指數分佈族的形式
簡單得
接着利用我們概率論的知識可以知道伯努利分佈的期望就是概率,並且通過第三個假設我們知道x的線性表示其實就是μ,那麼我們就將θ聯繫起來了
最後利用期望來估計y,得到
這其實就是logistic迴歸
到此,你應該對廣義線性模型有個大概的瞭解,知道它有什麼用怎麼去用了。