机器学习-统计与数学

【原理】一篇入门之-JS散度是什么

作者 : 老饼 发表日期 : 2022-11-01 19:49:26 更新日期 : 2025-06-25 00:04:00
本站原创文章,转载请说明来自《老饼讲解-机器学习》www.bbbdata.com



JS散度(Jensen-Shannon Divergence)是一种基于KL散度、用于度量两个分布之间的距离的指标 

本文讲解JS散度的公式与特性,包括它的定义公式、计算公式等等,并提供相关证明

通过本文,可以快速了解JS(Jensen)散度是什么、有什么用,以及JS散度的各种计算公式与证明




   01. JS散度是什么   




本节展示JS散度的公式与意义,快速了解JS散度是什么




    什么是JS散度    


JS散度(Jensen-Shannon Divergence)也称为JS距离,它用于度量两个分布之间的距离 
JS散度-定义公式
 分布 Q(X)与 P(X) 的JS散度计算公式为:
 
 其中,M是P与Q的均值: 
 

KL是Kullback-Leibler散度,如下:

 
从公式可知,JS散度的定义基于KL散度,它可以看作是对KL散度的一种改进
它解决了KL散度测量分布的距离时不对称的缺点,即
相比KL散度,JS散度将两个分布P、Q与它们的"平均分布"M的KL距离均值作为PQ之间的距离 
这样可以使得JS散度在测量两个分布的距离时是对称的,即





      JS散度-常见形式    


下面展示JS散度公式在日常使用中常见的各种形式
JS散度的定义公式为:
 
 其中,M是P与Q的均值: 
 

 如果把KL散度公式展开,则JS散度计算公式为:
  

如果 x为连续变量,则为积分形式:
 

也可以写为期望形式:
 
第一次会眼花缭乱,看多了就习惯了






    02. JS散度的特性    




本节展示JS散度的特性,以及相关证明




    JS散度的特性    


JS的特性如下:
1. 非负性                                                                               
JS是两个分布的距离,它具有非负性                                 
 证明:因为KL>0,所以易知JS>0                        
2. 对称性                                                                               
JS相比KL,它具有对称性,即      
 证明:直接对定义公式进行验证即可                                  
3. JS散度的取值范围为                                                
(1) 当P与Q完全相等时,JS取得最小值,此时    
 证明:将P=Q代入JS公式,即可得证                     
        (2) 当P与Q完全不相同时,JS取得最大值,此时    
                    证明:当P与Q完全不相同时,即两者完全不重叠,即P或Q至少有一个为0
           按此思路,代入公式进行计算即可得到
,详细证明见下文





     JS最大取值的证明     


当P与Q完全不相同时,即两者完全不重叠,即P或Q至少有一个为0
 两个分布差异最大的情况
 在x为连续变量时,JS的公式如下:
  
由于JS是的积分,而两个分布完全不重叠,则JS可以分为如下三段积分之和
 即:P不为0,Q不为0,两都都为0,如下:
 
 三段积分的结果分别如下: 
1. 当时,有:                                                             
       

2. 当时,有:                                                             
        

3. 当时,有:                                                             
                                                                     
 因此有:
 







好了,以上就是JS散度的介绍以及原理推导了~








 End 


 




图标 评论
添加评论