两个多元正态分布的KL散度、巴氏距离和W距离
?PaperWeekly 原創(chuàng) ·?作者?|?蘇劍林
單位?|?追一科技
研究方向?|?NLP、神經(jīng)網(wǎng)絡(luò)
正態(tài)分布是最常見(jiàn)的連續(xù)型概率分布之一。它是給定均值和協(xié)方差后的最大熵分布(參考《“熵”不起:從熵、最大熵原理到最大熵模型(二)》[1] ),也可以看作任意連續(xù)型分布的二階近似,它的地位就相當(dāng)于一般函數(shù)的線(xiàn)性近似。從這個(gè)角度來(lái)看,正態(tài)分布算得上是最簡(jiǎn)單的連續(xù)型分布了。也正因?yàn)楹?jiǎn)單,所以對(duì)于很多估計(jì)量來(lái)說(shuō),它都能寫(xiě)出解析解來(lái)。
本文主要來(lái)計(jì)算兩個(gè)多元正態(tài)分布的幾種度量,包括 KL 散度、巴氏距離和 W 距離,它們都有顯式解析解。
正態(tài)分布
這里簡(jiǎn)單回顧一下正態(tài)分布的一些基礎(chǔ)知識(shí)。注意,僅僅是回顧,這還不足以作為正態(tài)分布的入門(mén)教程。
1.1 概率密度
正態(tài)分布,也即高斯分布,是定義在 上的連續(xù)型概率分布,其概率密度函數(shù)為:
這里的 , 即均值向量(本文的向量默認(rèn)情況下都為列向量),而 即為協(xié)方差矩陣,它要求是對(duì)稱(chēng)正定的。可以看到,正態(tài)分布由 和 唯一確定,因此不難想象它的統(tǒng)計(jì)量都是 和 的函數(shù)。當(dāng) 時(shí),對(duì)應(yīng)的分布稱(chēng)為“標(biāo)準(zhǔn)正態(tài)分布”。
1.2 基本性質(zhì)
通常來(lái)說(shuō),基本的統(tǒng)計(jì)量就是均值和方差了,它們對(duì)應(yīng)著正態(tài)分布的兩個(gè)參數(shù):
由此也可以推出二階矩的結(jié)果:
還有一個(gè)常用的統(tǒng)計(jì)量是它的熵:
其計(jì)算過(guò)程可以參考后面 KL 散度的推導(dǎo)。
1.3 高斯積分
概率密度函數(shù)意味著 ,這就可以推出:
設(shè) ,那么得到高斯積分:
利用它我們可以算出正態(tài)分布的特征函數(shù):
特征函數(shù)可以用來(lái)算正態(tài)分布的各階矩。
線(xiàn)性代數(shù)
這里補(bǔ)充一些線(xiàn)性代數(shù)基礎(chǔ),它們?cè)诤竺娴耐茖?dǎo)中會(huì)頻繁用到。同樣地,這僅僅是“回顧”,并不能作為線(xiàn)性代數(shù)教程。
2.1 內(nèi)積范數(shù)
首先,我們來(lái)定義內(nèi)積和范數(shù)。對(duì)于向量 和 ,內(nèi)積按照:
來(lái)定義,而模長(zhǎng)定義為 。對(duì)于 的矩陣 ,我們按照類(lèi)似的方式定義:
這稱(chēng)為 Frobenius 內(nèi)積,對(duì)應(yīng)的 稱(chēng)為 Frobenius 范數(shù)。不難看到,Frobenius 內(nèi)積和范數(shù),事實(shí)上就是把矩陣展平為向量后,當(dāng)作常規(guī)的向量來(lái)運(yùn)算。
關(guān)于 Frobenius 內(nèi)積,最關(guān)鍵的性質(zhì)之一是成立恒等式:
也就是說(shuō),矩陣的 Frobenius 內(nèi)積可以轉(zhuǎn)化為矩陣乘法的跡,并且交換相乘順序不改變結(jié)果(不改變跡的結(jié)果,但是矩陣乘法的整體結(jié)果會(huì)改變)。
2.2 對(duì)稱(chēng)正定
接著,來(lái)看對(duì)稱(chēng)正定矩陣的一些性質(zhì)。 是一個(gè)對(duì)稱(chēng)正定矩陣,對(duì)稱(chēng)說(shuō)的是 ,正定說(shuō)的是對(duì)于任意非零向量 ,都有 。可以證明,如果 都是對(duì)稱(chēng)正定矩陣,那么 也都是對(duì)稱(chēng)正定矩陣。如果 , 是可逆陣,那么 是對(duì)稱(chēng)正定的當(dāng)且僅當(dāng) 是對(duì)稱(chēng)正定的。
此外還有半正定的概念,指對(duì)于任意非零向量 ,都有 ,也就是說(shuō)可能存在非零向量 使得 。不過(guò)考慮到正定矩陣在半正定矩陣中稠密,所以我們不嚴(yán)格區(qū)分正定和半正定了,統(tǒng)一按照正定矩陣來(lái)處理。
對(duì)稱(chēng)正定矩陣有一個(gè)重要的性質(zhì),那就是它的 SVD 分解跟特征值分解一致,即具有下述形式的分解:
其中 是正交矩陣,而 是對(duì)角陣,并且對(duì)角線(xiàn)上的元素都是正的。該結(jié)果的一個(gè)直接推論是:對(duì)稱(chēng)正定矩陣都可以“開(kāi)平方”,其平方根為 ,其中 是指將對(duì)角線(xiàn)上的元素都開(kāi)平方,可以檢驗(yàn)平方根矩陣也是對(duì)稱(chēng)正定的。反過(guò)來(lái),可以開(kāi)平方的對(duì)稱(chēng)矩陣,一定也是對(duì)稱(chēng)正定矩陣。
2.3 矩陣求導(dǎo)
最后,在求 Wasserstein 距離的時(shí)候,還需要用到一些矩陣求導(dǎo)公式,如果不了解的讀者,可以直接參考維基百科的“Matrix Calculus”[2]。當(dāng)然,其實(shí)也不難,主要用到了:
剩下的可以結(jié)合跡的運(yùn)算公式來(lái)派生出來(lái),比如:
KL散度
作為第一個(gè)嘗試,我們來(lái)算兩個(gè)高斯分布的 KL 散度(Kullback-Leibler divergence?[3] )。KL散度算是最常用的分布度量之一了,因?yàn)樗e分之前需要取對(duì)數(shù),這對(duì)于指數(shù)簇分布來(lái)說(shuō)通常能得到相對(duì)簡(jiǎn)單的結(jié)果。此外它還跟“熵”有著比較緊密的聯(lián)系。
3.1 計(jì)算結(jié)果
兩個(gè)概率分布的 KL 散度定義為:
對(duì)于兩個(gè)正態(tài)分布來(lái)說(shuō),計(jì)算結(jié)果是:
特別地,當(dāng) q 是標(biāo)準(zhǔn)正態(tài)分布時(shí),結(jié)果簡(jiǎn)化為:
3.2 推導(dǎo)過(guò)程
從KL散度的定義知道,我們主要把 算出來(lái)就行了:
現(xiàn)在,關(guān)于跡的恒等式就可以派上用場(chǎng)了:
注意 時(shí),上式就等于n,此時(shí)就對(duì)應(yīng)正態(tài)分布的熵。所以最終得到:
巴氏距離
然后,我們來(lái)看看巴氏距離(Bhattacharyya distance?[4] ),它定義為:
與之相關(guān)的還有一個(gè)叫做“Hellinger距離[5] ”的概念,定義為 ,展開(kāi)后就能發(fā)現(xiàn)跟巴氏距離本質(zhì)是等價(jià)的。
4.1 計(jì)算結(jié)果
對(duì)于兩個(gè)正態(tài)分布來(lái)說(shuō),它們的巴氏距離為:
這里 。可以看到結(jié)果是對(duì)稱(chēng)的,這是因?yàn)榘褪暇嚯x的定義本身就是對(duì)稱(chēng)的。
當(dāng)兩者之一為標(biāo)準(zhǔn)正態(tài)分布時(shí),結(jié)果并沒(méi)有明顯簡(jiǎn)化,所以這里就不單獨(dú)寫(xiě)出來(lái)了。
4.2 推導(dǎo)過(guò)程
按照定義,兩個(gè)正態(tài)分布的巴氏距離,是下述積分的負(fù)對(duì)數(shù):
記 ,積分部分可以換元為:
這里 。按照前面介紹的高斯積分公式(6),積分結(jié)果是:
所以最終:
W距離
如果讀者還想看了解更多關(guān)于概率散度的內(nèi)容,可以參考書(shū)籍《Statistical Inference Based on Divergence Measures》[6] 。現(xiàn)在我們轉(zhuǎn)向另一類(lèi)概率度量——基于最優(yōu)傳輸?shù)?W 距離(Wasserstein 距離)。
沿用從 Wasserstein 距離、對(duì)偶理論到 WGAN 中的記號(hào),W 距離的定義如下:
不同的 會(huì)得到不同的結(jié)果,為了得到較為簡(jiǎn)單的解,這里選擇:
5.1 計(jì)算結(jié)果
有意思的是,關(guān)于兩個(gè)正態(tài)分布的 W 距離的結(jié)果,流傳著兩個(gè)不同的版本,這兩個(gè)版本都有一定的認(rèn)知度,但確沒(méi)有看到有人明確說(shuō)明兩者的等價(jià)性。兩個(gè)版本源于它們不同的證明思路,還被冠以了不同的名字。
5.1.1 版本1
首先第一個(gè)流傳相對(duì)較廣的版本(很多文獻(xiàn)包括維基百科也使用這個(gè)版本):
關(guān)于這個(gè)結(jié)果,有的讀者可能困惑于“怎么關(guān)于 p,q 不是對(duì)稱(chēng)的”,事實(shí)上,它關(guān)于 p,q 是對(duì)稱(chēng)的,因?yàn)?#xff1a;
然后我們可以直接驗(yàn)證 ,所以有 。
5.1.2 版本2
第二個(gè)版本的結(jié)果是:
這個(gè)版本通常被稱(chēng)為“Fréchet 距離”。GAN 中經(jīng)常使用的評(píng)價(jià)指標(biāo) FID(Frechet Inception Distance),就是基于這個(gè)公式進(jìn)行計(jì)算的。
5.1.3 等價(jià)性
事實(shí)上,證明兩者的等價(jià)性并不難:
然后直接驗(yàn)證 即可。
5.1.4 特殊情形
特別地,如果 的乘法可以交換,那么將會(huì)簡(jiǎn)化為非常直觀的形式:
為什么說(shuō)它非常直觀呢?因?yàn)檎龖B(tài)分布的參數(shù)為 ,所以比較正態(tài)分布的差異其實(shí)就是比較 的差異,按照機(jī)器學(xué)習(xí)的習(xí)慣,一個(gè)很容易相當(dāng)想到的指標(biāo)是平方誤差:
但從物理角度來(lái)看,這個(gè)指標(biāo)是不妥的,因?yàn)槿绻麑? 看成是長(zhǎng)度量綱,那么 就具有長(zhǎng)度平方的量綱,所以 和 是具有不同量綱的兩個(gè)量,不能相加。而為了使得量綱一致,直觀的想法就是把 “開(kāi)平方”后再算平方誤差,這就得到了式(32)。
特別地,當(dāng)q為標(biāo)準(zhǔn)正態(tài)分布時(shí),結(jié)果簡(jiǎn)化為:
5.2 推導(dǎo)過(guò)程1
現(xiàn)在介紹第一個(gè)證明,主要參考了論文《A class of Wasserstein metrics for probability distributions》[7] 。另外《The distance between two random vectors with given dispersion matrices》[8] 也提供了一個(gè)類(lèi)似的證明,也可以參考。
下面的推導(dǎo)過(guò)程則是經(jīng)過(guò)筆者簡(jiǎn)化的,相對(duì)原論文的證明來(lái)說(shuō)簡(jiǎn)單一些,但依然不可避免地會(huì)涉及到較多的線(xiàn)性代數(shù)知識(shí),我們將分幾個(gè)部分介紹。
5.2.1 去均值
不失一般性,我們可以只考慮均值為 0 的分布 p,q。因?yàn)槿绻?p,q 的均值不為 0,那么設(shè)對(duì)應(yīng)的均值為 0 的分布為 ,此時(shí)有:
該結(jié)果意味著:
所以,只需要算出均值都為零時(shí)的 Wasserstein 距離,然后加上 就得到了一般情況的結(jié)果。
5.2.2 純代數(shù)
現(xiàn)在我們假設(shè) p,q 的均值均為 0,然后計(jì)算:
其中:
構(gòu)成聯(lián)合分布 的協(xié)方差矩陣。我們知道協(xié)方差矩陣是正定對(duì)陣矩陣,所以從代數(shù)的角度看,問(wèn)題變成了:
已知 為正定對(duì)稱(chēng)矩陣,求 的最大值。
5.2.3 舒爾補(bǔ)
為此,我們需要利用下述關(guān)于“舒爾補(bǔ)”的恒等式:
其中對(duì)稱(chēng)矩陣 稱(chēng)為“舒爾補(bǔ)(Schur Complement)”[9] ,該分解具有 的形式,要想它是正定的,那么 要是正定的,而 已經(jīng)是正定的,所以 需要是正定的。
5.2.4 分參數(shù)
我們嘗試分離參數(shù),即從 中把 解出來(lái)。首先移項(xiàng)得到 ,由于 是正定對(duì)稱(chēng)的,所以 也是,從而 也是正定對(duì)稱(chēng)的,那么它具有正定對(duì)稱(chēng)的平方根,即存在正定對(duì)稱(chēng)矩陣 ,使得:
這說(shuō)明 是正交矩陣,記為 ,那么 。
5.2.5 乘子法
此時(shí),變量分別是 和 ,求 的最大值。我們先固定 ,求取最大值時(shí)的 ,此時(shí)相當(dāng)于在 的約束下,求 的最大值,我們用“拉格朗日乘子法” [10]:引入新參數(shù)矩陣 ,轉(zhuǎn)化為下述無(wú)約束極值問(wèn)題:
求導(dǎo):
首先留意到 是對(duì)稱(chēng)的,因此對(duì)應(yīng)的參數(shù)矩陣 也是對(duì)稱(chēng)的,于是我們有:
即 ,所以此時(shí):
5.2.6 不等式
最后需要把 確定下來(lái)。回顧 的定義,我們有 ,其中 是正定矩陣。直覺(jué)上 時(shí)取得最大值,事實(shí)上也確實(shí)如此,這算是“Weyl 不等式” [11] 的一個(gè)直接推論。
根據(jù) Weyl 不等式,如果矩陣 都是正定對(duì)稱(chēng)矩陣,它們的特征值從小到大排列分別為 、 和 ,那么對(duì)于任意 ,都有 ,也就是說(shuō):
正定對(duì)稱(chēng)矩陣的和的特征值,一一對(duì)應(yīng)地大于它們各自的特征值。
有了這個(gè)結(jié)論,那就簡(jiǎn)單了,設(shè) 的特征值為 ,那么它的跡就是 ,對(duì)應(yīng)地, 的特征值為 ,注意 是對(duì)稱(chēng)正定矩陣(對(duì)稱(chēng)是顯然的,而因?yàn)樗荛_(kāi)平方,所以正定), 也是對(duì)稱(chēng)正定的(因?yàn)? 是對(duì)稱(chēng)正定的),所以它們的特征值,都不超過(guò)它們的和——也就是 的特征值,所以說(shuō), 每個(gè)特征值的最大值(也就是跡的最大值),在 處取到。
至于 Weyl 不等式的證明,主要利用到了 Rayleigh quotient [12] 和 Courant–Fischer [13] 定理,有興趣了解的讀者自行查閱這兩部分資料后,再查閱 Wely 不等式的證明就好。事實(shí)上,熟悉這兩部分內(nèi)容后,Weyl 不等式基本上就“水到渠成”了。
5.3 推導(dǎo)過(guò)程2
這里繼續(xù)介紹另一個(gè)更為簡(jiǎn)單的證明,原始證明可以在[《The Fréchet distance between multivariate normal distributions》](https://core.ac.uk/download/pdf/82269844.pdf)找到。相對(duì)而言該證明簡(jiǎn)單不少,尤其是不需要太多的純線(xiàn)性代數(shù)知識(shí)。下面的推導(dǎo)過(guò)程依舊是經(jīng)過(guò)筆者進(jìn)一步簡(jiǎn)化的,比原始論文更好理解一些。
在這個(gè)推導(dǎo)過(guò)程中,“去均值”、“純代數(shù)”兩個(gè)步驟跟“推導(dǎo)過(guò)程1”是一樣的,不再重復(fù)。所以,此時(shí)問(wèn)題已經(jīng)被轉(zhuǎn)化為:
已知 為正定對(duì)稱(chēng)矩陣,求 的最大值。
5.3.1?分塊陣
由于 是對(duì)稱(chēng)正定矩陣,所以它必然可以表達(dá)成 的形式,我們將 表達(dá)為分塊矩陣 ,其中 ,此時(shí)
對(duì)應(yīng)地有 。
5.3.2 乘子法
在上述參數(shù)化之下,問(wèn)題轉(zhuǎn)化為:
已知 ,求 的最大值。
這是一個(gè)帶約束的最大值問(wèn)題,我們用“拉格朗日乘子法” [10] :引入新參數(shù)矩陣 ,轉(zhuǎn)化為下述無(wú)約束極值問(wèn)題:
求導(dǎo):
注意到 和 都是對(duì)稱(chēng)的,所以對(duì)應(yīng)的參數(shù)矩陣也是對(duì)稱(chēng)的,此時(shí):
令 ,代入上式得 ,即
而:
文章小結(jié)
本文詳細(xì)計(jì)算了兩個(gè)多元正態(tài)分布的 KL 散度、巴氏距離和W距離,給出了它們的顯式解析解,這些結(jié)果在某些場(chǎng)景下可以作為隱變量的正則項(xiàng)使用,來(lái)規(guī)范隱變量的分布。此外,本文還可以作為比較有挑戰(zhàn)性的線(xiàn)性代數(shù)練習(xí)題,供大家參考練習(xí)。
參考文獻(xiàn)
[1] https://kexue.fm/archives/3552
[2] https://en.wikipedia.org/wiki/Matrix_calculus
[3] https://en.wikipedia.org/wiki/Kullback%E2%80%93Leibler_divergence
[4] https://en.wikipedia.org/wiki/Bhattacharyya_distance
[5] https://en.wikipedia.org/wiki/Hellinger_distance
[6] https://www.taylorfrancis.com/books/mono/10.1201/9781420034813/statistical-inference-based-divergence-measures-leandro-pardo
[7] https://projecteuclid.org/journals/michigan-mathematical-journal/volume-31/issue-2/A-class-of-Wasserstein-metrics-for-probability-distributions/10.1307/mmj/1029003026.full
[8] https://www.sciencedirect.com/science/article/pii/0024379582901124
[9] https://en.wikipedia.org/wiki/Schur_complement
[10] https://en.wikipedia.org/wiki/Lagrange_multiplier
[11] https://en.wikipedia.org/wiki/Weyl%27s_inequality
[12] https://en.wikipedia.org/wiki/Rayleigh_quotient
[13] https://en.wikipedia.org/wiki/Min-max_theorem
特別鳴謝
感謝 TCCI 天橋腦科學(xué)研究院對(duì)于 PaperWeekly 的支持。TCCI 關(guān)注大腦探知、大腦功能和大腦健康。
更多閱讀
#投 稿?通 道#
?讓你的文字被更多人看到?
如何才能讓更多的優(yōu)質(zhì)內(nèi)容以更短路徑到達(dá)讀者群體,縮短讀者尋找優(yōu)質(zhì)內(nèi)容的成本呢?答案就是:你不認(rèn)識(shí)的人。
總有一些你不認(rèn)識(shí)的人,知道你想知道的東西。PaperWeekly 或許可以成為一座橋梁,促使不同背景、不同方向的學(xué)者和學(xué)術(shù)靈感相互碰撞,迸發(fā)出更多的可能性。?
PaperWeekly 鼓勵(lì)高校實(shí)驗(yàn)室或個(gè)人,在我們的平臺(tái)上分享各類(lèi)優(yōu)質(zhì)內(nèi)容,可以是最新論文解讀,也可以是學(xué)術(shù)熱點(diǎn)剖析、科研心得或競(jìng)賽經(jīng)驗(yàn)講解等。我們的目的只有一個(gè),讓知識(shí)真正流動(dòng)起來(lái)。
?????稿件基本要求:
? 文章確系個(gè)人原創(chuàng)作品,未曾在公開(kāi)渠道發(fā)表,如為其他平臺(tái)已發(fā)表或待發(fā)表的文章,請(qǐng)明確標(biāo)注?
? 稿件建議以?markdown?格式撰寫(xiě),文中配圖以附件形式發(fā)送,要求圖片清晰,無(wú)版權(quán)問(wèn)題
? PaperWeekly 尊重原作者署名權(quán),并將為每篇被采納的原創(chuàng)首發(fā)稿件,提供業(yè)內(nèi)具有競(jìng)爭(zhēng)力稿酬,具體依據(jù)文章閱讀量和文章質(zhì)量階梯制結(jié)算
?????投稿通道:
? 投稿郵箱:hr@paperweekly.site?
? 來(lái)稿請(qǐng)備注即時(shí)聯(lián)系方式(微信),以便我們?cè)诟寮x用的第一時(shí)間聯(lián)系作者
? 您也可以直接添加小編微信(pwbot02)快速投稿,備注:姓名-投稿
△長(zhǎng)按添加PaperWeekly小編
????
現(xiàn)在,在「知乎」也能找到我們了
進(jìn)入知乎首頁(yè)搜索「PaperWeekly」
點(diǎn)擊「關(guān)注」訂閱我們的專(zhuān)欄吧
·
總結(jié)
以上是生活随笔為你收集整理的两个多元正态分布的KL散度、巴氏距离和W距离的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: u盘怎么装xp电脑系统教程 如何在电脑上
- 下一篇: 让机器学会看图说话:Image Capt