為什麼KL-divergence 可以用來衡量兩個概率分佈的不相似性? 阿新 • • 發佈:2019-01-22 以下所有內容均來自 PRML 一書,讀者讀了之後,有任何沒有看懂的,請留言。我是傳播知識的小蜜蜂 首先KL-divergence的定義: 如果有個未知的分佈為p(x),我們使用q(x)估計它。從資訊傳輸的角度理解,如果使用它們刻畫資訊編碼的方法。那麼使用q(x)估計p(x)時,平均額外需要多編碼的資訊長度為: KL(p∥q)=−∫p(x)lnq(x)dx−(−∫p(x)lnp(x)dx)=−∫p(x)lnq(x)p(x)dx。如果要想使得兩個分佈p(x)和q(x)儘可能的相同,則KL(p∥q)應儘可能地最小。 令 f(x)=−lnq(x)p(x)。顯然,f(x) 是個凸函式。由凸函式的定義和Jensen不等式可知: ∫ p(x)f(x)dx≥f(∫xp(x)dx),因此: KL(p∥q)≥−ln∫(q(x)p(x)p(x))dx=−ln∫q(x)dx=0. 事實上,−ln(x)是強凸函式, 因此等號並不成立。即: KL(p∥q)>−ln∫(q(x)p(x)p(x))dx=−ln∫q(x)dx=0。 根據KL(p∥q)的定義,只用當p(x)==q(x)時等號成立。因此,KL(p∥q)可以用來衡量兩個分佈的差異。它的值越大說明兩個分佈的差異越大。