⼀個重要的要求是,我們保留了推斷的⾼效算法,它與鏈的長度是線性關係。例如,這要求,在給定觀測的條件下,表⽰的後驗概率分佈的量在與轉移概率和發射概率相乘然後在上求和或積分之後,我們得到的上的概率分佈與上的概率分佈具有相同的函數形式。這就是說,在每個階段概率分佈不可以變得更復雜,而僅僅是在參數值上發生改變。毫不令人驚訝的是,在多次相乘之後具有這個性質的唯一的分佈就是指數族分佈。實際應用中最重要的一個例子就是高斯分佈。 ——PRML
目錄
--------七月在線機器學習筆記
logistic 迴歸
考慮二分類的情形。
類別C1的後驗概率可以寫成
(1)
(2)
且是sigmoid函數。“sigmoid”的意思是“S形”。這種函數有時被稱爲“擠壓函數”,因爲它把整個實數軸映射到了⼀個有限的區間中。在許多分類算法中都有着重要的作⽤。
滿足下面的對稱性:
(3)
且
(4)
對於廣義線性模型:類別C1的後驗概率可以寫成作⽤在特徵向量ϕ的線性函數上的logistic sigmoid函數的形式,即
(5)
極大似然估計:
似然函數
(6)
取對數得
(7)
求偏導
(8)
那麼,Logistic迴歸參數的學習規則:
(9)
目標函數是一個凹函數(二階導小於0),因此這裏是順梯度方向
它與 當所有點都有各自獨立的分佈時,整體服從高斯分佈(中心極限定理)的線性迴歸的參數學習(最小二乘)具有相同的形式
對於K>2個類別的情形
(10)
(11)
即softmax函數(歸一化指數)
logistic sigmoid的反函數
一個事件的機率odds,是指該事件發生的概率與不發生的概率的比值。
(12)
被稱爲logit (odds)函數 。 因其取對數後是線性的,因此稱作對數線性模型
對數線性模型的一般形式:
令x爲某樣本,y是x的可能標記,將logistic/softmax迴歸的特徵記做 。
(13)
因此本質上與是成正比的,而只是歸一化因子。
因此,對數線性模型的一般形式爲:
(14)
其中歸一化因子【對公式(13)兩邊對y加和,則左邊爲1,故得到】:
(15)
那麼給定x,預測標記爲【分析公式(14)】:
(16)
即 ,在給定x和學習參數w,得到標記的概率,遍歷所有的y,取概率最大的y作爲標記。
特徵函數的選擇
特徵函數幾乎可以任意選擇,甚至特徵函數間重疊。比如
詞性標註的特徵函數:
詞性標註是指將,每個單詞標記爲名詞/動詞/形容詞/介詞等。
詞性:POS,Part Of Speech
記w爲句子s的某個單詞,則特徵函數可以是:
1.w在句首/句尾(位置相關)
2.w的前綴是anti-/co-/inter-等(單詞本身)
3.w的後綴是-able/-ation/-er/-ing等(單詞本身)
4.w前面的單詞是a/could/SALUTATION等(單詞間)
5.w後面的單詞是am/is/are/等(單詞間)
6.w前面兩個單詞是would like/there be等(單詞和句子)
高精度的POS會使用超過10萬個特徵
注意:每個特徵只和當前詞性有關,最多隻和相鄰詞的詞性有關;
但特徵可以和所有詞有關
比如,下圖所示:Y2只與前一個狀態Y1有關,但Y2或Y1可以與整個X序列有關
詞性標註的三個問題
詞性標註被稱爲“結構化預測”,該任務與標準的類別學習任務存在巨大不同:
1)如果每個單詞分別預測,將丟失衆多信息;
--相鄰單詞的標記是相互影響的,非獨立。
2)不同的句子有不同的長度;
--這導致不方便將所有句子統一成相同長度向量【儘管有類似的one-hot編碼,但用於做詞性標註代價過高】
3)標記序列解集與句子長度呈指數級增長
--如上圖所示,解集有個;這使得窮舉法幾乎無法使用
線性條件隨機場
設X=(X1,X2…Xn)和Y=(Y1,Y2…Yn)均爲線性鏈表示的隨機變量序列,若在給定隨機變量序列X的條件下,隨機變量序列Y的條件概率分佈P(Y|X)構成條件隨機場,即滿足馬爾科夫性
則稱P(Y|X)爲線性鏈條件隨機場。
在標註問題中,表示輸入序列或稱觀測序列(n個詞的序列),表述對應的輸出標記序列或稱狀態序列(詞性)。
定義,同公式(14):
(17)
次特徵
定義句子的第個特徵是由若干次特徵組合而成的,這裏的依賴或部分依賴【當前詞的狀態可能與前一個詞的狀態無關】於當前整個句子、當前詞的標記、前一個詞的標記、當前詞在句子中的位置。
(18)
將每個位置上的次特徵相加,即得到特徵,從而解決訓練樣本變長的問題。
CRF的三個問題
1)CRF的概率計算問題
前向後向算法
2)CRF的參數學習問題IIS:改進的迭代尺度算法
3)CRF的預測算法Viterbi算法
概率計算問題
給定一組訓練樣本(x,y)找出權向量w,使得公式(16)成立:
滿足上式的w,即爲最終的推斷參數
參數推斷的兩個難點
1) 如果給定x和w,如何計算哪個標記序列y的概率最大?--前面詞性標註問題3)-指數級
(19)
2) 如果給定x和w,p(y|x,w)本身如何計算?
----歸一化因子與所有的可行標記有關,不容易計算
狀態關係矩陣
根據公式(18),的分子部分可以化簡爲:
(20)
,(21)
對應的狀態轉移矩陣【m爲標記(詞性)的數目】
經過上述轉換,問題變爲對狀態轉移矩陣先求,然後進行矩陣連乘。
同理,分母部分
(22)
那麼,定義 的矩陣
因爲起始位置的詞沒有依賴;結束位置詞沒有依賴;
對於,任選 某u=start狀態
對於,任選某v=stop狀態
矩陣連乘:
從而,
(23)
時間複雜度:
那麼,就得到了CRF的矩陣形式
(24)
(25)
前向-後向算法
與前面HMM類似,定義爲前向得分(概率),表示第k個詞的標記爲v的得分值(將得分值歸一化後即爲概率,這裏只取分子部分)
初值:
得到遞推公式: (26)
注意:爲m維列向量,因此矩陣相乘時應轉置爲行向量
同樣,定義後向得分,表示第k個詞的標記爲v,且從k+1往後的部分序列標記的得分:
初值:
遞推公式: (27)
前向-後向關係:
與HMM類似,分析得出,
(28)
,這裏1 是元素均爲1的m維列向量。 (29)
概率計算:
單個狀態的概率:
聯合狀態概率:
(30)
參數學習問題
對於監督學習,根據訓練集合(x,y)直接用大數定理:頻率估計概率P(x,y)
方法:求對數目標函數的駐點
公式(17):
取對數
(31)
求偏導(計算梯度)
(32)
梯度上升:
(33)
預測問題
根據上面公式(19)和公式(18),得
(34)
經過上述轉換,問題變成求的加和最大問題,然而就對應的狀態轉移矩陣【m爲標記(詞性)的數目】
使用Viterbi算法,
類似於前向得分
利用前向概率選擇最大標記序列
稱爲前向得分(概率),表示第k個詞的標記爲v的最大得分值(將得分值歸一化後即爲概率),
(22)
得遞推公式:
(23)
時間複雜度: ,標記數目爲m,句子包含的單詞數目爲n
CRF是判別模型——給定x,判斷P(y|x,w)的概率;HMM/LDA是生成模型——
CRF部分理論解釋
無向圖模型
NB-Naive Bayesian
有向圖模型,又稱作貝葉斯網絡(Directed Graphical Models, DGM, Bayesian Network)
--事實上,在有些情況下,強制對某些結點之間的邊增加 方向是不合適的。
使用沒有方向的無向邊,形成了無向圖模型 (Undirected Graphical Model,UGM), 又稱馬爾科夫隨機場或馬爾科夫網絡(Markov Random Field, MRF or Markov network)
條件隨機場
設X=(X1,X2…Xn)和Y=(Y1,Y2…Ym)都是聯合隨機變量,若隨機變量Y構成一個無向圖G=(V,E)表示的馬爾科夫隨機場(MRF),則條件概率分佈P(Y|X)稱爲條件隨機場(Conditional Random Field, CRF)
X稱爲輸入變量、觀測序列
Y稱爲輸出序列、標記序列、狀態序列
大量文獻將MRF和CRF混用,包括經典著作。
一般而言,MRF是關於隱變量(狀態變量、標記變量)的圖模型,而給定觀測變量後考察隱變量的條件概率,即爲CRF。
但這種混用,類似較真總理和周恩來的區別。有時候沒必要區分的那麼嚴格
混用的原因:在計算P(Y|X)時需要將X也納入MRF中一起考慮
DGM轉換成UGM
約定俗成的方法是,將有向邊轉換成無向邊,將有共同孩子的結點之間連接
----注意:這樣可能導致信息量發生了變化,比如上圖,對於貝葉斯網絡,給定2時,4和5應該是條件獨立的;但是轉換成馬爾科夫網絡,4和5之間有邊連接,則結點間的信息相互獨立性已經發生變化,也就是條件獨立性的破壞【這樣做的原因可能是變化影響相對較小】
MRF的性質
成對馬爾科夫性(parewise Markov property)
設u和v是無向圖G中任意兩個沒有邊直接連接的結點,G中其他結點的集合記做O;則 在給定隨機變量Yo的條件下,隨機變量Yu 和Yv條件獨立。
即:
局部馬爾科夫性(local Markov property)
設v是無向圖G中任意一個結點,W是與v有 邊相連的所有結點,G中其他結點記做O; 則在給定隨機變量Yw的條件下,隨機變量 Yv和Yo條件獨立。
即:
全局馬爾科夫性(global Markov property)
設結點集合A,B是在無向圖G中被結點集合 C分開的任意結點集合,則在給定隨機變量 YC的條件下,隨機變量YA和YB條件獨立。
即:
舉例,
三個性質的等價性
根據全局馬爾科夫性,能夠得到局部馬爾科夫性;
根據局部馬爾科夫性,能夠得到成對馬爾科夫性;
根據成對馬爾科夫性,能夠得到全局馬爾科夫性;
事實上,這個性質對MRF具有決定性作用:
滿足這三個性質(或其一)的無向圖,稱爲MRF。
團和最大團
無向圖G中的某個子圖S,若S中任何兩個結 點均有邊,則S稱作G的團(Clique)。
若C是G的一個團,並且不能再加入任何一個G 的結點使其稱爲團,則C稱作G的最大團 (Maximal Clique)。
舉例
團:{1,2}, {1,3}, {2,3}, {2,4}, {3,4}, {3,5},{1,2,3}, {2,3,4}
最大團:{1,2,3}, {2,3,4}, {3,5}
Hammersley-Clifford定理
UGM的聯合分佈可以表示成最大團上的隨機變量的函數的乘積的形式;這個操作叫做UGM的因子分解 (Factorization)。
比如上圖的聯合分佈可以表示爲:
UGM的聯合概率分佈P(Y)可以表示成如下形式:
其中,C是G的最大團,是C上定義的嚴格正函數,被稱作勢函數(Potential Function)。因子分解是在UGM所有的最大團 上進行的。
CRF總結
條件隨機場是給定輸入的條件下,關於輸出的條件概率分佈模型,根據Hammersley-Clifford定理,可以分解成若干關於最大團的非負函數的乘積,因此,常常將其表示爲參數化的對數線性模型。
線性鏈條件隨機場使用對數線性模型,關注無向圖邊的轉移特徵和點的狀態特徵,並對每個特徵函數給出各自的權值。
概率計算常常使用前向-後向算法;
參數學習使用MLE建立目標函數,採用IIS做參數優化;
線性鏈條件隨機場的應用是標註/分類,在給定參數和觀測序列(樣本)的前提下,使用Viterbi算法進行標記的預測。
標記序列y要求鏈狀,但x無要求,除了一維的詞性標註,中文分詞,還可以用於離散數據(如用戶信息畫像),或二維數據(如圖像分隔) 等。
缺點:有監督學習計算參數、參數估計的速度慢。