AWS AI Service Card 解释了该服务预期的使用案例、该服务如何使用机器学习(ML),以及负责任地设计和使用服务时的关键注意事项。Service Card 将随着 AWS 收到客户反馈以及服务在其开发过程中的迭代而演变。AWS 建议客户针对他们需要解决的每个使用案例在自己的内容上评估任何 AI 服务的性能。有关更多信息,请参阅《AWS 负责任地使用机器学习》指南和末尾的参考文献。另请务必查看您计划使用的服务的 AWS 负责任的 AI 策略和 AWS 服务使用条款。
本 Service Card 适用于截至 2022 年 7 月 11 日发布的 Rekognition 人脸匹配版本。
概览
通过 Amazon Rekognition 人脸匹配服务,应用程序构建者可衡量一张人脸图像和另一张人脸图像之间的相似度。此 AI Service Card 描述如下方面的注意事项:使用我们的 CompareFaces 和 SearchFaces API 负责任地匹配典型身份证风格照片中的人脸与媒体(例如电影、相册和在不受控制环境或自然环境中拍摄的“野生”图像)中的人脸。通常,客户使用 CompareFaces 将源人脸与目标人脸进行比较(1:1 匹配),并且使用 SearchFaces 将源人脸与目标人脸集合进行比较(1:N 匹配)。Rekognition 不会为客户提供预构建的人脸集合;客户必须创建自己的人脸集合并填入数据。在此 Card 中,我们将使用“人脸匹配”来指代 Rekognition 的 CompareFaces API 和 SearchFaces API。
如果两张图像包含同一个人的人脸,则两张人脸图像称为“真实匹配”,否则就是“真实不匹配”。给定成对“源”和“目标”图像的输入,Rekognition 会返回源图像中人脸与目标图像中人脸的相似度分数。最小相似度分数为 0,表示相似度很低;最大相似度分数为 100,表示相似度非常高。Rekognition 本身并不能独立决定图像中的两张人脸是真实匹配还是真实不匹配;客户的工作流程会调用 CompareFaces 和/或 SearchFaces,使用自动逻辑(将相似度阈值设置在 0 到 100 之间,如果相似度分数超过阈值,则预测为真实匹配)、人工判断或两者混合来决定是否匹配。
真实的人脸存在各种区别,例如肤色和脸型。但是,可以用不同的图像来表示任何一个人;相反,可以用非常相似的图像来代表不同的个体。例如,如果仅眼睛形状不同的两个人戴着同一副太阳镜,他们就可能看起来相同。这是因为有许多可能的因素(称为“混杂差异”)共同改变代表人脸的图像像素的位置和颜色。这些混杂因素包括(1)照明方向、强度和波长的分布;(2)头部姿势;(3)相机对焦和成像缺陷;(4)像素分辨率;(5)手部、面部毛发、头发、手机、伸出的舌头、围巾、眼镜、帽子、珠宝或其他物体的遮挡;(6)面部表情(例如面无表情或睁开眼睛);以及(7)肤色改变(例如,通过化妆、面部彩绘、晒伤或粉刺)。Rekognition 的相似度分数设计为对于不同个体的人脸图像较低,而对于同一张人脸的图像则较高,并且忽略混杂差异。Rekognition 仅使用源图像和目标图像中提供的信息来评估人脸图像的相似性。
预期使用案例和限制
Rekognition 人脸匹配仅用于比较人类的人脸。该功能不支持识别来自动画片、动画角色或非人类实体的人脸。它也不支持使用过于模糊和颗粒感而无法人为识别的人脸图像,以及大部分被头发、手和其他物体遮挡的人脸图像。此外,AWS 已暂停警方使用 Rekognition::CompareFaces 和 Rekognition::SearchFaces API 进行刑事调查(有关更多信息,请参阅 AWS 服务使用条款第 50.9 节)。
Rekognition 人脸匹配支持许多应用场景,例如识别失踪儿童、授予进入建筑物或会议招待套房的权限、在线验证身份以及整理个人照片库。这些应用场景因涉及的个体数、每个个体可用的不同图像数量、预期的混杂差异量、虚假匹配和虚假不匹配的相对成本以及其他因素而异。我们将这些应用场景分为两个广泛的使用案例。
身份验证使用案例:身份验证应用程序使用人脸匹配来登记新用户并授予现有用户访问资源的权限。在此使用案例中,通常使用政府签发 ID 证件(例如护照和驾驶执照)中的照片和实时自拍照(鼓励人们在光线充足的环境下摆出不受遮挡的人脸正面姿势)来最大限度地减少混杂差异。这样就可用少量人脸图像来表示目标集合中的每个个体,并且集合中可涵盖大量不同个体(例如数百万个个体)。在此使用案例中,某些最终用户可能会试图欺骗系统以获得访问权限,因此客户可以通过如下方式来降低这种风险:手动检查提交给 Rekognition 的源图像和目标图像是否符合客户的期望,和/或要求匹配项具有较高的相似度分数(例如 95)。
媒体使用案例:媒体应用程序使用人脸匹配,根据一组已知个体来识别照片和视频中的个体(例如,在度假视频中寻找家庭成员)。在此使用案例中,同一个体的源图像和目标图像之间存在很大的混杂差异,因此目标集合可能包含较少的个体,而每个个体具有更多的图像(可能跨越此用户的多个人生阶段)。在此使用案例中,最终用户没有充分的动机来试图欺骗系统,因此客户可以选择高度自动化的工作流程,并且考虑到高度的混杂差异,其可能会允许匹配项具有较低的相似度分数(例如 80)。
Rekognition 人脸匹配的设计
机器学习:使用机器学习和计算机视觉技术构建 Rekognition 人脸匹配。其工作原理如下:(1)定位输入图像中包含人脸的部分。(2)提取包含头部的图像区域,对齐该区域,使人脸处于“正常”垂直位置,并且输出裁剪后的人脸图像。(3)将每张裁剪后的人脸图像转换为“人脸向量”(从技术上来说,这是人脸图像的数学表示)。请注意,SearchFaces 搜索的集合是人脸向量集,而不是人脸图像集。(4)比较源和目标人脸向量,并返回系统针对人脸向量给出的相似度分数。有关 API 调用的详细信息,请参阅开发人员文档。
性能预期:客户应用程序之间的个体差异和混杂差异将有所不同。这意味着即使应用程序支持相同的使用案例,其性能也会有所不同。以两个身份验证应用程序 A 和 B 为例。对于每个应用程序,用户首先使用护照风格的图像注册自己的身份,然后使用实时自拍照来验证自己的身份。应用程序 A 使用智能手机摄像头拍摄光线充足、对焦良好、正面姿势、高分辨率和不遮挡的自拍照,以此支持智能手机访问。应用程序 B 使用门口摄像头拍摄光线较差、更模糊、分辨率较低的自拍照,以此允许用户进入建筑物。由于 A 和 B 的输入类型不同,因此即使假设使用 Rekognition 完美部署每个应用程序,它们的人脸匹配错误率也可能不同。
测试驱动的方法:我们使用多个数据集来评估性能。我们无法采用单一评估数据集衡量整体性能。这是因为评估数据集因其人口构成(已定义群体的数量和类型)、混杂差异数量(内容质量、适合用途)、可用标签的类型和质量以及其他因素而有所不同。我们通过如下方式衡量 Rekognition 的性能:在包含相同个体成对图像(匹配对)和不同个体成对图像(非匹配对)的评估数据集上对其进行测试。我们选择相似度阈值,使用 Rekognition 计算每对图像的相似度分数,然后根据阈值确定该图像对是匹配还是不匹配。数据集的整体性能由两个数字表示:真实匹配率(相似度分数高于阈值的匹配对百分比)和真实不匹配率(相似度分数低于阈值的非匹配对百分比)。更改相似度阈值会相应更改真实匹配率和真实非匹配率。数据集中的群体可以由人口统计属性(例如性别)、混杂变量(例如面部毛发的存在性)或两者的混合来定义。不同的评估数据集因这些因素和其他因素而异。因此,每个数据集的真实匹配率和不匹配率(包括总体和群体)均有所不同。考虑到这种差异,我们的开发过程使用多个评估数据集来检查 Rekognition 的性能,采取措施提高 Rekognition 性能最差的群体的真实匹配率和/或真实不匹配率,努力改进评估数据集套件,然后进行迭代。
公平性与偏见:我们的目标是让 Rekognition 的人脸匹配适用于所有人脸。为此,我们使用上面描述的迭代开发过程。在此过程中,我们构建数据集,涵盖在各种混杂差异下获取的不同人类面部特征和肤色。我们会在拥有可靠人口统计标签(例如性别、年龄和肤色)的人脸图像数据集上对各种使用案例定期进行测试。我们发现,Rekognition 在人口统计属性中表现良好。例如,专门从事负责任人工智能的公司 Credo AI 使用身份验证数据集对 Rekognition 进行第三方评估,该数据集包含光线充足、非模糊且无遮挡的高质量主体图像。Credo AI 观察到,在由肤色和性别定义的六种人口群体中,最低的真实匹配率为 99.94816%,最低的真实不匹配率为 99.99995%,并且相似度阈值设为 95。由于性能结果取决于各种因素,包括 Rekognition、客户工作流程和评估数据集,因此我们建议客户使用自己的内容对 Rekognition 进行额外的测试。
可解释性:如果客户对 Rekognition 返回的给定源图像和目标图像的相似度分数有疑问,我们建议客户使用边框和 Rekognition 返回的人脸特征点信息直接检查人脸图像。
稳定性:我们通过多种技术最大限度地提高稳定性,包括使用涵盖许多个体中多种差异的大型训练数据集。由于 Rekognition 无法对不同个体(例如同卵双胞胎)之间的微小差异具有很高的敏感度,同时对混杂差异(例如为加强颧骨而涂上化妆品)具有非常低的敏感度,因此客户必须设定适合其使用案例的真实匹配率和真实不匹配率预期值,并在其内容上测试工作流程性能,包括其选择的相似度阈值。
隐私和安全性:Rekognition 人脸匹配处理三种数据:客户输入图像、输入图像的人脸向量以及输出相似度分数和输出元数据。人脸向量不会包含在服务返回的输出中。客户之间绝不会共享输入和输出。客户可以通过 AWS Organizations 或我们可能提供的其他选择退出机制选择退出有关客户内容的培训。有关更多信息,请参阅 AWS 服务条款第 50.3 节和 AWS 数据隐私常见问题。 有关特定于服务的隐私和安全信息,请参阅 Rekognition 常见问题的“数据隐私”部分和 Amazon Rekognition 安全文档。
透明度:在适合其使用案例的情况下,将 Amazon Rekognition 人脸匹配 API 纳入其工作流程的客户应考虑向最终用户和其他受应用程序影响的个人披露其使用机器学习和人脸识别技术的情况,并且支持最终用户能够提供反馈以改进工作流程。在其文档中,客户还可以引用此 AI Service Card。
治理:我们采用严格的方法,以负责任的方式构建我们的 AWS AI 服务,包括在设计阶段融入负责任人工智能的逆向工作产品开发流程,由专职的负责任人工智能科学和数据专家设计咨询和实施评估,执行例行测试,与客户共同审查,以及进行最佳实践开发、分发和培训。
部署和性能优化最佳实践
- 个体差异:在一组目标人脸中搜索源人脸时,成功率会随着目标集中不同个体之间的身体差异程度而增加。例如,同卵双胞胎之间的匹配比异卵双胞胎或无亲属关系个体之间的匹配要困难得多。通常,具有更多独特个体的目标集合存在两个看上去相似的独特个体的风险较高,因此在做出匹配的最终决定时需要更加谨慎。在解释源图像返回的相似度分数时,工作流程应考虑目标集合中个体可能的相似度。
- 混杂差异:在选择成对的源图像和目标图像时,工作流程应包括最大限度地减少源图像和目标图像之间差异(例如照明条件的差异)的步骤。如果差异很大,可以考虑为每个目标个体添加多个人脸图像(“选项”),以涵盖预期的差异(例如姿势、光照和年龄),并将源人脸图像与每个目标选项进行比较。如果唯一可行的方式是采用单个选项,可以考虑使用护照风格、正面、无遮挡的头部特写。工作流程应为允许的输入图像制定策略,并通过定期和随机采样输入来监控合规性。
- 相似度阈值:为应用程序设置适当的相似度阈值非常重要。否则,工作流程可能会得出结论,认为存在不应有的匹配(虚假匹配)或反之亦然(虚假不匹配)。虚假匹配的成本可能与虚假不匹配的成本不同。例如,身份验证的适当相似度阈值可能比媒体的相似度阈值高得多。要设置适当的相似度阈值,客户应收集一组代表性的输入对,将每个输入对标记为匹配或不匹配,并尝试提高或降低相似度阈值直到对结果满意。
- 人为监督:如果客户的应用程序工作流程涉及高风险或敏感使用案例,例如影响个人权利或基本服务访问权限的决定,应该将人工审核纳入应用程序工作流程。人脸匹配系统可以充当工具,减少全手动解决方案所产生的工作量,并且支持用户快速审查和评测可能的匹配和不匹配项。
- 一致性:客户应针对如下方面制定并实施策略:允许的源图像和目标图像种类,以及人类如何将相似度阈值的使用与自己的判断相结合来确定匹配项。这些策略应在所有人口群体中保持一致。不一致地修改源图像和目标图像或相似度阈值可能会给不同的人口群体带来不公平的结果。
- 性能偏差:客户提交给 Rekognition 的图像种类的变化或服务的变更可能会导致不同的输出。为了应对这些更改,客户应考虑定期重新测试 Rekognition 的性能,并在必要时调整工作流程。
更多信息
- 有关服务文档,请参阅 Rekognition、CompareFaces、SearchFaces。
- 有关身份验证工作流程设计的示例,请参阅使用 Amazon Rekognition 进行身份验证。
- 有关帮助优化工作流程,请参阅 AWS 客户支持、AWS 专业服务团队、Amazon SageMaker Ground Truth Plus、Amazon Augmented AI。
- 如果您对 AWS AI Service Card 有任何疑问或反馈,请填写此表单。
词汇表
公平性和偏见是指人工智能系统如何影响不同的用户亚群(例如,按性别、种族)。
可解释性是指拥有理解和评估人工智能系统输出的机制。
稳定性是指拥有确保人工智能系统可靠运行的机制。
隐私与安全性是指保护数据免遭盗窃和泄露。
治理是指采用流程在组织内定义、实施和执行负责任的人工智能实践。
透明度是指交流有关人工智能系统的信息,以便利益相关者能够就其是否使用该系统做出明智的选择。