精华内容
下载资源
问答
  • 属于不确定性分析方法的是
    千次阅读
    2018-10-14 15:21:38

    不确定或不确定性(Uncertainty)一词有多个含义。一般来说,任何没有完全和彻底了解的事物对我们来说都存在不确定性。不确定性这个词有怀疑(比如“他能否按计划完成工作是不确定的”)或者缺乏知识(比如“我不确定溶液是否有毒”)的意思,本文中,作者倾向于把风险和不确定性看成两个不同的词。研究对象的风险可以用风险分析的结果“风险图”来表示,并且“风险图”一般会成为决策制定的依据,当然,决策制定的依据还有很多,比如生产评估、成本利润评估等。为了能够进行好的决策,决策者必须要相信他所使用的决策依据是尽可能正确的。这样,决策者也就会有兴趣了解,他对于风险分析的结果可以有多大信心,即要了解风险分析结果的不确定性有多大。

    作者将“不确定性”定义为“对风险评估结果信心的‘量度’”,此处给“量度”加上引号是为了表示不确定性并不一定需要量化。2009年美国国家研究委员会(NRC)对“不确定性”给出的精确定义是“不确定性:信息缺乏或不完整,定量不确定性分析试图分析和描述计算值与真实值之间的差异程度,描述的方法有时候是概率分布。不确定性取决于数据的质量、数量和相关度,以及模型和假设的可靠性和相关度(NRC,2009)。

    2.不确定性的类型:

    根据需要常常将不确定性分为两大类(Armen Der Kiureghian,2007)。

    随机不确定性:随机(Aleatory)这个单词来自拉丁语alea,意思是掷骰子。

    认知不确定性:认知(Epistemic)来自希腊语episteme,意思是知识。

    2.1 随机不确定性

    随机不确定性:此种不确定性主要由自然变异和随机性引起。随机不确定性的例子包括风速、风向、降雨量、产品质量的变化、污染物在食品中的浓度等。

    随机不确定性也被称为变异(NRC,2009)、内在不确定性、偶然不确定性和不可降低不确定性。如果在相同的条件下重复一个实验若干次,而每次的结果都不尽相同,比如,抛掷一枚两面均衡的硬币1000次,我们就可以观察到随机不确定性。增加实验的数量并不能减少这些变异的出现,但是却可以让我们更加准确的描绘出结果变异的概率分布。

    例子1:考虑一个化工厂毒气泄露的事故场景,有毒气体泄露后形成毒气云其最终影响取决于实时的风向。通过对相关地点风向的长期观察,我们可以拟合出不同方向d的概率分布。在事故场景发生的时候,我们无法确定毒气云一定会吹向居民区,但是我们可以使用分布F(d)寻找事件的概率。

    2.2 认知不确定性

    认知不确定性:此种不确定性主要是由于缺乏知识引起。常见的例子包括转基因食品的健康风险以及二氧化碳排放导致全球变暖的担忧。从原理上讲,如果我们获得了有关研究对象足够的知识,就可以消除这种不确定性。鉴于随着知识增加,认知不确定性可以因此降低,所以它也可以被称为可降低的不确定性。与随机不确定性相反,认知不确定性依赖于评估者的知识水平,因此它还被称为主观不确定性。

    认知不确定性也被称为无知(ignorance)(Salvatore Modica,1997)和表象不确定性。

    无知可以分为两种:认识到的无知和没有认识到的无知。认识到的无知是指,我们知道自己不知道,并希望在进行风险分析的时候采取相应措施。而没有认识到的无知则更加危险,因为我们根本不知道自己不知道,说的更严重点,就是我们对于风险评估结果的信心可能就是一种错觉。

    例子2:现在,有很多基于纳米技术的新产品不断问世。然而许多人都在担心纳米颗粒会对他们的健康以及地球环境造成伤害。但是至少到现在(2014年),纳米技术的影响还无从所知,因此与使用这项技术相关的认知不确定性还非常高。随着人们关于纳米技术的经验越来越多,认知不确定性也就会随之降低。

    从基本的词义上看,不确定性就是简单地缺少确定性,没有必要将其分成不同的类型。然而,绝大部分分析人员都发现使用上面介绍的分类很有帮助(Winkler,1996;Anderson and Hattis,1999;Der Kiureghian and ditlevsen,2009)。现在风险分析界比较一致的看法是,在随机不确定性和认知不确定性之间并没有固定的界限。如果有新的知识出现,我们可以更加深入地解释某一情况或现象,那么与之相应的随机不确定性就降低了。归根结底,可能所有的不确定性都是认知方面的。有时候,信心(confidence)和准确性(Accuracy)这两个词被当作不确定性的反义次,也就是说,在不确定性很高的时候,我们的信心很低。David Cox在1981年给出的不确定性和变量关系的阐述是“变量是物质世界中需要被度量、分析并做出合理解释的现象,而不确定性是知识的一个方面”(David Cox,1981)。

    更多相关内容
  • 生活中有很多不确定的事情, 如何用一个有效的模型和有效的算法来量化这些不确定性, 便是我们要考虑的问题。 大体上来说, 我们可以将不确定性分为两类:Aleatory uncertainty 和 epistemic uncertainty。 前者指的...

    生活中有很多不确定的事情, 如何用一个有效的模型和有效的算法来量化这些不确定性, 便是我们要考虑的问题。 大体上来说, 我们可以将不确定性分为两类:Aleatory uncertainty 和 epistemic uncertainty。 前者指的便是自然界中的某些随机性, 比方说 x ∼ U ( 0 , 1 ) x\sim U(0,1) xU(0,1) 是一个随机变量, 每次取值都不一样, 又称为偶然不确定性; 后者指的是模型的不确定性, 比方说我们假设 x ∼ U ( 0 , 1 ) x\sim U(0,1) xU(0,1), 但事实上 x ∼ G ( 0 , 1 ) x\sim \mathcal{G}(0, 1) xG(0,1), 所以它被称为认知不确定性。
    大量的数学工具用来分析量化这两种不确定性。 对于 aleatory uncertainty,常用的数学工具有随机配置方法, 广义多项式插值方法, 随机Galerkin 方法, 摄动方法, 稀疏插值方法, Beyesian 估计等; 对于 epistemic uncertainty 来说, 有 D-S证据理论,区间分析,模糊集理论等。
    这个专题主要介绍前者的算法, 会在最后涉及到一些后者的最新算法。笔者开设此专题一为记录自己的学习过程, 二为与朋友们交流一些最新的前沿进展。主要的内容基于 Prof. Dongbin Xiu 2010年写的相关书籍 Numerical Methods for Stochastic Computations: A Spectral Method Approach Princeton University Press, 2010. ISBN-10: 0691142122, ISBN-13: 978-0691142128 和最近十年发表在 JCP 和 SISC 上有影响力的相关文章。另外最近深度学习在不确定性量化领域也得到了许多应用, 比方说 George Karniadakis, Zabaras 等人的文章, 故本专题也希望对此有所涉猎。以上大概就是本专题的具体内容简介。

    展开全文
  • (原论文:On Calibration of Modern Neural Networks,论文中有一些基本的校准方法,包括温度缩放Temperature Scaling) 在大多情况下,我们只关心类别的预测 有多准,根本 care 置信度是怎样的。然而,在一些...

    不确定性估计(uncertainty estimates)

    什么是不确定性(uncertainty )

    不确定性的统计学定义

    如何创造可信任的机器学习模型?先要理解不确定性

    那「不确定性」究竟是什么?
    不确定性度量反映的是一个随机变量的离散程度(dispersion)。换句话说,这是一个标量,反应了一个随机变量有多「随机」。在金融领域,这通常被称为「风险」。
    不确定性不是某种单一形式,因为衡量离散程度的方法有很多:标准差、方差、风险值(VaR)和熵都是合适的度量。但是,要记住一点:单个标量数值不能描绘「随机性」的整体图景,因为这需要传递整个随机变量本身才行!
    尽管如此,为了优化和比较,将随机性压缩成单个数值仍然是有用的。总之要记住,「越高的不确定性」往往被视为「更糟糕」(除了在模拟强化学习实验中)。

    • xys:在深度分类模型中,随机变量就是模型预测所得的类别不确定性就是模型给出的盘位该类别的置信度(softmax输出的概率分布里最大的那个值)。

    监督学习中的不确定性(uncertainty quantification):笔记1

    什么是不确定性(uncertianty)
    关于如何定义各种不确定性,文献中的说法普遍比较模糊。关于data uncertainty,model uncertainty,distributional uncertainty 的准确描述也有争论。这里尝试从头整理。
    (1)首先,data uncertainty的定义是清晰且确定的。由于系统自身和数据收集中产生的随机性,输出所服从的概率分布对应的预测极限,就是data uncertainty
    (2)第二,关于model/distributional uncertainty的定义。我们这里还是介绍文献中主流的model/ditributional uncertainty 定义。
    Model uncertainty 定义为,给定模型所输出条件概率分布的mode的不确定性。mode是指条件概率最大处所对应的随即变量的值(xys:置信度的不确定性)
    distributional uncertainty 一般定义为,给定模型所输出条件概率分布的方差的不确定性。

    不确定性分类

    不确定估计学习小结

    一般而言,不确定性可以分类两种[2]:

    • 1.数据的不确定性:也被称为偶然(Aleatoric)不确定性,它描述的是数据中内在的噪声,即无法避免的误差,这个现象不能通过增加采样数据来削弱例如有时候拍照的手稍微颤抖画面便会模糊,这种数据是不能通过增加拍照次数来消除的。因此解决这个问题的方法一般是提升数据采集时候的稳定性,或者提升衡量指标的精度以囊括各类客观影响因素。
    • 2.模型的不确定性:也被称为认知(Epistemic)不确定性。它指出,模型自身对输入数据的估计可能因为训练不佳、训练数据不够等原因而不准确,与某一单独的数据无关。因此,认知不确定性测量的,是训练过程本身所估计的模型参数的不确定性。这种不确定性是可以通过有针对性的调整(增加训练数据等方式)来缓解甚至解决的。

    如何创造可信任的机器学习模型?先要理解不确定性

    该文阐述了三种不确定性:

    • 偶然不确定性
    • 认知不确定性
      超出分布的不确定性

    用模型不确定性理解模型

    1、模型不确定性,又称认知不确定性(epistemic uncertainty):假设你有一个单一数据点,想知道哪种线性模型是最适合数据的。但是没有数据的话,我们根本无法判断,所以需要更多数据!
    认知不确定性是由于模型的参数不确定。我们不知道模型的哪个权重能最好地表现数据,但是数据越多,不确定性越低。这种类型的不确定性在数据较少的高风险应用中很重要。
    再比如,你想搭建一个模型,要在一系列动物图片中预测哪种动物会吃掉你。假设你在训练时给模型提供的都是狮子和长颈鹿的照片,现在模型看到了一张僵尸照片。由于之前它没有见过僵尸,所以这里的不确定性就非常高。如果在训练时能提供足够的僵尸照片,那么模型的不确定性会随之减少。
    (xys:模型不确定性与数据量的关系)
    2、数据不确定性
    3、测量不确定性
    4、噪声标签

    《A Survey of Uncertainty in Deep Neural Networks》

    These factors are mainly based on an uncertainty already included in the data (data uncertainty) or a lack of knowledgeof the neural network (model uncertainty)--------------------------《A Survey of Uncertainty in Deep Neural Networks.》
    不确定性包括:(1)数据不确定性:事先存在于数据中的不确定性,(2)模型不确定性:神经网络知识的缺乏(模型没有训练好,模型能力不够)

    什么是不确定性估计值(uncertainty estimates:名词,表示估计值)

    Estimating the predictive uncertainty is not sufficient for safe decision-making. Furthermore, it is crucialto assure that the uncertainty estimates are reliable.To this end,the calibration property (the degree of reliability) of DNNs has been investigated and re-calibration methods have been proposed [15], [47], [48] to obtain reliable (well-calibrated)uncertainty estimates.--------------------------《A Survey of Uncertainty in Deep Neural Networks.》

    • Estimating the predictive uncertainty:动词,指的是产生不确定性值的过程和方法
    • the uncertainty estimates:名词,指的是不确定性估计值(不确定性值)。例如,在分类问题中,用softmax输出的概率分布、或者softmax输出的概率分布中的最大值(置信度)作为不确定性估计值。
    • reliable (well-calibrated)uncertainty estimates:可靠的(well-calibrated)不确定性估计值
    • calibration property:可靠性程度,一般用calibration error来衡量。
    • re-calibration methods:使不确定性值更加可靠的方法

    Through a series of experiments on classification and regression benchmarks, we demonstrate that our method produces well-calibrated uncertainty estimates which are as good or better than approximate Bayesian NNs-----《Simple and Scalable Predictive Uncertainty Estimation using Deep Ensembles》

    • well-calibrated uncertainty estimates,明显可以看出uncertainty estimates指的是模型输出的预测概率值。(estimate可以作为名词)
    • Simple and Scalable Predictive Uncertainty Estimation using Deep Ensembles,可以看出Uncertainty Estimation指的是通过某种方法产生不确定性估计值(产生uncertainty estimates)

    不确定估计学习小结(笔者认为其理解并不太好)

    (1)以人脸识别为例,输入一张人脸图像,得到一个特征向量embedding,将此特征向量与底库中的特征向量计算相似度,从而根据此相似度来判断两张人脸图像是否属于同一个ID。假设相似度很高(95%),则认为这两张人脸图像属于同一个人。这种将一张输入图像x映射到高维空间中的一个点embedding的方式,可以被称为确定性预测(deterministic prediction)。
    但以同样的人脸系统、相同的底库来看,假设我们输入一张很模糊的人脸或者一张猫的图片,此时系统可能会给出同样是95%的相似度。然而,在这种情形下,这种相似度得分并不能反映出两张图片是属于同一ID的,即这个相似度结果不可信。因此,我们不仅需要一个相似度得分,还需要一个能判断此相似度是否可信的得分。具体而言,假设在此种情形下,即使两种图片的相似度得分是95%,但只有10%的得分认为该相似度得分可行,那么做出判断就需要更加谨慎。
    (2)再举一个例子,假设我们使用了cifar100来训练了一个分类模型,现在用户随意找了张不属于此100类的图片(例如猫),输入到该分类模型中,那么这个“猫”必然会分类到cifar100中的其中一个类别,例如认为是飞机。从模型来看,这个分类置信度得分可能很高,坚定认为这个“猫”就是“飞机”;从人的认识来看,此次分类结果是失败的。面对这种情况,我们希望模型不仅能给出分类的置信度得分,还希望模型能给出一个判断此次置信度得分是否可信的判断(xys认为更好的说法:我们希望模型不仅能给出分类的置信度得分,还希望模型能给出的置信度能恰好等于模型真实的预测准确率。因为分类问题中模型的最终输出是类别,而置信度是模型对判断为该类别的信心程度,已经是对模型给出的此次决策的可信程度的判断了)
    (3)从上面几个案例来看,无论是相似度得分还是置信度得分,都不一定可信,即模型对于给出的判断具有一定程度的“不确定性”。那么,我们就希望知道模型对于此次判断有多少把握,对于“不确定性”得分高的判断(即把握度低),我们可以进行额外的处理操作。(xys:要使模型给出的不确定性估计是可靠的,就需要对模型进行校准,使得模型达到well-calibrated的状态。)

    • xys—对模型给出的得分或置信度等进行可靠性的估计(是否可信,以及可信任的程度),即为不确定性估计。也可认为:不确定性估计 = 计算置信度与真实准确率之间的误差程度。(该解释是笔者对上述引文的直接理解,但实际上笔者认为深度学习领域很少这样理解"uncertainty estimates")
    • xys—如果模型给出的得分或置信度正好能准确地表示预测结果的可信任程度(即置信度恰好等于样本的准确率),那么就说模型是well-calibrated的。
    • xys—然而,在深度学习中,很多时候会将“模型输出的置信度”与“uncertainty estimates”两个词混用。意思是:模型输出的置信度(通常为一个表示类别概率的小数)就表示了最终预测类别的不确定性(可能性)。即uncertainty esimates= uncertainty= probability = Confidence。例如:We propose an alternative to Bayesian neural networks, that is simple to implement, readily parallelisable and yields high quality predictive uncertainty estimates.--------《Simple and Scalable Predictive Uncertainty Estimation using Deep Ensembles》
      这里,“uncertainty estimates”指的是模型输出的置信度,而不是“计算置信度与真实准确率之间的误差程度”。

    为何不确定性估计重要

    R TALK | 旷视危夷晨:不确定性学习在视觉识别中的应用

    上面介绍完之后,我们再来谈谈它为什么重要。简单来讲,不确定性估计在深度学习之中有着广泛的应用场景,为其落地发挥着不可替代的重要作用,下面讲一些比较要代表性的场景:

    • 高风险应用场景。这类场景需要非常精确的估计,因为一旦估计错误,可能出现严重的后果,例如医疗图像诊断、自动驾驶。
    • 大量机器学习场景。比如,在主动学习(Active Learning)这种技术框架中,模型需要确定哪些样本更值得被打标签。这也涉及到系统对于估计样本“价值程度”不确定性。同时,的研究人员往往也会发现单纯使用机器学习系统进行判断时,会存在少量样本系统无法做出很好的判断,因此这时人们会邀请专家来标记这部分困难样本,以训练模型。
    • 强化学习。强化学习由于经常要权衡exploration和exploitation操作,因此如何确定每一台机器的概率分布是否被准确估计,就是对这台机器模型参数的不确定性估计。
    • 对处于训练数据分布之外情况的检测。由于很多时候测试数据并不在训练数据中,因此如果测试数据超出了训练数据的数据分布,那这样的预测是没有准确度可言的,这时候就需要一个额外的不确定性估计来确认对当前的预测有多大把握。

    如何创造可信任的机器学习模型?先要理解不确定性

    校准:下一件大事?
    警告:只是因为一个模型能够确定一个预测结果的置信区间,并不意味着该置信区间能真正反映结果在现实中的实际概率!
    展望未来,如果我们要信任部署在现实世界中的机器学习系统(机器人、医疗系统等),我认为「证明我们的模型能够正确理解世界」的一种远远更为强大方法是针对统计校准测试它们。优良的校准也意味着优良的准确度,所以这是一个更严格的更高的优化指标。

    用模型不确定性理解模型

    你为什么应该关注不确定性?
    1、一个重要的例子就是高风险的应用,假设你正在创建一个模型,可以帮助医生判断病人的严重程度。在这种情况下,我们不应该仅仅关心模型的精确度,更要关注模型对其预测结果有多大程度的肯定。如果不确定性太高,医生需要谨慎决策。
    2、自动驾驶汽车是另外一个有趣的例子。如果模型不确定是否有行人在马路上,我们可以利用这一信息让车子减速,或者发出警报让驾驶员手动操作。
    3、不确定性还可以在缺乏数据样本的情况下帮助我们。如果模型不是在与样本相似的数据上训练的,它可能无法输出想要的结果。谷歌照片曾经将黑种人错误地认成了大猩猩,就是由于这个原因,种类单一的训练集可能导致令人尴尬的结果。
    4、不确定性的最大用途,也是本文的主要目的,就是为模型排除错误

    怎么生成不确定性估计(Uncertainty Estimation或者Estimating the predictive uncertainty)

    《A Survey of Uncertainty in Deep Neural Networks.》第三部分:

    • Single deterministic methods give the prediction basedon one single forward pass within a deterministic network. The uncertainty quantification is either derivedby using additional (external) methods or is directly predicted by the network(xys:就是将模型直接输出的某个值(如softmax或置信度)当做不确定性估计值)
    • Bayesian methods cover all kinds of stochastic DNNs,i.e. DNNs where two forward passes of the same samplegenerally lead to different results.
    • Ensemble methods combine the predictions of severaldifferent deterministic networks at inference.(集成方法)
    • Test-time augmentation methods give the predictionbased on one single deterministic network but augmentthe input data at test-time in order to generate several predictions that are used to evaluate the certainty of the prediction.(测试时,将数据多次增广,分别输入模型获得多个预测,然后据此来计算预测的不确定性)

    评价不确定性估计的指标(UNCERTAINTY MEASURES AND QUALITY)

    《A Survey of Uncertainty in Deep Neural Networks.》第四部分:UNCERTAINTY MEASURES AND QUALITY
    uncertainty estimation与uncertaity measures/quality有区别:

    • uncertainty estimation:产生表示不确定性的概率值或者置信度的过程或方法(=Estimating the predictive uncertainty)。
    • uncertaity measures/quality:对各种uncertainty estimation的测量/质量,即定量计算这些uncertainty estimation的好坏。主要是采用一些指标如softmax的最大值、熵、互信息、KL散度、softmax的均值和方差等等)

    容易混淆的术语

    uncertainty = probability = Confidence

    Confidence calibration – the problem of predicting probability estimates representative of the true correctness likelihood – is important forclassification models in many applications.----《On Calibration of Modern Neural Networks》

    • uncertainty = probability = Confidence , 不确定性=概率=置信度
    • Confidence calibration = uncertainty calibration,
    • predicting probability estimates,这里的estimate意为“估计值”(其实就是指这个probability)
      有时会见到术语predicting uncertainty estimates ,其实也就是"不确定性(概率)估计值"。
      所以predicting uncertainty estimates = predicting probability estimates(这里estimate作为名词, estimate=Estimation)

    a network should provide a calibrated confidence measure in addition to its prediction.
    Calibrated confidence estimates are also important for model interpretability
    ----------《Simple and Scalable Predictive Uncertainty Estimation using Deep Ensembles》

    • uncertainty = probability = Confidence , 不确定性=概率=置信度
    • estimate =measure(xys:这里measure不太规范,在《A Survey of Uncertainty in Deep Neural Networks》中,estimate 和measure有区别
      — --uncertainty estimate :模型输出的表示不确定性的概率值或者置信度。
      ------uncertaity measures/quality:对各种uncertainty estimate 的测量/质量,即定量计算这些uncertainty estimation的好坏。主要是采用一些指标如softmax的最大值、熵、互信息、KL散度、softmax的均值和方差等等)

    uncertainty estimates、uncertainty estimation、uncertainty measure

    参见论文:《A Survey of Uncertainty in Deep Neural Networks.》

    • predictive uncertainty estimates:指的是模型输出的预测概率值。(estimate可以作为名词)
    • uncertainty estimation:产生表示不确定性的概率值或者置信度的过程或方法(=Estimating the predictive uncertainty)。
    • uncertaity measures/quality:对各种uncertainty estimation的测量/质量,即定量计算这些uncertainty estimation的好坏。主要是采用一些指标如softmax的最大值、熵、互信息、KL散度、softmax的均值和方差等等)

    相关论文

    Uncertainty 相关论文

    模型校准的概念与原理

    Calibration: 一个工业价值极大,学术界却鲜有研究的问题!(原论文:On Calibration of Modern Neural Networks,论文中有一些基本的校准方法,包括温度缩放Temperature Scaling)

    在大多情况下,我们只关心类别的预测 有多准,根本不 care 置信度是怎样的。然而,在一些实际应用场景下,置信度的度量也同样重要。
    例如 对于自动驾驶中的目标识别任务,车辆的前方出现了一个人,神经网络会将其识别成塑料袋,此时输出的置信度为50%(低于阈值),则可通过其它传感器进行二次的正确识别(识别为人)。但想想看,若神经网络对塑料袋预测的置信度为90%会怎样?
    再例如,使用 Resnet 模型简单的对一些图片任务进行训练,收敛后的模型对测试集的平均置信度高达80%-85%,然而只有将近70%的图片能被正确分对(红色代表分错,绿色代表分对)。这意味着啥?训练好的模型好像有点盲目自信,即出现 overconfidence 现象,或者可以称为模型的准确率和置信度不匹配(miscalibration)。

    Expected Calibration Error (ECE)模型校准原理解析

    1. 什么是模型校准?
      模型校准就是要让模型结果预测概率和真实的经验概率保持一致。说人话也就是,在一个二分类任务中取出大量(M个)模型预测概率为0.6的样本,其中有0.6M个样本真实的标签是1。总结一下,就是模型在预测的时候说某一个样本的概率为0.6,这个样本就真的有0.6的概率是标签为1。
       上面是一个正面的例子,下面我再来举一个反面的例子说明模型校准的重要性。还是在一个二分类任务中取出大量(M个)模型预测概率为0.6的样本,而这些样本的真实标签全部都是1。虽然从accuracy的角度来考察,模型预测样本概率为0.6最后输出时会被赋予的标签就是1,即accuracy是100%。但是从置信度的角度来考察,这个模型明显不够自信,本来这些全部都是标签为1的样本,我们肯定希望这个模型自信一点,输出预测概率的时候也是1。

      如何创造可信任的机器学习模型?先要理解不确定性

    Hinton等人最新研究:大幅提升模型准确率,标签平滑技术到底怎么用?

    本文通过实验证明,标签平滑不仅能够提升模型的泛化能力,还能够提升模型的修正能力,并进一步提高模型的集束搜索能力。

    calibration的概念、定义与例子

    所谓校准:预测置信度与事件发生的真实概率的匹配程度,二者相等即为well-calibrated,否则就存在calobration error。

    Firstly, we shall examine calibration [12, 13], a frequentist notion of uncertainty which measures the discrepancy between subjective forecasts and(empirical) long-run frequencies.
    The quality of calibration can be measured by proper scoring rules[17] such as log predictive probabilities and the Brier score [9]. Note that calibration is an orthogonal concern to accuracy: a network’s predictions may be accurate and yet miscalibrated, and vice versa
    ------《Simple and Scalable Predictive Uncertainty Estimation using Deep Ensembles》

    • calibration的定义和参考文献
    • The quality of calibration 校准的质量可以通过布里尔分数等来测量

    The probability that a system outputs for an event should reflect the true frequency of that event: ifan automated diagnosis system says 1,000 patients have cancer with probability 0.1, approximately100 of them should indeed have cancer. In this case, we say the model is uncertainty calibrated.------《Verified Uncertainty Calibration》

    a network should provide a calibrated confidence measure in addition to its prediction. In other words, the probability associated with the predicted class label should reflect its ground truth correctness likelihood. -------《Simple and Scalable Predictive Uncertainty Estimation using Deep Ensembles》

    • 什么是一个校准好的confidence measure

    Let h be a neural network with h ( X ) = ( ˆ Y , ˆ P ) h(X) =( ˆY , ˆP) h(X)=(ˆY,ˆP), where ˆY is a class prediction and ˆP is its associated confidence, i.e. probability of correctness. We wouldlike the confidence estimate ˆP to be calibrated, which in-tuitively means that ˆP represents a true probability. Forexample, given 100 predictions, each with confidence of 0.8, we expect that 80 should be correctly classified. Moreformally, we define perfect calibration as ----《On Calibration of Modern Neural Networks》

    • calibration的公式定义,举例

    如何评估uncertanty estimates的好坏(是否well-calibrated)

    NLL is a proper scoring rule and a popular metric for evaluating predictive uncertainty [49]. For classification we additionally measure classification accuracy andthe Brier score-----《Simple and Scalable Predictive Uncertainty Estimation using Deep Ensembles》

    • evaluating predictive uncertainty:评估不确定性,即对不确定性的校准情况(校准:置信度与真实概率的匹配情况)进行评估。它与uncertainty estimates是两个概念。

    A clas-sifier is well-calibrated, if the probability associated withthe predicted class label matches the probability of suchprediction being correct (Br ̈ocker, 2009; Dawid, 1982)

    • well-calibrated的参考文献

    More formally, we define perfect calibration(well-calibrated) as: ------------《On Calibration of Modern Neural Networks》
    在这里插入图片描述

    • perfect calibration或well-calibrated的公式化定义

    Definition 2.1. The classifier f is perfectly calibrated, if for any input instances x ∈X, the prediction and the canonical calibration probabilities match: z = π(z) (Dawid, 1982)----------《Mix-n-Match : Ensemble and Compositional Methods for Uncertainty Calibration in Deep Learning》

    Definition 2.3 (Top-label calibration error). The top-label calibration error examines the difference between the model’s probability for its top prediction and the true probability of that prediction given the model’s output:-----------------《Verified Uncertainty Calibration》

    • 多分类情况下,calobration error的公式化定义

    常用的校准方法(Calibration Methods/有时也称recalibration methods)

    《A Survey of Uncertainty in Deep Neural Networks》

    • Regularization methods applied during the training phase(如lable smooth,mixup等)
    • Post-processing methods applied after the training pro-cess of the DNN(后处理,如temperature scaling)
    • Neural network uncertainty estimation methods(如集成学习、贝叶斯方法)

    《On Calibration of Modern Neural Networks 》的calibration methods一节有大量的校准方法。
    Uncertainty Calibration Library----对应文章:Verified Uncertainty Calibration

    深度学习模型不确定性校准方法对比

    (NeurIPS 2019 的 Can You Trust Your Model’s Uncertainty? Evaluating
    Predictive Uncertainty Under Dataset Shift 论文为主线,回顾近年顶级机器学习会议对于
    dataset shift 和 out-of-distribution dataset 问题相关的论文,包括了 Temperature
    scaling [1],DeepEnsemble [2],Monte-Carlo Dropout [3] 等方法)

    pytorch神经网络_使用pytorch进行神经网络校准(温度缩放Temperature Scaling)

    https://github-dotcom.gateway.web.tr/gpleiss/temperature_scaling(基于pytorch的模型校准:temperature_scaling)

    A simple way to calibrate your neural network. The temperature_scaling.py module can be easily used to calibrated any trained model.
    Based on results from On Calibration of Modern Neural Networks.

    Learning Confidence for Out-of-Distribution Detection in Neural Networks
    《在神经网络中计算置信度用于域外检测》阅读笔记
    在这里插入图片描述

    校准方法的分析和对比

    《Verified Uncertainty Calibration》----分析了scaling系列方法(Plattscaling [12], isotonic regression [13], and temperature scaling)和histogram binning方法的优缺点

    《Simple and Scalable Predictive Uncertainty Estimation using Deep Ensembles》分析了贝叶斯方法、MC-dropout方法的优缺点

    《Mix-n-Match : Ensemble and Compositional Methods for Uncertainty Calibration in Deep Learning
    》-----

    • introduction部分将校准方法进行了分类:后验校准(post-hoc manner.),前置校准(ab-initio well calibrated model)
    • introduction部分介绍了深度学习的校准方法(也属于后验方法):Recently, calibra-tion methods for multi-class deep neural network classifiershave been developed, which include: temperature, vector& matrix scaling (Guo et al., 2017), Dirichlet scaling (Kullet al., 2019), intra order-preserving method (Rahimi et al.,2020) and Gaussian processes based calibration methods(Milios et al., 2018; Wenger et al., 2020)
    • 2.1节将校准方法分为:参数化方法、非参数化方法

    不确定性校准程度的评价指标

    论文:On Calibration of Modern Neural Networks

    有四个指标的公式化定义:

    • Reliability Diagrams
    • Expected Calibration Error (ECE)
    • Maximum Calibration Error (MCE)
    • Negative log likelihood

    In the case ofmulti-class K-way classification, the popular softmax cross entropy loss is equivalent to the log likelihood and is a proper scoring rule. Interestingly, L(θ) = −S(pθ,(y,x)) = K−1 ∑Kk=1(δk=y −pθ(y = k|x))2, i.e., minimizing the squared error between the predictive probability of a label and one-hot encoding of the correct label, is also a proper scoring rule known as the Brier score [9].-----《Simple and Scalable Predictive Uncertainty Estimation using Deep Ensembles》

    • 对多分类问题,softmax交叉熵=对数似然
    • 布里尔分数=预测概率与one-hot标签之间的平方误差

    朴素贝叶斯:概率类模型的评估指标

    内容包括(基于sklearn的代码):
    1.布里尔分数Brier Score
    2.对数似然函数Log Loss
    3.可靠性曲线Reliability Curve
    4.预测概率的直方图
    5.校准可靠性曲线

    birer score 与brier kill score

    Brier Score – How to measure accuracy of probablistic predictions
    What is a Brier Score?

    While the Brier Score (BS) tells you how good a model is, it is still not a relative metric. That is, it does not tell you how good a model is compared to others. A useful metric to compare the performance of one more in comparison with another is the ‘Brier Skill Score’.
    Brier Skill Score = (BSE – BSN) / BSE
    where: BSE = Brier Score of existing model
    BSN = Brier Score of new model
    If a Brier Skill Score is positive, then the new model makes more accurate predictions. If the Brier Skill Score is negative, then the new model makes worse predictions. And if the Brier Skill Score is equal to zero, then the new model offers no improvement over the existing model.
    For example,
    suppose our existing model has a Brier Score of BSE = 0.4221 and our new model has a Brier Score of BSN = 0.3352. The Brier Skill Score of our new model can be calculated as:
    Brier Skill Score = (0.4421 – 0.3352) / (0.4421) = 0.2418.
    Since this number is positive, it’s an indication that our new model provides more accurate forecasts relative to the existing model.
    The higher the Brier Skill Score, the bigger the improvement is in the new model compared to the existing model.

    多分类的评价指标

    在这里插入图片描述
    摘自:(Calibration of Convolutional Neural Networks)

    多分类的布里尔分数Brier Score计算

    briercalc: Brier Scores (and decompositions) for multiple classes(代码)

    In the case ofmulti-class K-way classification, the popular softmax cross entropy loss is equivalent to the log likelihood and is a proper scoring rule. Interestingly, L(θ) = −S(pθ,(y,x)) = K−1 ∑Kk=1(δk=y −pθ(y = k|x))2, i.e., minimizing the squared error between the predictive probability of a label and one-hot encoding of the correct label, is also a proper scoring rule known as the Brier score [9].-----《Simple and Scalable Predictive Uncertainty Estimation using Deep Ensembles》

    • 对多分类问题,softmax交叉熵=对数似然
    • 布里尔分数=预测概率与one-hot标签之间的平方误差

    可靠性图与Expected Calibration Error (ECE)

    marcoromanelli-github/ReliabilityDiagrams(从模型输出的softmaxt开始进行计算,又详细的注释)

    hollance/reliability-diagrams(对图形有详细的解释,论文中可以借鉴)

    zygmuntz/classifier-calibration(包含两种校准方法)

    ECE的计算公式参照:Expected Calibration Error (ECE)模型校准原理解析(ECE公式是基于可靠性图的bin分区的)

    一个好的github评价指标实现

    https://github.com/markus93/NN_calibration/tree/master/scripts/calibration
    (对应的文章:Calibration of Convolutional Neural Networks)

    与不确定性(置信度)相关的研究

    展开全文
  • 不确定性分析

    千次阅读 2017-05-09 15:02:42
    变化情况 处理方法 变化有一定范围 盈亏平衡分析 敏感性分析 变化遵循统计规律 概率分析 变化既无范围又无规律 准则分析

    一、概述

    不确定性分析是指对决策方案受到各种事前无法控制的外部因素变化与影响所进行的研究和估计。它是决策分析中常用的一种方法。通过该分析可以尽量弄清和减少不确定性因素对经济效益的影响,预测项目投资对某些不可预见的政治与经济风险的抗冲击能力,从而证明项目投资的可靠性和稳定性,避免投产后不能获得预期的利润收益,以致使企业亏损

    二、产生原因

    为了提高技术经济分析的科学性,减少评价结论的偏差,就需要进一步研究某些技术经济因素的变化对技术方案经济效益的影响,于是就形成了不确定性分析。

    决策在实施过程中,将受到许多因素的影响。产生不确定性的因素有:

    1、通货膨胀和物价变动

    2、技术装备和生产工艺变革;

    3、生产能力的变化;

    4、建设资金和工期的变化;

    5、国家经济政策和法规、规定的变化。

    例如,企业的经营决策将受到国家经济政策调整、市场需要变化、原材料和外协件供应条件改变、产品价格涨落、市场竞争加剧等因素的影响,这些因素大都无法事先加以控制。

    因此,为了作出正确决策,需要对这些不肯定因素进行技术经济分析,计算其发生的概率及对决策方案的影响程度,从中选择经济效果最好(或满意)的方案。

    三、分析方法

    进行不确定性分析,需要依靠决策人的知识、经验、信息和对未来发展的判断能力,要采用科学的分析方法。

    通常采用的方法有:

    ①计算方案的收益值。即把各因素引起的不同收益计算出来,收益最大的方案为最优方案;

    ②计算方案的后悔值。即计算出由于对不肯定因素判断失误而采纳的方案的收益值与最大收益值之差,后悔值最小的方案为最佳方案;

    ③运用概率求出期望值,即方案比较的标准值,期望值最好的方案为最佳方案;

    ④综合考虑决策的准则要求,不偏离规则。

    概括起来就是不确定性分析可分为盈亏平衡分析敏感性分析概率分析准则分析

    其中盈亏平衡分析只用于财务评价,敏感性分析和概率分析可同时用于财务评价和国民经济评价。

    按不确定性类型及处理方法不同也可进行下列分类:

    变化情况                 处理方法
    
    变化有一定范围         盈亏平衡分析  敏感性分析
    
    变化遵循统计规律               概率分析
    
    变化既无范围又无规律                  准则分析

    展开全文
  • 研究其蕴含的关键理论问题,以此为基础初步建立了一套非精确概率可靠性理论,主要包括不确定性量化快速算法、多源异类信息的统一表示与建模、认知不确定性下的可靠性分析方法、非精确概率下典型系统的可靠性评估方法...
  • 不确定性语义分割论文、代码汇总

    千次阅读 2022-03-26 13:18:37
    在此基础上,我们提出了一种基于不确定性分析和图卷积网络的分割细化方法。我们利用卷积网络在特定输入量中的不确定性水平来建立一个半监督的图学习问题,该问题通过训练一个图卷积网络来解决。为了测试我们的方法,...
  • 发生之后可能会受到干扰的是不确定性数学方法 发生之后就能确定结果的是确定性数学方法概率与随机数学 概率论(古典概型) 随机过程(受随机因素的影响) 马氏链模型 排队论与随机排队论(排队等待,流动周转,...
  • 【参数不确定】敏感性分析(sensitivity analysis)

    万次阅读 多人点赞 2020-04-22 20:17:41
    【运筹学】灵敏性分析
  • 05 数据分析 - 诊断性分析方法

    千次阅读 2020-04-24 21:40:22
    诊断性分析: 根据业务逻辑,通过数据寻找引起最终结果的原因和可以改变未来结果的方法 分析目的 解决问题 坏的结果 -> 产生问题的原因和解决的方案 发现机会 好的结果 -> 在机会出现的时候发现机会 分析步骤...
  • 处理不确定数据的方法研究

    千次阅读 2016-01-25 11:41:35
    成果简介: ...本研究针对不确定性的数学理论、算法及应用开展了多层次研究:在随机性数据处理方面,应用已有的成熟算法对实际生活中常见的不确定性现象开展分析,包括了多维标度法在亲属关系中的分析
  • 常用的统计分析方法

    千次阅读 2020-12-27 12:53:30
    分析方法 频率分析 主要用于查看数据基本分布特征,数据清晰,各种统计量、基本报告数据源等 数据探索 探索性分析主要是从统计的角度查看统计量来评估数据分布,主要用于异常值侦测、正态分布检验、数据分段、分位点...
  • 什么是数据分析方法

    万次阅读 2018-09-04 09:26:21
    数据分析方法确定分析思路需要以营销、管理等理论为指导。这些 跟数据分析相 关的营销、管理等理论统称为数据分析方法论。可以把方法论理解为指南针,在分析方法论的...数据分析方法论的重要 很多人在做数...
  • PCA:组成分分析,是常见的降维方法,是确定性算法,第一次运行结果和第n次结果一致,不会受运行次数的影响。 K-means: 聚类算法,每次运行会随机初始化k个聚类中性点,因此算法结果具有随机性,不是确定性算法;K-...
  • 软件测试需求分析方法

    万次阅读 多人点赞 2018-03-26 20:51:58
    从适用、准确、互操作、保密安全、成熟、容错、易恢复、易理解、易学、以操作、吸引、时间特性、资源利用、易分析性、...易测试、适应、易安装、共存、易替换和依从方面的定义出发...
  • 可行性分析针对的问题是项目能能够收回投资,系统方案建议则是针对项目的解决方案。可行性是对组织将要开发的信息系统价值或实用性的度量。可行性分析是度量可行性的过程。信息系统在生个生命周期内都应该度量可行...
  • 最常用的四种大数据分析方法

    万次阅读 多人点赞 2017-09-19 09:32:13
    本文主要讲述数据挖掘分析领域中,最常用的四种数据分析方法:描述型分析、诊断型分析、预测型分析和指令型分析。
  • 敏感性分析 (SA) 是分析不同应用条件下模型行为的基本实践。提出了许多 SA 技术,从简单的筛选方法到计算成本高昂的基于方差的方法。本篇内容我们通过将 Morris 方法来对模型进行分析。
  • 六、分析:偶然不确定性和认知不确定性描述的本质是什么? 不确定性度量的质量 与训练样本距离的不确定性 实时应用 七、结论 一、摘要: 主要有两大类不确定性,偶然不确定性...
  • Beta 多样排序分析方法与比较

    千次阅读 2019-08-14 09:48:37
    β 多样是不同生态系统之间多样的比较,是物种组成沿环境梯度或者群落间的变化率,用来表示物种种类对环境异质的反应。一般来说,包括物种改变(多少)和物种产生(有无)两部分。 意义 衡量不同因素下的样本...
  • 基于Kriging代理模型的结构可靠性分析方法

    千次阅读 多人点赞 2020-03-05 17:02:09
    在进行实验设计前需要确定变量空间,如果变量是正太分布,那么理论上变量空间是[-∞\infty∞,+∞\infty∞],很明显能做到,因此研究人员提出了很多确定方法,例如根据预估失效概率的大小1、使用MCS法。 一般情况.....
  • 9种常用的数据分析方法

    万次阅读 2020-08-17 11:09:23
    举例:分析某产品的销售额较低的原因,用公式法分解 图片.png 二、对比分析 对比法就是用两组或两组以上的数据进行比较,是最通用的方法。 我们知道孤立的数据没有意义,有对比才有差异。比如在时间维度上的...
  • 数据分析方法论(6种方法,8个思路)

    万次阅读 多人点赞 2020-02-26 17:23:05
    在介绍数据分析方法论和思路之前,我们还是先不厌其烦地看一下数据分析的流程,简单来说分为以下六个步骤: 1、明确分析的目的,提出问题。只有弄清楚了分析的目的是什么,才能准确定位分析因子,提出有价值的问题...
  • 16种常用的数据分析方法-相关分析

    万次阅读 2020-05-26 21:13:17
    相关分析是一种简单易行的测量定量数据之间的关系情况的分析方法。可以分析包括变量间的关系情况以及关系强弱程度等。 如:身高和体重的相关性;降水量与河流水位的相关性;工作压力与心理健康的相关性等。 ...
  • 7大需求分析方法与5大分析过程

    万次阅读 2020-06-15 18:09:49
    以下就是为大家推荐的8大类需求分析方法: 流程图 原型 用例图 用户故事(3C原则) 词汇表 实体关系图ERD 分解图 下面着重介绍最常见的3种方法:流程图、原型、用例图方法:...
  • 常见的数据分析方法有哪些 对于每个科研工作者而言,对实验数据进行处理是在开始论文写作之前十分常见的工作之一。但是,常见的数据分析方法有哪些呢?常用的数据分析方法有:聚类分析、因子分析、相关分析、对应...
  • 回归分析是一种预测的建模技术,它研究的是因变量(目标)和自变量(预测器)之间的关系。这种技术通常用于预测分析,时间序列模型以及发现变量之间的因果关系。 使用曲线/线来拟合这些数据点,在这种方式下,从曲线...
  • 定性和定量大数据分析方法指南

    千次阅读 2020-09-17 17:10:52
    定性和定量大数据分析方法?我们看到数据时想到的第一件事是什么?第一个本能是找到模式,联系和关系。我们查看数据以发现其中的含义。  同样,在研究中,一旦收集了数据,下一步就是从中获取见解。例如,如果服装...
  • spss分析方法-聚类分析

    万次阅读 2022-06-14 16:42:02
    聚类分析是根据研究对象的特征,按照一定标准对研究对象进行分类的一种分析方法。 下面我们主要从下面四个方面来解说: 一、实际应用 聚类分析的目标就是在相似的基础上收集数据来分类。聚类源于很多领域,包括...
  • 知道怎样计算权重?告诉你8种确定权重方法

    万次阅读 多人点赞 2020-07-16 14:32:22
    计算权重是一种常见的分析方法,在实际研究中,需要结合数据的特征情况进行选择,比如数据之间的波动是一种信息量,那么可考虑使用CRITIC权重法或信息量权重法;也或者专家打分数据,那么可使用AH...
  • 1.2聚类分析按研究方法分类 1.系统聚类法:由N类–1类 2.分解法:由1类—N类 3.K-均值法:事先在聚类过程中确定在K类,适用于数据量大的数据 4.有序样品的聚类:N个样品排序,次序相邻的样品聚成一类 5.模糊聚类法:...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 714,385
精华内容 285,754
热门标签
关键字:

属于不确定性分析方法的是