假设我们需要神经网络架构,A和B,我们训练x每一次。在x再训练的基础上,计算每个模型的x预测误差,并绘制相应的分布图。这意味着,对于模型A,我们有一个误差密度\mathcal{D}_A,对于B一个密度\mathcal{D}_B。
显然,如果A \mu_A < \mu_B的误差平均值和A \sigma_A < \sigma_B 误差的标准差,我会选择A作为我的最佳模型。但是如果\mu_A < \mu_B但是\sigma_A > \sigma_B,我们如何选择这个模型呢?
我的问题通常是:给定两个错误密度\mathcal{D}_A和\mathcal{D}_B,如何比较这两种方法来选择最终模型。我想过的简单的、可能不正确的方法是:决定一个参考密度\mathcal{D}(例如,\mathcal{N}(0,1)),使用KL-散度计算A和B密度与参考密度之间的“距离”,并选择距离较小的模型。
有什么想法吗?
发布于 2021-08-28 08:33:30
对于那些对这个问题感兴趣的人,我终于找到了一些在比较分布(并且不同于KL-散度)方面表现良好的有用的度量: Wasserstein度量,能量度量,Shannon-熵度量,最大平均差异度量。它们是度量,因为它们满足数学度量的性质(例如对称的),而KL-散度不对称。
请注意,Shannon-熵度量需要密度估计,而其他度量只需要收集的样本。
发布于 2021-07-21 07:46:30
在我看来是个好主意。
KL散度将给出分布的原始距离近似,但并不是所有的误差值都具有相同的重要权重:这在很大程度上取决于您的错误计算方法,而且可能需要某种相对误差计算/加权。
除此之外,交叉熵也是一个有趣的选择,可以知道分布距离的“方向”。
https://datascience.stackexchange.com/questions/98015
复制相似问题