新闻

您对数据的正确性有 98% 的信心吗?

Written by test | May 9, 2023 9:12:39 AM

在使用机器学习时,神经网络可能会自以为是地判断自己的准确性,但人工智能信心分数背后的真实情况是什么?网络置信度与现实有一些相似之处,但你如何相信你的网络是正确的呢?

Machine learning is a great way to analyze vast amounts of visual data from images, film, or real-time video footage to identify people or meaningful objects within a scene. This data can then be manipulated for use in smart applications, such as facial identification for security systems, human attentiveness in driver monitoring systems, or identification of defective objects on a factory conveyor belt, to name just a few. When visualizing the result of classifiers or object detectors, there are often percentages shown next to the identified item called “the confidence score”. Below is an example of an object detector in a city environment with the confidence score shown above each detected object:

但是,置信度究竟是什么意思,它有哪些用途?人们普遍认为,置信度是一个介于 0 和 1 之间的数字,表示机器学习模型的输出正确并能满足用户要求的可能性。

乍一看,这听起来很不错!网络似乎能以某种方式自行判断其正确的可能性。然而,仔细观察后发现,情况显然并非如此,如下图所示。

网络无法判断自身输出的正确性

如果网络能够判断自己输出的正确性,那就意味着它已经知道了答案。答案要么是 0%,要么是 100%,绝不会在两者之间出现。但仔细观察城市图像的一部分,我们会发现以下情况:

在这里,网络给骑小摩托的人打出了 81.2% 的信任分。

对于人类来说,很明显图片上显示的是一个骑着踏板车的人,但出于某种原因,网络只有 81.2% 的确定性。但 81.2% 究竟意味着什么呢? 它是否意味着网络预计在 18.8% 的人骑摩托车的情况下会出错呢? 很明显,这应该是 100% 的置信度,因为这确实是一张人骑滑板车的照片。 这是否意味着我们只看到了 81.2% 的人类?这到底是怎么回事?

简而言之,信心不是概率。

相反,网络的置信度输出可视为相对置信度,而非绝对指标。 换句话说,网络在 98% 的置信度识别中比在 81% 的识别中更有信心,但对 98% 或 81% 不应有绝对的解释。这也是为什么置信度分数通常会附带一个阈值,代表真假之间的界限。

如下图所示,我们可以很容易地缩放绝对置信度,这也是让我们理解相对而非绝对置信度的一种方法。

为数据增强信心

置信度输出指标通常基于大量计算。不过,工程师可以通过一个微不足道的方法来随意提高(或降低)置信度。

在我们的城市图像中,网络对滑板车的置信度仅为 81.2%。但我们可以很容易地修改网络,在输出答案前简单地计算置信度的平方根,从而使网络计算时间延长一步。这样,我们现在得到的值就不是 0.81,而是 √0.812 = 0.9,即 90%。我们刚刚提高了网络的置信度输出!再次执行相同的平方根运算,我们得到了 95% 的置信度,而再次执行相同的平方根运算,我们得到了 97% 的置信度。对于一些微不足道的数学运算来说,这还算不错。我们再次得出结论:绝对置信度值没有有效的解释。

显然,我们可以很容易地修改绝对置信度值,使其变大或变小。这就说明,绝对置信度在某种意义上是没有意义的,因为它们可以被操纵来显示任何值。

与灰熊徒手搏斗

In a recent poll, YouGov asked Americans and Britons how confident they were that they could beat various animals in unarmed combat. What has this got to do with neural network confidence you ask? Let's find out.

下图显示了美国和英国人如何看待(或自我评估)他们与各种动物徒手搏斗的机会。

Source; Americans are more confident than Britons that they could beat any animal in a fight, YouGov UK

人们用手与灰熊搏斗的自我评估与神经网络的置信度之间有几种相似之处。

首先,这是一种自我评估。就像网络的信心分数一样,个人被要求对一种他们可能从未经历过的情况进行信心估计;网络可能从未见过骑滑板车的人,而大多数美国男性从未与灰熊打过架。

其次,我们应该如何解释这些数字?就像我们很难知道 81% 的人有信心判断出骑滑板车的人是人一样,如果 6% 的美国男性认为他们能够在实际徒手搏斗中击败灰熊,这究竟意味着什么?这是否意味着,如果我们让 100 个美国人与灰熊搏斗,94% 的人会逃跑,6% 的人会搏斗--并取得胜利?同样,对具体情况下人类信心的解释也不明确。

最后,与神经网络的置信度一样,相对自我评估中也蕴含着信息。例如,我们可以得出这样的结论:与狮子(8%)相比,美国人更容易在与鹅的战斗中获胜(61%),因此,即使绝对的自我信心评估没有给我们带来多少价值,但如果有选择的话,人们应该选择与鹅而不是狮子战斗。

你有多自信?

说到底,置信度值本身就是一个毫无意义的数字,尤其是相对于绝对值而言。相对置信度值可以提示网络在哪些方面的评估能力更强,但如果不根据真实世界的数据对神经网络的性能进行透彻分析,即使是相对置信度也会产生很大的误导,很容易让你错失置信度。

那么,如何赋予数字适当的意义呢?要想获得神经网络输出的绝对准确性,唯一的办法就是提供大量结构化的输入数据,同时确保注释的准确性和一致性。对数据越了解,就越能理解置信度得分。在 Neonode,我们通过计算机生成的可视化输入(即合成数据)来实现这一点。这不仅是训练神经网络的一种更准确的方法,而且比收集真实世界的数据要快得多,还可以用来测试机器学习模型的鲁棒性和泛化,因为合成数据不会像从现实生活中的照片或电影中收集的真实数据那样受到偏差和干扰因素的影响。

信任 Neonode

可信度只是决定系统输出有效性的众多参数之一。在 Neonode,我们的所有网络都是由我们自己制作的,并使用我们自己制作的大量合成数据进行训练。通过对端到端过程的完全控制,我们设计了一种创新方法,可生成输入图像的相似性分数,这比仅仅依靠置信度分数要准确得多。

此外,Neonode 的关键任务功能建立在优美降级的理念之上,这意味着当我们的网络无法正确评估图像时,会有一个更通用、更强大、准确性更低的网络或流程来接管,同时向更广泛的系统发出信号,表明信号完整性降低了。

Neonode 在充分理解我们的网络和解释神经网络输出方面做了大量工作。我们深刻了解我们的网络何时产生有效结果,更重要的是,何时产生无效结果。这样,我们的客户就可以专注于使用我们的信息和输出来定义最终用户体验,而不是试图解释输出的有效性。

没有背景的自信毫无意义。

了解有关 Neonode 合成数据的更多信息