KL-divergence 比较 ML 模型

数据挖掘 机器学习 深度学习 神经网络
2022-02-25 22:03:55

假设我们必须对神经网络架构 A 和 B 进行训练,每个架构都训练次。基于次再训练,我们可以计算每个模型的这意味着,对于模型 A,我们有一个错误密度 ,对于 B ,我们有一个密度xxxDADB

显然,如果 A <误差的标准差,我会选择 A 作为我的最佳模型。但是如果,我们如何选择模型。μAμBσA<σBμA<μBσA>σB

我的问题一般是:给定两个错误密度,什么指标比较这两者来选择最终模型。我想到的简单且可能不正确的方法是:决定参考密度(您喜欢错误密度如何,例如)并使用 KL -divergence 计算每个 A 和 B 密度与参考密度之间的“距离”,并选择距离较小的模型。DADBDN(0,1)

有任何想法吗 ?

2个回答

在我看来是个好主意。

KL 散度将为您提供分布的原始距离近似值,但并非所有误差值都可能具有相同的重要性权重:它高度取决于您的误差计算方法,并且可能需要某种相对误差计算/加权。

除此之外,交叉熵也可能是一个有趣的选择,可以了解分布距离的“方向”。

对于那些对这个问题感兴趣的人,我终于发现了一些在比较分布(并且不同于 KL 散度)方面表现良好的有用指标:Wasserstein 指标、能量指标、香农熵指标、最大平均差异指标。它们是度量,因为它们满足数学度量的属性(例如对称),而 KL 散度不是对称的。

请注意,香农熵度量需要密度估计,而其他度量只需要收集的样本。