概览

Amazon Comprehend Detect PII 旨在帮助客户检测英语文本文档中的 PII 实体。PII 实体是一种特定类型的个人身份信息(PII),即可以用来识别个人身份的数据,例如姓名、电话号码或银行账号。本 AI Service Card 描述了在实时或异步分析作业中负责任地使用 Detect PII API 识别文本中 PII 的注意事项。通常情况下,客户使用此功能来查找 PII 数据或隐去(屏蔽或隐藏)文本文档中的 PII 数据。隐去 PII 可帮助客户保护最终用户和其他个人的隐私,隐藏敏感数据,并根据用户角色控制其对 PII 数据的访问。

Comprehend Detect PII 可检查文本中是否存在称为实体的文本模式。实体可以是个人、地点或组织,也可以是日期和识别号。从给定句子中的所有实体列表中,Detect PII 可识别包含 PII(例如个人姓名、信用卡号或社会保险号)的实体子集。例如,在“亲爱的 Paulo,请将您对 AnyCafe 的反馈意见发送至 anycafe@mail.com”这句话中,实体是“Paulo”(个人姓名)、“AnyCafe”(组织名称)和“anycafe@mail.com”(其他),而 PII 实体是“Paulo”(姓名)和“anycafe@mail.com”(电子邮件地址)。对于每个 PII 实体,Detect PII 会提供实体类型、实体位置(文本开始和结束的位置)和置信度分数(0.0 至 1.0),即实体包含 PII 的可能性。在上方示例中,实体“anycafe@mail.com”会生成实体类型(“电子邮件地址”),位于文本偏移量(开始 54,结束 70)中,以及置信度分数(0.99)。为了评估 Detect PII 的准确度,Comprehend 会将服务预测与人类专家生成的结果进行比较。如果预测与带注释的结果相符,则检测到的每个 PII 实体均为一次命中,否则为未命中。为了评估该功能的准确度,我们使用包括精度、召回率和 F1 分数在内的准确度指标;F1 是精度与召回率之间的平衡分数,如果预测与实体类型和实体的开始/结束相符,则认为预测是正确的。

Detect PII 识别两种类型的 PII 实体,(i)通用 PII 实体和(ii)国家/地区特定的 PII 实体。通用 PII 实体是不具有区域特定性的常用实体,例如姓名、年龄、电子邮件地址,以及系统生成的实体,例如 IP 地址、MAC 地址和 aws_access_key。国家/地区特定的实体是具有区域特定性的实体,例如美国社会保险号、英国纳税人参考号和政府签发的其他身份证号码。Detect PII 涵盖一组固定的 22 种通用 PII 实体类型和 14 种国家/地区特定的 PII 实体类型。对于每种 PII 实体类型,文本中的线索可能会有很大差异。电话、信用卡或邮政编码等实体可能会以不同的位数出现,也可能以带有/不带分隔符(空格、连字符、加号)的形式出现。姓名的格式可能因国家/地区而异,例如先名后姓、先姓后名;单字姓名;用连字符分隔的姓名;带有多个中间名的姓名等。这种固有差异会给 PII 实体检测带来挑战。源文本中的错误也会造成混杂差异。例如,纯文本源文档中可能会出现拼写错误和错别字,而从语音转录的文本可能会包含语音识别错误。Detect PII 在多种示例基础上进行训练以识别文本文档中的 PII,这有助于最大限度地减少混杂差异和固有差异的影响。

预期使用案例和限制

Comprehend Detect PII 适用于以下英语区域的转录文本数据和非转录纯文本数据:en-US、en-GB、en-CA 和 en-IN。该服务不支持来自数据库、原生 PDF 或英语以外语言的文本。经过训练的 Detect PII 可以查找 Comprehend Detect PII 分类中列出的 PII 实体(美国、英国、加拿大和印度 4 个国家的 22 种通用实体和 14 种 PII 实体),但不支持自定义 PII 实体(例如酒店预订号码)。要识别自定义 PII 实体,客户可以使用 Comprehend 服务中的自定义实体识别功能。

客户可以利用 Comprehend Detect PII 的自动 PII 检测和隐去功能来加速应用程序内的 PII 过滤,按用户角色管理数据访问权限,保护个人隐私,帮助防范数据泄露。 是否适合使用 Detect PII 取决于多种因素,包括所涉及的 PII 实体类型(例如姓名和银行账号)、相关的负责任的人工智能问题(例如隐私、公平性)、误报(服务将非 PII 实体标记为 PII)和漏报(服务未将 PII 实体标记为 PII)的相对成本、预期的混杂差异以及其他因素。根据使用案例,客户可以调整服务配置(置信度阈值),以优先考虑最大限度地减少误报或漏报。我们将 Comprehend Detect PII 应用程序分为两类广泛的使用案例。

