当前位置: 首页 > 科技观察

利用边缘生物特征开发人工智能安全系统

时间:2023-03-18 15:32:18 科技观察

使用边缘生物识别技术开发人工智能安全系统适用于拥有多个办公室的公司。电子钥匙是安全系统自动化的标准选项之一,但在现实中,仍然存在钥匙丢失、遗忘或伪造等诸多弊端。生物识别技术是传统安全措施的可靠替代方案,因为它们代表了“你是什么”身份验证的概念。这意味着用户可以使用他们独特的特征,例如指纹、虹膜、声音或面部,来证明他们可以访问某个空间。使用生物识别技术作为身份验证方法可确保密钥不会丢失、忘记或伪造。因此,在本文中,我们将谈谈我们开发边缘生物识别技术的经验,即边缘设备、人工智能和生物识别技术的结合,以实现基于人工智能技术的安全监控系统。什么是边界生物识别?首先,让我们澄清一下:什么是边缘人工智能?在传统的AI架构中,通常的做法是将模型和数据部署在云端,与操作设备或硬件传感器分开。这迫使我们保留我们的云服务器,保持稳定的互联网连接,并为云服务付费。如果在互联网连接中断时无法访问远程存储,则整个AI应用程序将变得毫无用处。“相比之下,边缘AI的想法是在设备上部署AI应用程序,更接近用户。边缘设备可能有自己的GPU,允许我们在设备本地处理输入。这提供了许多优势,例如由于所有操作都在设备本地执行,因此延迟减少并且总体成本和功耗变得更低。此外,整个系统更便携,因为设备可以轻松地从一个位置移动到另一个位置。鉴于我们不需要大型生态系统,与依赖稳定互联网连接的传统安全系统相比,带宽要求也更低。边缘设备甚至可以在连接关闭的情况下运行,因为数据可以存储在设备的内部存储器中。这使整个系统设计更加可靠和健壮。”-DanielLyadov(MobiDev的Python工程师)唯一值得注意的缺陷是所有处理都必须在短时间内在设备上完成,并且硬件组件必须是足够强大,并且必须是最新的才能工作。对于面部或语音识别等生物识别身份验证任务,安全系统的快速响应和可靠性至关重要。因为我们希望确保无缝的用户体验和适当的安全性,依赖于边缘设备可以带来这些好处。生物识别信息,例如员工的面部和声音,似乎足够安全,因为它们代表了神经网络可以识别的独特模式。此外,这种类型的数据更容易收集,因为大多数企业的CRM或ERP中已经有员工的照片。这样,您还可以通过收集员工的指纹样本来避免任何隐私问题。结合边缘技术,我们可以为工作区入口创建一个灵活的AI安全摄像头系统。下面,我们将结合自己公司的开发经验,借助边缘生物识别技术,探讨如何实现这样的系统。人工智能监控系统设计该项目的主要目的是通过查看摄像头对办公室入口处的员工进行身份验证。计算机视觉模型能够识别人脸,与之前获得的照片进行比对,进而控制门的自动开启。作为一项额外措施,还将添加语音验证支持,以避免以任何方式欺骗系统。整个流水线由4个模型组成,负责执行从人脸检测到语音识别的各种任务。所有这一切都是通过充当视频/音频输入传感器的单个设备和发送锁定/解锁命令的控制器完成的。作为边缘设备,我们选择使用NVIDIA公司的JetsonXavier。做出这个选择主要是因为该设备使用了GPU内存(这对于加速深度学习项目中的推理至关重要),而且NVIDIA提供的Jetpack-SDK在基于Python3的环境中也具有高可用性支持。编码。因此,没有严格的需要将DS模型转换为另一种格式,几乎所有的代码库都可以由DS工程师调整到设备上;此外,无需从一种编程语言重写为另一种语言形式。AISecuritySystem工作流程根据上面的描述,整个过程遵循以下流程:1.将输入图像提供给人脸检测模型以找到用户。2.人脸识别模型通过提取向量,与现有员工照片进行比对,判断是否为同一人进行推断。3.另一种模式是通过语音样本来验证特定人的声音。4.此外,还采用语音到文本反欺骗方案来防止任何类型的欺骗技术。接下来,让我们讨论每个实现并详细说明训练和数据收集过程。数据采集??在深入研究系统模块之前,重要的是要注意所使用的数据库。我们的系统依赖于为用户提供所谓的参考或地面实况数据。目前的数据包括每个用户的预计算面部和语音向量,看起来像一个数字数组。系统还存储成功登录的数据,以备日后再培训之用。鉴于此,我们选择了最轻量级的解决方案SQLiteDB。使用此数据库,所有数据都存储在一个易于浏览和备份的文件中,数据科学工程师的学习曲线更小。因为面部识别需要所有可能进入办公室的员工的照片,所以我们使用存储在公司数据库中的面部照片。当人们使用面部验证开门时,放置在办公室门口的Jetson设备也会收集面部数据样本。最初无法获得语音数据,因此我们通过要求人们录制20秒的剪辑来组织数据收集。然后我们使用语音验证模型获取每个人的向量并将其存储在数据库中。您可以使用任何音频输入设备来捕获语音样本。在我们的项目中,我们使用便携式手机和带有内置麦克风的网络摄像头来录制声音。人脸检测人脸检测可以确定给定场景中是否存在人脸。如果是这样,模型应该给出每张脸的坐标,以便您知道每张脸在图像上的位置,包括面部标志。此信息很重要,因为我们需要在边界框中接收人脸,以便在下一步中运行人脸识别。对于人脸检测,我们使用了InsightFace项目中的RetinaFace模型和MobileNet关键组件。该模型输出图像上每个检测到的人脸的四个坐标以及5个人脸标记。事实上,以不同角度或使用不同光学器件拍摄的图像可能会因失真而改变面部比例。这会使模型难以识别此人。为了满足这种需求,面部标志被用于变形,这是一种减少同一个人的这些图像之间可能存在差异的技术。因此,得到的裁剪和扭曲的人脸看起来更相似,提取的人脸向量也更准确。人脸识别下一步是人脸识别。在这个阶段,模型必须从给定的图像(即获得的图像)中识别出人。识别是在参考(地面实况数据)的帮助下完成的。所以在这里,模型会通过测量两个向量之间的差异的距离得分来比较两个向量,看看站在镜头前的是否是同一个人。该评估算法将与我们拥有的员工的初始照片进行比较。人脸识别是使用SE-ResNet-50架构模型完成的。为了使模型结果更加鲁棒,在得到人脸向量输入之前,会对图像进行翻转和平均。此时,用户识别流程如下:人脸和语音验证流程语音验证接下来,我们转到语音验证环节。此步骤应完成验证两个音频是否包含同一个人的声音。你可能会问,为什么不考虑语音识别呢?答案是如今人脸识别比语音更有效,图像比语音提供更多的信息来识别用户。为了避免用户A被人脸识别,用户B被语音识别,系统只采用人脸识别方案。基本逻辑与人脸识别阶段几乎相同,因为我们通过两个向量之间的距离来比较它们,除非我们找到相似的向量。唯一不同的是,我们已经有了一个假设,即试图通过之前人脸识别模块的人是谁。在积极开发语音验证模块的过程中,出现了一些问题。以前采用Jasper架构的模型无法验证同一个人使用不同麦克风制作的录音。因此,我们通过使用在SpeechBrain框架的VoxCeleb2数据集上训练的ECAPA-TDNN架构来解决这个问题,它可以更好地验证员工。然而,音频剪辑仍然需要一些预处理。目标是通过保留声音和减少当前背景噪音来提高录音质量。然而,所有测试技术都会严重影响语音验证模型的质量。有可能,即使是最轻微的降噪也会改变录音中语音的音频特性,因此模型将无法正确验证此人的身份。此外,我们还调查了录音的长度以及用户应该发音多少个单词。作为这次调查的结果,我们提出了一些建议。结论:此类录音的时长至少应为3秒,需要朗读8个单词左右。Speech-to-textanti-spoofing作为最后的安全措施,该系统在Nemo框架中应用了基于QuartzNet构建的speech-to-textanti-spoofing。该模型提供了良好的用户体验,适用于实时场景。为了衡量一个人所说的与系统所期望的有多接近,需要计算他们之间的Levenshtein距离。获取员工的照片以欺骗面部验证模块是一项可以完成的任务,同时还需要录制语音样本。语音到文本的反欺骗不包括入侵者试图使用授权人员的照片和音频进入办公室的场景。这个想法很简单:当每个人验证自己时,他们会说出系统给出的短语。短语由一组随机选择的单词组成。虽然一个短语中的单词数量并不多,但实际可能的组合数量却相当大。应用随机生成的短语,我们消除了欺骗系统的可能性,因为它需要授权用户说出大量录制的短语。拥有用户照片不足以通过这种保护来欺骗AI安全系统。边缘生物识别系统的优势在这一点上,我们的边缘生物识别系统让用户遵循一个简单的操作过程,该过程要求他们说出随机生成的短语来解锁门。此外,通过人脸检测,我们提供办公入口的人工智能监控服务。语音验证和语音转文本反欺骗模块“通过添加多个边缘设备,系统可以轻松修改以扩展到不同的场景。与普通电脑相比,我们可以直接通过网络配置Jetson,通过GPIO接口与底层设备建立连接,轻松升级新硬件。我们还可以与任何具有WebAPI的数字安全系统集成。但这种场景的主要好处是我们可以直接从设备收集数据来改进系统,因为在入口点收集数据似乎非常方便,没有任何特定的中断。》——DanielLiadov(MobiDevPython工程师)译者介绍朱宪忠,社区编辑,专家博主,讲师,潍坊大学计算机教师,自由编程资深人士。原标题:DevelopingAISecuritySystemsWithEdgeBiometrics,德米特里·基西尔(DmitriyKisil)