使用阈值进行面部识别的理解困难

Posted

技术标签:

【中文标题】使用阈值进行面部识别的理解困难【英文标题】:Difficulty understanding using Threshold for Facial Recognition 【发布时间】:2015-06-25 02:13:58 【问题描述】:

这是一个基于理解的问题,用于使用阈值方法进行面部识别。我通俗地理解我们如何使用以下步骤识别具有阈值的人脸:

    使用前 k 个特征面形成特征空间 本征空间上的项目训练面孔 在特征空间上投影测试面 计算特征空间中测试人脸和训练人脸之间的距离 选择最接近测试人脸的训练人脸 检查距离是否超过识别阈值

直到第 6 步为止,我都了解整个过程。我收集到阈值是保留的数据的百分比,但是我不明白为什么我们要更改此值。 IE。为什么我们要把它变小/变大,我们怎么知道我们应该把这个值设为什么? 任何解释将不胜感激。

【问题讨论】:

【参考方案1】:

您真的认为使用“特征空间”一词的描述会被典型的外行理解吗?此外,这并不是真正的软件问题,因此在技术上是题外话。

您所询问的概念由“检测理论”描述。

检测理论的基础涉及进行测量的传感器系统。这些测量是对环境的一些干扰。在理想的世界中,除非实际存在感兴趣的东西,否则测量值将是一些常数。然而现实世界并不是这样的。在现实世界中,即使不存在任何感兴趣的东西,也会测量到干扰(称为噪声或背景),并且这些测量值会有一定的分布。如果有东西存在,它引起的干扰会叠加在背景上,测量值是两者的总和(通常无法区分它们)。

因此,当我们的传感器进行测量时,需要一些决策标准来确定是否确实存在感兴趣的东西。通常,测量值以数值表示(直接或处理后)。调用检测(或进行面部识别时的匹配)的常见标准是计算一些数值度量,并在测量值超过某个其他选择值(阈值)时调用检测。

每个阈值都与四个条件概率相关联:检测概率或真阳性(当有匹配的东西时调用匹配)、误报概率(当没有匹配的东西时调用匹配)、概率假阴性(当某物存在时不称某物存在)和真否定(当某物不存在时不称某物存在)。

概率取决于背景分布和感兴趣的实际干扰的分布。在理想的世界中,我们总是会做出正确的判断,即检测概率为 100%,真阴性概率为 100%,误报或误报概率为零。现实世界不是那样的,所以我们想要的概率不会是 100%,我们不想要的概率也不是零。

更改阈值,所有概率都会更改(以分布确定的方式)。通常阈值是根据相关的检测概率和误报概率来指定的(使用这两个信息位,以及一些指定分布的模型,可以推导出其他概率)。例如,可以选择一个阈值以提供 90% 的检测概率(即,如果确实存在干扰,我们有 90% 的机会正确调用它),误报率为 10^-6(如果我们调用检测,百万分之一的机会实际上并不感兴趣)。另一方面,如果我们愿意在相同的误报率下接受所有检测的一半缺失,我们会使用较低的阈值。

检测概率和误报率的选择很重要,但它是一种平衡行为。使检测的概率过低,我们错过了太多的事件(例如,每天都有 X% 的坏人没有被识别)。使误报率过高,我们会得到太多误报(例如,每秒一次误报与每天一次误报)——这是昂贵的,因为每个误报都必须通过其他方式进行调查。

【讨论】:

以上是关于使用阈值进行面部识别的理解困难的主要内容,如果未能解决你的问题,请参考以下文章

面部识别的未来

如何用 OpenCVPython 和深度学习实现面部识别?

人脸识别的未来:对智慧城市有何影响

使用分类器进行面部识别的迁移学习

Python中人脸识别的预处理方法

人脸识别是靠啥技术实现的?