我有两个矩阵X和Y(在大多数情况下它们是相似的),现在我要计算所有行之间的成对KL散度,并将它们输出到一个矩阵中。E、 g组:
X = [[0.1, 0.9], [0.8, 0.2]]
然后,该函数应取kl_divergence(X, X)
,并计算两个X矩阵每对行的成对Kl散度距离。输出将是2x2矩阵。在
在Python中已经有一些实现了吗?如果没有,这应该是相当简单的计算。我想要一些矩阵实现,因为我有很多数据,需要尽可能低的运行时间。另外,Jensen-Shannon熵也很好。最终这对我来说会是一个更好的解决方案。在
Tags:
有一个名为dit的新(ish)库已实现JSD,以及相互信息和许多其他距离指标:
医生们可能需要一些工作,但看起来很有希望。在
http://docs.dit.io/en/latest/generalinfo.html#quickstart
注意,KL divergence本质上是p(i)和log(p(i)/Q(i)的点积。因此,一个选项是为P(i)和log(P(i)/Q(i))形成一个numpy数组的列表,每个KL散度对应一行,然后执行点积。在
相关问题 更多 >
编程相关推荐