PII 隐去使用案例:这些应用程序以离线(异步)模式运行,使用 Detect PII 将检测到的 PII 实体隐藏在文本中,以便进行更安全的下游处理,例如,保险应用程序可将姓名和银行账号等客户 PII 实体排除在必须作为输入共享给下游应用程序的文档之外。实时模式不支持隐去。 在这一使用案例中,与误报(隐藏不是客户姓名、电话或银行账号的实体)的成本相比,漏报(没有隐藏有效的客户姓名、电话或银行账号)的成本非常高。通过降低服务置信度阈值,客户可以减少漏报,并捕获更多有可能成为 PII 实体的文本跨度。

PII 查找使用案例:这些应用程序以实时(同步)或离线(异步)模式运行,使用 Detect PII 查找文本中的 PII 实体以实现下游处理,例如,营销应用程序从调查表中提取客户姓名和电话号码以存储到客户数据库中。在这一使用场景中,与上述隐去使用场景(在保险文档中隐藏银行账号)相比,漏报(例如,遗漏姓名或电话号码)的成本可能更低。通过提高置信度阈值,客户可以将该服务设置为以更高的精度捕获文本(即捕获更有可能是 PII 的文本)。

Comprehend Detect PII 性能结果可能会因用于生成结果的评估数据集而异。我们建议客户针对自己的内容(数据、设置和上下文类型)对服务进行评测,以确定特定使用场景是否适合使用 Detect PII API。此外,对于每种使用案例,客户应评测 RAI 风险水平和漏报/误报的相关成本,并调整预测 PII 实体的置信度阈值。客户还应评测人为监督的必要性,并根据需要支持人工审核员对 Detect PII 输出进行审核。

Comprehend Detect PII 的设计

机器学习:Detect PII 使用机器学习和自然语言处理技术进行构建。其工作原理如下:Detect PII 使用英语文本文档作为输入。NLP 模型识别文档中属于一系列 PII 元素的文本跨度,并返回被标识为 PII 实体的文本跨度,其中包括实体类型、实体位置(开始、结束)和置信度分数,即文本跨度成为给定 PII 实体类型的 PII 实体的概率。有关 API 调用的详细信息,请参阅开发人员文档

性能预期:客户应用程序之间的混杂差异会有所不同。因此,性能会因应用程序而异。例如,假设有两组不同的支持工单应用程序 A 和 B。应用程序 A 包含纯文本文件,应用程序 B 包含从原生 PDF 到文本转换器生成的文本文件。A 中的文本文件格式良好,文档质量出色,而 B 中的文档可能会因光学字符识别(OCR)而出现格式或其他错误。由于 A 和 B 的输入文本质量可能存在差异,因此,假设在每个应用程序中都完美地部署了 Comprehend,那么检测 PII 的错误率也可能会不同。

测试驱动的方法:为了评估 Comprehend Detect PII 的性能,我们使用多个包含 PII 数据的文本文档数据集,这些数据集因人口构成(数量和多样性)、混杂差异、标签类型和其他因素而异。给定数据集的整体性能用 F1 分数来表示,范围在 0.0 至 1.0 之间。最佳性能将获得 1 分,而分数 0 表示性能最差。F1 分数提供模型的精度(预测字段正确的百分比)和召回率(预测中包含的正确字段的百分比)之间的权衡。更改 Detect PII 模型的置信度阈值可能会改变精度和召回率指标。数据集中的组别可以通过关键属性(例如性别和国家/地区)、混杂差异(例如原始文本或 OCR 提取的文本)或两者的组合来定义。由于这些差异,每个数据集的 F1 分数(包括总体分数和群体分数)都有所不同。考虑到这一点,我们的开发过程会使用多个数据集反复检查性能,尝试提高 Detect PII 表现不佳的群体的 F1 分数,然后用它来改进整套评估数据集。

公平性与偏差:我们的目标是让 Detect PII 能够高度准确地从文本文档中识别 PII 实体,而无论文档中呈现的 PII 实体的人口统计和地理特定性属性如何。为实现这一目标,我们采用迭代开发流程,包括在一系列文本质量条件下建立训练数据集,以捕获 Detect PII 支持的一系列语言区域和文档。我们定期对具有可靠 PII 实体标签的文本文件数据集进行测试。Detect PII 在许多区域和人口统计属性方面始终表现良好。例如,在我们测试的一个内部数据集上,我们发现,检测全球 26 个不同区域的姓名的 F1 分数不低于 87%;在 Detect PII 支持的 4 个区域中检测电话号码和地址的 F1 分数分别不低于 88% 和 91%。由于结果不仅取决于 Detect PII,还取决于客户工作流程和评估数据集,因此我们建议客户针对自己的内容测试 Detect PII。

可解释性:如果客户对 Comprehend 针对特定 PII 实体返回的预测有疑问,我们建议客户使用 Comprehend 返回的实体、实体开始和结束跨度以及置信度分数直接检查给定文本文档中的 PII 实体。

