javascript
GAN的理论基础之KL散度与JS散度
在介紹KL散度和JS散度之前,我們需要了解什么是信息熵,什么是交叉熵。
香農(nóng)信息量、信息熵
香農(nóng)信息量用于刻畫消除隨機(jī)變量X在x處的不確定性所需的信息量的大小
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
當(dāng)對(duì)數(shù)的底數(shù)為2時(shí),香農(nóng)信息量的單位為比特
香農(nóng)信息量描述的是隨機(jī)變量在某一點(diǎn)處的信息量,而衡量隨機(jī)變量在整個(gè)樣本空間的信息量,就需要用隨機(jī)變量X的信息熵,可以將信息熵理解為是香農(nóng)信息量的數(shù)學(xué)期望,即P(x)加權(quán)求和,因此可以將信息熵理解為消除隨機(jī)變量不確定性所需的總體信息量的大小,熵越大,隨機(jī)變量的不確定性就越大,數(shù)學(xué)定義如下:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
交叉熵
假設(shè)用q(x)來擬合p(x)的概率分布,交叉熵用來描述p和q的相似性,表示在給定的真實(shí)分布下,使用非真實(shí)分布用來消除系統(tǒng)不確定性所需付出的努力的大小。由于在每一點(diǎn)x處q的香農(nóng)信息量為-logq(x),那么在整個(gè)樣本空間相處不確定性而使用的信息量為其數(shù)學(xué)期望,由于每個(gè)x的權(quán)重為p(x),以此交叉熵為:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
交叉熵可以在神經(jīng)網(wǎng)絡(luò)中作為損失函數(shù),p表示真實(shí)的標(biāo)記分布,q表示訓(xùn)練后的預(yù)測(cè)標(biāo)記分布,交叉熵?fù)p失函數(shù)可以衡量p和q的相似性。它作為損失函數(shù)的一個(gè)好處是使用sigmoid函數(shù)在梯度下降時(shí)能避免均方誤差損失函數(shù)學(xué)習(xí)速率降低的問題,因?yàn)閷W(xué)習(xí)速率可以被輸出的誤差所控制。
KL散度
兩個(gè)概率分布p和q的KL散度,也稱為相對(duì)熵,它用于描述概率分布q擬合概率分布p的程度。在生成對(duì)抗網(wǎng)絡(luò)里,p為真實(shí)數(shù)據(jù)的概率分布,q為隨機(jī)噪聲生成數(shù)據(jù)的概率分布,對(duì)抗的目的是讓q充分?jǐn)M合p。如果q完全擬合p,就偶遇H(p)=H(p,q),如果擬合不充分,就會(huì)產(chǎn)生信息損耗H(p)-H(p,q),整個(gè)信息損耗就是p和q的KL散度,定義如下:
? ? ? ? ? ? ? ? ? ? ?
散度D(p||q)為信息熵H(p)與交叉熵H(p,q)的差,衡量q擬合p的過程中的信息損耗,損耗越少,擬合的越好。
還有種理解是KL散度的計(jì)算就是原分布與近似分布的概率的對(duì)數(shù)差的期望值。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
注意:KL散度不是距離
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
因此KL散度不具有交換性,所以不能理解為距離的概念,衡量的并不是兩分布在空間中的遠(yuǎn)近,更準(zhǔn)確的理解應(yīng)該是衡量一個(gè)分布比另一個(gè)分布的信息損失。
KL散度總是大于0,由吉布斯不等式可得,且在P=Q時(shí)等于0
相對(duì)熵也可以衡量兩個(gè)隨機(jī)分布之間的距離,當(dāng)兩個(gè)隨機(jī)分布相同時(shí),它們的相對(duì)熵為0,當(dāng)兩個(gè)隨機(jī)分布的差別增大時(shí),它們的相對(duì)熵也會(huì)增大。所以相對(duì)熵可以用于比較文本的相似度,先統(tǒng)計(jì)出詞的頻率,然后計(jì)算相對(duì)熵。
JS散度
JS散度用于衡量兩種分布之間的差異,它用在生成對(duì)抗網(wǎng)絡(luò)的數(shù)學(xué)推到上,克服了KL散度不是距離、不對(duì)稱的缺點(diǎn)
它的定義如下:
? ? ? ?
參考資料:https://baijiahao.baidu.com/s?id=1595106694519834247&wfr=spider&for=pc
? ? ? ? ? ? ? ? ? https://www.zhihu.com/question/41252833
總結(jié)
以上是生活随笔為你收集整理的GAN的理论基础之KL散度与JS散度的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
                            
                        - 上一篇: GAN的目标函数(F散度;KL散度;JS
 - 下一篇: 极光推送api