首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何评估通过机器学习技术获得的结果的不确定性?

如何评估通过机器学习技术获得的结果的不确定性?
EN

Data Science用户
提问于 2022-06-10 22:14:47
回答 2查看 40关注 0票数 3

随着机器学习(其各种形式)在科学中变得越来越普遍,建立逻辑和系统的方法来解释机器学习结果变得非常重要。虽然现代ML技术已经表明自己能够与更“经典”的技术竞争,甚至超过了它们的准确性,但在任何数据分析中得到的数值结果都只是故事的一半。

有建立和良好的形式化(数学上)的方法来评估结果中的不确定性,通过经典方法。如何评估机器学习结果中的不确定性?例如,在类似于经典回归分析的情况下,估计拟合参数的不确定性(至少在理论上是如此)是相对直接的。我可以做一些测量,把它们拟合成某种方程,估计一些物理参数,例如用高斯误差近似的规则来估计它的不确定性。如何确定某些机器学习算法所估计的同一参数的不确定性?

我认识到,这可能与手头问题的具体情况和所使用的算法不同。不幸的是,一个简单的Google搜索出现了大部分是“手波浪”的解释,而我似乎无法找到一篇足够容易理解的科学论文,讨论一个ML结果,并深入讨论不确定性估计。

EN

回答 2

Data Science用户

回答已采纳

发布于 2022-06-11 11:23:51

以下是我所知道的一些主要方法。一种方法是使用贝叶斯机器学习,它学习整个参数空间的概率分布(参见巴恩的“贝叶斯深度学习概论”)。然而,这些方法在计算上往往是昂贵的。

对于分类问题,最常用的方法是使用能够输出类概率(如交叉熵损失)的分类器。虽然这一概率可以解释为不确定性,但它通常没有得到很好的校准。对模型的标定是指模型的不确定性反映了预测结果。例如,我们期望用>= 80%的确定性对80%的样本进行正确分类。因此,可以在分类步骤之后增加校准步骤。

对于回归问题,一种天真的方法是使用不同的权重初始化来训练多个模型,要么通过打包,要么对深度学习模型进行训练。然后,每个模型预测的方差可以解释为不确定性。例如,我们可以使用一个集合,其中我们也使用预测的平均值作为集合预测。然而,这给出了对不确定性的过度自信的估计.

对于深度学习模式,我知道还有其他几种方法。

第一种是蒙特卡罗辍学(Gal和Ghahramani的Dropout作为贝叶斯近似:表示深度学习中的模型不确定性),它可以应用于任何使用辍学的深度学习模型。该方法利用丢包的随机性来估计预测中的方差或不确定性,可应用于回归模型和分类模型。

其次是将损失函数改为负对数似然(NLL)函数。当用于回归时,它提供了均值和方差的估计。因此,使用这种方法的模型有两个输出-一个用于平均值,另一个用于方差。早期的工作是Nix和Weigend估计目标概率分布的均值和方差,它使用不同的MLP来表示均值和方差。最近的一项工作(Lakshminarayanan等人:S的简单可扩展预测不确定度估计)将此技术应用于任何神经网络,并将其与集成技术相结合,从而进一步提高了不确定性估计。

票数 2
EN

Data Science用户

发布于 2022-06-11 22:54:38

我也不知道有任何文件可以“证明”ML在一般情况下是有效的。许多技术都是建立在优化、距离度量的基础上的,实际上没有任何概率对应。

我也非常怀疑一些算法输出概率,除非它们是基于统计分布的。但正如其他一些答案所暗示的,我认为对于某些技术来说,模拟可能是正确的方法。决策树在卡方分布中至少有一定的统计基础。我和我认为,随机森林的发展是为了模拟一些概率,尽管ML中的概率通常是算法的内部因素,并不能真正概括到我们通常认为的统计预测概率。

票数 1
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/111717

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档