亚马逊AWS官方博客

Amazon Transcribe 现已推出自动对个人身份信息进行密文标记的功能

我们在 AWS re:Invent 2017 上推出Amazon Transcribe,这是一项自动语音识别 (ASR) 服务,可让 AWS 客户轻松地为其应用程序添加语音转文本功能。截止到撰写本文之时,Transcribe 支持 31 种语言其中 6 种可以实现实时转录。

客户呼叫(呼叫中心、电话销售等)的自动转录是 Transcribe 使用最广的使用案例,有助于为下游分析和自然语言处理任务(例如情感分析)构建数据集。因此,应删除任何个人身份信息 (PII),保护客户隐私并遵守当地法律和法规。

可以想象,手动执行这项操作非常繁琐、耗时而且容易出错,因此 Amazon Transcribe 现在推出了支持对 PII 进行密文标记的功能。

Amazon Transcribe 现推出内容密文标记功能

如果按照说明进行操作,Transcribe 将自动识别以下 PII 信息:

  • 社会安全号码、
  • 信用卡/借记卡号、
  • 信用卡/借记卡到期日期、
  • 信用卡/借记卡 CVV 码、
  • 银行账号、
  • 银行电汇编码、
  • 借记卡/信用卡 PIN、
  • 姓名、
  • 电子邮件地址、
  • 电话号码(10 位数字)、
  • 邮寄地址。

在转录的文本中,会将它们替换为一个“[PII]”标签。您还将获得一个密文标记置信度得分(而不是通常的 ASR 得分)以及开始和结束时间戳。这些时间戳将帮助您在音频文件中找到 PII,以进行安全存储和共享,或进行其他音频处理以在源文件中对其进行密文标记处理。

这一功能非常简单易用,我们来做一个快速演示。

使用 Amazon Transcribe 对个人信息进行密文标记

首先,我录制了一个简短的包含个人信息的音频文件(当然,内容都是假的)。我这里使用的是 mp3 格式,但是我们建议您使用 FLAC 或 WAV 等无损格式,以确保准确性达到最高。

然后,我使用 AWS CLIS3 存储桶。

$ aws s3 cp julien.mp3 s3://jsimon-transcribe-us-east-1

接下来,使用 StartTranscriptionJob API 转录这个音频文件:为什么这次不使用 适用于 PHP 的 AWS 开发工具包呢?

<?php
require 'aws.phar';

use Aws\TranscribeService\TranscribeServiceClient;

$client = new TranscribeServiceClient([
    'profile' => 'default',
    'region' => 'us-east-1',
    'version' => '2017-10-26'
]);

$result = $client->startTranscriptionJob([
    'LanguageCode' => 'en-US',
    'Media' => [
        'MediaFileUri' => 's3://jsimon-transcribe-us-east-1/julien.mp3',
    ],
    'MediaFormat' => 'mp3',
    'OutputBucketName' => 'jsimon-transcribe-us-east-1',
    'ContentRedaction' => [
        'RedactionType' => 'PII',
        'RedactionOutput' => 'redacted'
    ],
    'TranscriptionJobName' => 'redaction'
]);
?>

一个 API 调用即可搞定。我可以使用 RedactionOutput参数来控制是想要完整的和经过密文标记的输出,还是只想要经过密文标记的输出。我选择了后者。现在,我们来运行以下脚本。

$ php transcribe.php

我立刻就可以看到在 Transcribe 控制台中运行的作业。

我还可以使用 GetTranscriptionJobListTranscriptionJobs API 来检查是否已对内容进行了密文标记。作业完成后,我只需从 S3 存储桶中提取转录内容即可。

$ aws s3 cp s3://jsimon-transcribe-us-east-1/redacted-redactiontest.json .

转录内容是一个 JSON 文档,包含每个单词的详细信息。在这里,我只想要完整的转录内容,因此我使用了一个名为 jq 的开源工具来过滤文档,它很好用。

$ cat redacted-redactiontest.json| jq '.results.transcripts'
[{
"transcript": "Good morning, everybody.My name is [PII], and today I feel like sharing a whole lot of personal information with you.Let's start with my Social Security number [PII].My credit card number is [PII] And my C V V code is [PII] My bank account number is [PII] My email address is [PII], and my phone number is [PII].Well, I think that's it.You know a whole lot about me.And I hope that Amazon transcribe is doing a good job at redacting that personal information away.Let's check."
}]

Amazon Transcribe 非常好用。我的隐私得到安全保护。

现已推出!

已在以下区域推出针对美式英语的内容密文标记功能:

  • 美国东部(弗吉尼亚北部)美国东部(俄亥俄)美国西部(加利福尼亚北部)美国西部(俄勒冈)AWS GovCloud(美国西部)
  • 加拿大(中部)南非(圣保罗)
  • 欧洲(爱尔兰)欧洲(伦敦)欧洲(巴黎)欧洲(法兰克福)
  • 中东(巴林)
  • 亚太地区(孟买)亚太地区(香港)亚太地区(首尔)亚太地区(新加坡)亚太地区(悉尼)亚太地区(东京)

查看定价页面,试用一下该功能,并在 Amazon TranscribeAWS 论坛中或您常用的 AWS Support 联系方式向我们发送反馈。

– Julien