你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
重要
仅为方便起见,提供非英语翻译。 请参阅 EN-US 版本以获取最终版本的此文档。
什么是透明度说明?
AI 系统不仅包括技术,还包括使用它的人员、受其影响的人员以及部署它的环境。 创建一个适合其预期用途的系统需要了解技术的工作原理、功能和局限性,以及如何实现最佳性能。 Microsoft 的透明度说明旨在帮助你了解 AI 技术的工作原理、系统所有者可通过哪些选择来影响系统性能和行为,以及保持系统全局观(包括技术、人员和环境)的重要性。 你可以在开发或部署自己的系统时使用透明度说明,或者与使用你的系统或受其影响的人员共享透明度说明。
Microsoft 的透明度说明是 Microsoft 将其 AI 原则付诸实践的广泛努力的一部分。 若要了解详细信息,请参阅 Microsoft AI 原则。
语音转文本的基础知识
语音转文本(也称为自动语音识别(ASR)是 Azure AI 语音服务下的功能,它是 Azure AI 服务的一部分。 语音转文本 将语音音频转换为文本。 Azure 中的语音转文本功能支持在超过 140 种区域设置下输入内容。 有关支持的区域设置的最新列表,请参阅语音服务的语言和语音支持。
关键术语
| 条款 | 定义 |
|---|---|
| 音频输入 | 流式传输的音频数据或音频文件,用作语音转文本功能的输入。 音频输入不仅可以包含语音,还可以包含静音和非语音噪音。 语音转文本为音频输入的语音部分生成文本。 |
| 语句 | 包含人类语音的音频输入的组件。 一个话语可以包含一个单词或多个单词,例如短语。 |
| 转录 | 语音转文本功能的文本输出。 此自动生成的文本输出利用 语音模型 ,有时称为计算机听录或自动语音识别(ASR)。 此上下文中的听录是完全自动化的,因此与人工听录不同,这是人工转录器生成的文本。 |
| 语音模型 | 自动生成的机器学习数字表示形式,用于从音频输入推测转录内容。 语音模型基于语音数据(包括各种语音样式、语言、口音、方言和语调)以及使用不同类型的录音设备生成的声学变体进行训练。 语音模型以数字方式表示声学和语言特征,用于预测应与言语关联的文本。 |
| 实时 API | 一个 API,它接受具有音频输入的请求,并在同一网络连接中使用听录实时返回响应。 |
| 语言检测 API | 一种实时 API,用于检测音频输入中所说的语言。 根据音频输入中的语音声音推断语言。 |
| 语音翻译 API | 另一种类型的实时 API,用于生成给定音频输入的听录,然后将它们翻译成用户指定的语言。 这是一个语音服务与文本翻译的联结服务。 |
| 批量 API | 用于发送稍后要转录的音频输入的服务。 指定音频文件的位置和其他参数,例如识别语言。 服务以异步方式加载音频输入并转录它。 听录完成后,文本文件将加载回指定的位置。 |
| 分割 | 分割回答了谁何时说话的问题。 它根据其语音特征区分音频输入中的扬声器。 实时 API 和批处理 API 都支持分割,并且能够在单声道录制中区分说话人的声音。 分割与语音转文本功能相结合,提供包含每个听录段的说话人条目的听录输出。 听录输出根据音频对话中的说话人数标记为 GUEST1、GUEST2、GUEST3 等。 |
| 字词错误率 (WER) | Word 错误率(WER) 是衡量语音到文本准确性的行业标准。 WER 对识别过程中识别的错误单词数进行计数。 然后,它除以正确脚本中提供的单词总数(正确脚本通常通过人工标记来创建)。 |
| 标记错误率(TER) | 标记错误率 (TER) 衡量与正确脚本中提供的标记相比(正确脚本通常通过人工标记来创建),最终识别单词、大写、标点符号等内容的正确性。 |
| 运行时延迟 | 在语音转文本中,延迟是语音音频输入和听录结果输出之间的时间。 |
| 字词分割错误率 (WDER) | 字词分割错误率 (WDER) 计算与真实标记相比,分配给错误说话人的单词中的错误数量。 WDER 率越低,质量越高。 |
能力
系统行为
下面我们列出了使用我们的语音转文本服务的主要方法。
实时语音转文本 API
这是通过语音 SDK 或 REST API 进行常见 API 调用,用于发送音频输入并实时接收文本听录。 语音系统使用语音模型来识别输入音频中所说的内容。 在实时语音转文本期间,系统将音频流作为输入,并持续确定生成到目前为止观察到的音频的最可能字词序列。 该模型在典型使用场景和各种扬声器中针对大量不同的音频进行训练。 例如,此功能通常用于组织的服务或应用程序中进行语音查询或听写。
批量转录 API
批量听录是另一种类型的 API 调用。 它通常用于发送预先录制的音频输入,并在异步模式下接收转录文本(即在稍后的时间点)。 若要使用此 API,可以指定多个音频文件的位置。 语音转文本技术从文件读取音频输入,并生成返回到指定存储位置的听录文本文件。 此功能用于支持更大的听录作业,无需实时向最终用户提供听录内容。 例如,转录呼叫中心的录音内容,以深入了解客户和呼叫中心座席的表现。
使用批量听录时,可以选择使用 Whisper 模型,而不是默认的 Azure AI 语音转文本模型。 若要确定 Whisper 模型是否适合你的用例,可以比较这些模型之间的输出在批处理中的区别。 在 Speech Studio 中试用,然后通过自定义语音使用测试功能执行更深入的评估。 请注意,Whisper 模型也可以通过 Azure OpenAI 获得。
语音翻译 API
此 API 将音频输入转换为文本,然后将其转换为其他语言。 翻译的听录输出可以采用文本格式返回,也可以选择使用 文本转语音将文本合成为可听语音。 有关详细信息,请参阅 什么是 Azure AI Translator?
子功能和选项
上述 API 可以选择使用以下子功能:
- 模型自定义:Azure AI 语音使开发人员能够自定义语音转文本模型,以提高特定方案的识别准确性。 可通过两种方法自定义语音转文本:
- 语言检测:与默认 API 调用不同,必须提前指定音频输入的语言或区域设置,使用语言检测,可以指定多个区域设置,让服务检测应使用哪种语言来识别音频的特定部分。
- 分割:此功能默认处于禁用状态。 如果选择启用此功能,该服务将区分不同说话人的话语。 生成的听录文本包含一个指示 GUEST1、GUEST2、GUEST3 等的“说话人”属性,该属性表示在音频文件中说话的说话人。
用例
语音转文本可以为用户提供与应用程序和设备交互的不同方式。 语音转文本技术允许用户通过语音和听写来操作应用程序和设备,而不是在键盘上键入文字或使用手进行触摸屏交互。
- 智能助手:开发家电、汽车和家庭智能助手的公司可以使用语音转文本来启用自然界面搜索查询或按语音触发某些功能。 这称为 _command-and-_control。
- 聊天机器人:公司可以构建聊天机器人应用程序,用户可以使用支持语音的查询或命令来与机器人交互。
- 语音键入:应用允许用户使用语音来听写长格式文本。 语音键入可用于输入消息、电子邮件和文档的文本。
- 语音命令:用户可以通过语音(指挥和控制)触发某些操作。 两个常见示例是按语音输入查询文本,并按语音选择菜单项。
- 语音翻译:可以使用语音到文本技术的语音翻译功能,通过语音与其他说话不同语言的用户进行通信。 语音翻译支持跨多种语言进行语音到语音的通信。 若要查看支持的区域设置的最新列表,请参阅语音服务的语言和语音支持。
- 呼叫中心听录:公司通常会在客户支持呼叫等方案中记录与其用户的对话。 音频录音可以发送到批处理 API 进行转录。
- 混合语言听写:用户可以使用语音转文本技术以多种语言听写。 使用语言检测,听写应用程序可以自动检测口语并相应地听录,而无需用户指定他们说话的语言。
- 实时对话听录:当所有说话人在同一房间并使用单麦克风设置时,实时听录需要标注每句话的说话人(Guest1、Guest2、Guest3 等)。
- 预先录制的音频的对话转录:录制含有多位讲话者的音频后,可以使用我们的服务获取每位说话者(Guest1、Guest2、Guest3 等)的发言转录。
选择其他用例时的注意事项
语音转文本 API 提供了用于开发支持语音的应用程序的便捷选项,但考虑将集成 API 的上下文非常重要。 必须确保遵守适用于应用程序的所有法律和法规。 这包括了解你根据隐私和通信法的义务,包括国家和地区隐私、窃听和适用于你的司法管辖区的窃听法。 仅收集和处理符合用户合理期望的音频。 这包括确保你拥有用户收集、处理和存储其音频数据所需的全部必要和适当的许可。
许多应用程序旨在供特定单个用户用于支持语音的查询、命令或听写。 但是,应用程序的麦克风可能会从非主要用户拾取声音或语音。 为了避免无意中捕获非主要用户的声音,应考虑以下信息:
- 麦克风注意事项:通常,无法控制谁可能会在输入设备附近说话(该设备将输入的音频发送到语音转文本云服务)。 你应该鼓励用户在公共或开放环境中使用启用了语音的功能和应用程序时格外小心,在这些环境中,其他人的语音可能会被轻松捕获。
- 仅在用户合理期望范围内的体验和功能中使用语音转文本:包含说话人的音频数据是个人信息。 语音转文本不应用于秘密音频监控目的,也不应以违反法律要求的方式使用,或用于公共场所以及用户可能对隐私有合理期望的应用程序和设备中。 仅使用语音服务以符合用户合理期望的方式收集和处理音频。 这包括确保用户拥有收集、处理和存储其音频数据所需的所有和适当的同意。
- Azure AI 语音服务和低语模型的集成:耳语模型使用多语言识别和可读性等高级功能增强 Azure AI 语音服务。 语音服务还通过支持大规模批量听录和说话人分割来提升 Whisper 模型的性能。 是否使用默认语音服务语音转文本模型或 Whisper 模型取决于特定的用例。 建议利用 Speech Studio 中的批处理试用和自定义语音体验来评估这两个选项,以找到最适合业务需求的选项。
- 预录制事件的对话听录:如果所有扬声器都位于同一声学环境中(例如,对话发生在人们与公用麦克风交谈的房间里),系统将表现更好。
- 对话听录:尽管对话中说话人的数量没有限制,但当说话人数低于 30 时,系统的性能会更好。
- 法律和法规注意事项:组织在使用任何 AI 服务和解决方案时需要评估潜在的特定法律和监管义务,这些义务可能不适合在每个行业或方案中使用。 此外,AI 服务或解决方案并未设计为按适用服务条款和相关行为准则禁止的方式使用,也不得按这类方式使用。
不支持的使用
- 使用说话人识别进行对话听录:根据设计,语音服务不提供说话人识别和分割,也无法用于识别个人。 换句话说,演讲者将在听录中显示为 Guest1、Guest2、Guest3 等。 这些内容将被随机分配,不能用于标识对话中的单个说话人。 对于每个对话听录,Guest1、Guest2、Guest3 等的分配将是随机的。
为了防止出于识别目的滥用语音服务的任何可能,你负责确保你使用该服务(包括分割功能)仅适用于受支持的用途,并且你拥有适当的法律依据以及所有服务使用所需的许可。
局限性
语音转文本可识别音频输入中的语音,然后生成听录输出。 这需要正确设置音频输入和口语样式中使用的预期语言。 非最佳设置可能会导致准确性降低。
技术限制、操作因素和范围
准确度说明
衡量语音到文本准确性的行业标准是单词错误率(WER)。 若要了解详细的 WER 计算,请参阅 测试自定义语音模型的准确性。
听录准确性和系统限制
语音转文本使用统一的语音识别机器学习模型来转录各种上下文和主题域中的语音内容,包括命令和控制、听写和对话。 无需考虑对应用程序或功能方案使用不同的模型。
但是,需要为每个音频输入指定语言或区域设置。 语言或区域设置必须与输入语音中说的实际语言匹配。 有关详细信息,请参阅支持的区域设置列表。
许多因素可能导致听录的准确性较低:
- 声学质量: 支持文本的语音应用程序和设备可能会使用各种麦克风类型和规范。 已基于各种语音音频设备方案(例如电话、移动电话和扬声器设备)创建统一语音模型。 但是,即使用户使用高质量的麦克风,语音质量也会下降。 例如,如果扬声器位于远离麦克风的位置,则输入质量会太低。 离麦克风太近的扬声器也可能导致音频质量恶化。 这两种情况都可能会对语音转文本的准确性产生不利影响。
- 非语音干扰: 如果输入音频包含特定级别的噪音,准确性将受到影响。 噪音可能来自用于录制的音频设备,或者音频输入本身可能包含噪音,例如背景或环境噪音。
- 重叠语音: 音频输入设备范围内可能有多个扬声器,它们可能同时说话。 此外,当主要用户说话时,其他演讲者可能会在后台讲话。
- 词汇: 语音转文本模型已在许多域中训练了各种单词。 用户可能会使用一些不在标准词汇中的、特定于组织的术语和专门行话。 如果模型中不存在的单词出现在音频中,则结果是听录错误。
- 口音: 即使在同一语言环境内,例如英语 - 美国(en-US),许多人也会有不同的口音。 非常具体的口音还可能导致听录错误。
- 不匹配的区域设置: 用户可能无法说出你期望的语言。 如果为音频输入指定英语 - 美国(en-US),但说话人以瑞典语说话,例如,准确性会降低。
- 插入错误:有时,语音转文本模型可以在存在干扰或软背景语音时生成插入错误。 使用语音服务时会受到限制,但在使用 Whisper 模型时频率略高,如 OpenAI 模型卡片中所述。
由于这些声学和语言变体,设计应用程序时,输出文本中应会出现某种程度的不准确。
系统性能
系统性能是由以下关键因素(从用户的角度来看)来衡量的:
- 字词错误率 (WER)
- 标记错误率(TER)
- 运行时延迟
仅当模型在所有场景中(如对话语音转录、呼叫中心转录、听写和语音助手的转录)显示显著改进(例如 5% 相对 WER 改进),且符合资源使用和响应延迟目标时,该模型才会被视为更好。
对于分割,我们使用字词分割错误率 (WDER) 来衡量质量。 WDER 越低,分割质量越高。
提高系统性能的最佳做法
如前所述,背景噪音、侧语音、麦克风距离、说话风格和特征等声学条件可能会对识别的内容的准确性产生不利影响。
为了获得更好的语音体验,请考虑以下应用程序或服务设计原则:
- 设计 UI 以匹配输入区域设置: 不匹配的区域设置可降低准确性。 语音 SDK 支持 自动语言检测,但它仅能检测到运行时指定的四个区域设置中的其中一个。 你仍需要了解用户说话时将使用的区域设置。 UI 应清楚地指示用户可通过列出支持的语言的下拉列表来表达哪些语言。 详细信息请参阅 支持的语言环境。
- 允许用户重试: 由于暂时性问题(如不清楚或快速语音或长时间暂停),可能会出现误知。 如果您的应用程序需要特定的转录,例如预定义的操作命令(如“是”和“否”),但没有获取这些转录,则用户应能够重试。 典型的方法是告诉用户:“很抱歉,我没听懂。” 请重试。”
- 通过语音进行操作时请先确认: 与基于键盘、点击或触控的 UI 一样,如果音频输入可以触发动作,用户应有机会确认动作,特别是通过显示或播放已识别或转录的内容来确认动作。 典型的示例是按语音发送短信。 应用重复识别的内容,并要求确认:“你说,'谢谢' 。 是发送还是更改它?”
- 添加自定义词汇: 语音转文本提供的一般语音识别模型涵盖广泛的词汇。 然而,特定场景的行话和专有名词(例如,人名和产品名)可能未得到充分代表。 根据方案,可能说出哪些字词和短语可能会有显著差异。 如果可以预测将说出哪些字词和短语(例如,当用户从列表中选择项目时),你可能想要使用短语列表语法。 有关详细信息,请参阅 语音转文本入门中的“提高识别准确性”。
- 使用自定义语音: 如果应用程序方案中的语音转文本准确性仍然较低,则可能需要考虑为声学和语言变体自定义模型。 你可通过使用自己的语音音频数据或文本数据训练模型来创建自己的模型。 有关详细信息,请参阅 自定义语音。
语音转文本评估
语音转文本模型通过测试来评估。 测试的目标是确认模型在每种关键方案和普遍的音频条件下都表现良好,并且我们正在实现跨人口因素的公平目标。
评估方法
对于模型评估,使用测试数据集。 在每次模型部署之前,都会运行回归测试和模型性能测试。 回归测试的关键指标是 WER、TER、WDER(如果在执行语音转文本时启用了分割)、第 90 百分位的延迟。
评估结果
我们努力交付所有模型更新无回归(即更新的模型只应改进当前的生产模型)。 每个候选模型直接与当前生产模型进行比较。 要评估模型是否可部署,WER 必须至少比当前生产模型相对降低 5%。
语音转文本模型通过具有多样性的语音音频进行训练和优化,包括:
- 麦克风和设备规格
- 语音环境
- 语音方案
- 说话人的语言和口音
- 演讲者的年龄和性别
- 演讲者种族背景
对于分割,使用其他数据变体:
- 每个说话人说话的时间长度
- 说话人数
- 改变音调和语气的情感演讲
生成的语音转文本系统将用户的口语转录为文本,这些文本可以被自然语言理解的对话系统使用,或者用于摘要、情感分析等分析任务。
公平性注意事项
在Microsoft,我们努力使地球上的每一个人都能取得更多成就。 此目标的重要组成部分是努力创建公平和包容的技术和产品。 公平是一个多维的社会技术主题,它影响我们产品开发的许多不同方面。 了解更多微软的方法以实现公平。
我们需要考虑的一个维度是系统对不同群体的表现有多好。 研究表明,如果不有意识地努力提高所有群体的性能,AI 系统的性能往往可能会因种族、种族、区域、性别和年龄等因素而因群体而异。
每个版本的语音转文本模型都会针对各种测试集进行测试和评估,以确保模型可以在每个评估条件中没有很大的差距执行。 即将推出更精细的公平性结果。
评估和集成语音转文本功能以供使用
语音转文本的性能因实际用途和实现的条件而异。 为了确保方案中的最佳性能,应使用语音转文本对实现的解决方案进行自己的评估。
测试语音数据集应包含生产应用程序中收集的实际语音输入。 应随机采样数据,以反映特定时间段内的实际用户变化。 此外,应定期刷新测试数据集,以反映变体中的更改。
关于语音转文本集成和负责任使用的指南
作为 Microsoft 努力帮助客户通过使用语音转文本技术负责任地开发和部署解决方案的一部分,我们采取原则性的方法来维护个人自主权和尊严。这包括考虑 AI 系统的公平性、可靠性和安全性、隐私和保障、包容性、透明度,以及人类的责任感。 这些注意事项反映了我们对开发负责任的 AI 的承诺。
在部署 AI 驱动的产品或功能时,以下活动有助于确保成功:
- 了解它能做什么:全面评估语音转文本的功能,以了解其功能和限制。 通过用现实条件和数据进行全面测试,了解它将如何在特定方案和上下文中执行。
- 尊重个人的隐私权利:仅出于合法和合理的目的从个人那里收集数据和信息。 仅将数据和信息用于客户同意的目的。
- 法律审查:获取适当的法律建议来审查解决方案,尤其是在敏感或高风险应用程序中使用它时。 了解可能需要在哪种限制范围内工作,以及你在解决将来可能出现的任何问题方面承担的责任。 请勿提供任何法律建议或指导。
- 人机回环:让人员参与循环,并将人工监督作为要探索的一致模式领域包含在内。 这意味着确保持续对 AI 驱动的产品或功能进行人工监督,并维护人类在决策中的作用。 确保可以对解决方案进行实时人工干预,以防止伤害。 这使你能够管理 AI 模型不按要求执行的情况。
- 安全性:确保解决方案是安全的,并具有足够的控制来保留内容的完整性,并防止未经授权的访问。
- 与受影响的利益干系人建立信任:向受影响的利益干系人传达预期的好处和潜在风险。 帮助人们了解为何需要数据,以及使用数据可为他们带来怎样的好处。 以易于理解的方式描述数据处理。
- 客户反馈循环:提供反馈渠道,允许用户和个人在部署服务后报告服务问题。 部署 AI 赋能的产品或功能后,需要持续进行监视和改进。 准备好实施任何反馈和改进建议。 建立渠道,收集受影响利益干系人的问题和关注点(可能直接或间接受到系统影响的人,包括员工、访客和公众)。
- 反馈:在开发和评估过程中,从社区的不同采样中寻求反馈(例如,来自历史上边缘化的群体、残疾人和服务工作者)。 请参阅: 社区陪审团。
- 用户研究:任何同意或披露建议都应包含在用户研究中。 使用社区的代表性样本评估首次和持续使用体验,以验证设计选择是否导致实际性的透露。 在 10-20 名社区成员(受影响的利益干系人)的配合下开展用户调查,以评估他们对信息的理解,并确定是否符合他们的预期。
保护隐私的建议
成功的隐私方法可让个人获得信息,并提供控制和保护来保留其隐私。
同意处理和存储音频输入:在应用程序或设备中使用语音转文本功能之前,请务必拥有最终用户的所有必要权限。 此外,请确保你已获得许可,允许Microsoft将此数据作为第三方云服务的处理器进行处理。 请注意,实时 API 不会单独存储任何音频输入和听录输出数据。 但是,可以设计应用程序或设备来保留最终用户数据,例如听录文本。 可以选择通过语音 SDK 启用本地数据日志记录(请参阅 在语音 SDK 中启用日志记录)。