當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
KL散度、JS散度以及交叉熵对比
生活随笔
收集整理的這篇文章主要介紹了
KL散度、JS散度以及交叉熵对比
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在看論文《Detecting Regions of Maximal Divergence for Spatio-Temporal Anomaly Detection》時,文中提到了這三種方法來比較時間序列中不同區域概率分布的差異。
?
KL散度、JS散度和交叉熵
三者都是用來衡量兩個概率分布之間的差異性的指標。不同之處在于它們的數學表達。
對于概率分布P(x)和Q(x)
1)KL散度(Kullback–Leibler divergence)
又稱KL距離,相對熵。
當P(x)和Q(x)的相似度越高,KL散度越小。
KL散度主要有兩個性質:
(1)不對稱性
盡管KL散度從直觀上是個度量或距離函數,但它并不是一個真正的度量或者距離,因為它不具有對稱性,即D(P||Q)!=D(Q||P)。
(2)非負性
相對熵的值是非負值,即D(P||Q)>0。
?
2)JS散度(Jensen-Shannon divergence)
JS散度也稱JS距離,是KL散度的一種變形。
但是不同于KL主要又兩方面:
(1)值域范圍
JS散度的值域范圍是[0,1],相同則是0,相反為1。相較于KL,對相似度的判別更確切了。
(2)對稱性
即 JS(P||Q)=JS(Q||P),從數學表達式中就可以看出。
?
3)交叉熵(Cross Entropy)
在神經網絡中,交叉熵可以作為損失函數,因為它可以衡量P和Q的相似性。
交叉熵和相對熵的關系:
?
以上都是基于離散分布的概率,如果是連續的數據,則需要對數據進行Probability Density Estimate來確定數據的概率分布,就不是求和而是通過求積分的形式進行計算了。
總結
以上是生活随笔為你收集整理的KL散度、JS散度以及交叉熵对比的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Hadoop大数据组件简介
- 下一篇: MQTT Java 客户端