稳健性:我们通过多种技术最大限度地提高稳健性,包括使用捕获许多文档中多种差异的大型训练数据集。在此过程中,我们建立数据集,以捕获在各种文本质量条件下检测 PII 的各种差异。 Detect PII 最容易处理的输入包含相对没有拼写错误、空格错误、特殊字符和其他格式问题的文本。但是,Detect PII 模型经过训练,即使输入达不到理想条件也可灵活应对。

隐私与安全性:Detect PII 可捕获和处理文本。客户之间绝不会共享输入和输出。Comprehend Detect PII 没有针对客户内容进行训练。有关更多信息,请参阅 AWS 服务条款第 50.3 节和 AWS 数据隐私常见问题。有关特定于服务的隐私与安全性信息,请参阅 Comprehend 常见问题的“数据隐私”部分和 Amazon Comprehend 安全文档。

透明度:在适合其使用案例的情况下,将 Detect PII 纳入工作流程的客户应考虑向最终用户和其他受应用程序影响的个人披露其使用机器学习的情况,并允许其最终用户提供反馈以改进工作流程。在其文档中,客户还可以引用此 AI Service Card。

治理:我们采用严格的方法,以负责任的方式构建我们的 AWS AI 服务,包括在设计阶段融入负责任的人工智能的逆向工作产品开发流程,由专职的负责任的人工智能科学和数据专家设计咨询和实施评测,执行例行测试,与客户共同审查,以及进行最佳实践开发、分发和培训。

部署和性能优化最佳实践

我们鼓励客户按照 《AWS 负责任使用机器学习》指南中所述,负责任地构建和运行应用程序。这包括实施负责任的人工智能实践以处理关键维度,涵盖公平性和偏见、稳定性、可解释性、隐私和安全性、透明度和治理。
 
工作流程设计:使用 Comprehend Detect PII 的任何应用程序的性能都取决于客户工作流程设计,包括:(1)混杂差异,(2)固有差异,(3)置信度阈值的选择,(4)人为监督,(5)在人口群体中一致应用工作流程的方式,以及(6)定期重新测试性能偏差。
 
  1. 混杂差异:在处理 OCR 输出和转录文本等来源的文本文档时,必须在工作流程中纳入减少拼写、格式和其他预处理错误的步骤。在存在重大混杂差异的情况下,可以考虑纳入质量保证步骤,涵盖预期的差异范围,包括转录或 OCR 质量。为了从 Detect PII 中获得最佳结果,客户工作流程应定义有关可接受输入文本的政策,并通过随机和定期对输入进行抽样来定期评测合规性。
  2. 固有差异:在处理包含由多个单词组成的实体的文本文档时,必须在工作流程中加入旨在处理不同格式和长度的实体的步骤。例如,文本中的地址可能会显示为街道号码和街道地址,并且可以选择包括城市、州和国家/地区,这可能会导致一个地址被预测为两个不同的实体。为了应对这种情况,客户可以考虑采取后处理步骤来合并 Comprehend PII 的预测输出。此外,客户也可以考虑使用自定义实体识别功能。
  3. 置信度阈值调整:客户可以通过调整服务的置信度阈值设置(0.0 至 1.0)来调整性能,以检测文本中的 PII 实体。根据置信度阈值,该服务可识别概率较大或较小的实体。为了获得更高的精度,请选择较高的阈值。为了获得更好的召回率,请选择较低的阈值。要设置适当的阈值,客户可以收集一组代表性的输入,标记每个输入的文本字段,然后尝试提高或降低阈值,直到对用户体验感到满意为止。
  4. 人为监督:如果客户的应用程序工作流程涉及高风险或敏感使用案例,例如影响个人权利或基本服务访问权限的决定,应该将人工审查纳入应用程序工作流程。使用 Detect PII 进行自动实体识别可以作为一种工具,减少完全手动的解决方案所产生的工作量,并使人类快速审查和评测包含 PII 实体的敏感文档。 
  5. 一致性:客户应针对如下方面制定并实施策略:允许的输入文本种类,以及人类如何将置信度阈值的使用与自己的判断相结合来确定最终结果。这些策略应在不同人口群体中保持一致。
  6. 性能偏差:客户提交给 Detect PII 的文本类型的变化或服务的变更可能会导致不同的输出。为了应对这些更改,客户应考虑定期重新测试 Detect PII 的性能,并在必要时调整工作流程。

更多信息

词汇表

公平性和偏见是指人工智能系统如何影响不同的用户亚群(例如,按性别、种族)。

可解释性是指拥有理解和评估人工智能系统输出的机制。

稳定性是指拥有确保人工智能系统可靠运行的机制。

隐私与安全性是指保护数据免遭盗窃和泄露。

治理是指采用流程在组织内定义、实施和执行负责任的人工智能实践。

透明度是指交流有关人工智能系统的信息,以便利益相关者能够就其是否使用该系统做出明智的选择。