zhuanli/21/202180077688.html by HTTrack Website Copier/3.x [XR&CO'2014], Mon, 24 Jul 2023 09:35:09 GMT --> 评估说话者识别性能的制作方法

评估说话者识别性能的制作方法

文档序号:34865246发布日期:2023-07-23 18:21阅读:84来源:国知局
评估说话者识别性能的制作方法

1.本公开涉及评估说话者识别性能。


背景技术:

2.最近,提供多个用户输入模态的计算设备变得越来越普遍。例如,智能手机和其它用户设备包括语音识别服务,该语音识别服务允许用户向设备提供语音输入,作为键入或指向输入的替代。在一些情况下,基于语音的输入作为与计算设备交互的免提方式可能更方便。一些设备要求在基于语音输入执行操作之前验证用户的身份,以防止侵犯隐私和安全。


技术实现要素:

3.本公开的一个方面提供一种评估验证模型的性能的方法。该方法包括在数据处理硬件处接收第一组验证结果,其中该第一组验证结果中的每个验证结果指示在相应用户设备上执行的主验证模型是否在相应用户与相应用户设备之间的相应交互期间将相应用户的身份验证为相应用户设备的一个或多个注册用户中的一个。该方法还包括在数据处理硬件处接收第二组验证结果,其中该第二组验证结果中的每个验证结果指示在相应用户设备上执行的替代验证模型是否在相应用户与相应用户设备之间的交互期间将相应用户的身份验证为相应用户设备的一个或多个注册用户中的一个。该方法进一步包括由数据处理硬件标识第一组验证结果和第二组验证结果中包括性能度量的每个验证结果,该性能度量指示主验证模型或替代验证模型中的相应一个是能够或不能够在相应用户与相应用户设备之间的相应交互期间将相应用户的身份验证为一个或多个注册用户中的一个的一个验证模型。该方法另外包括由数据处理硬件基于在第一组验证结果中标识的包括性能度量的多个验证结果来确定主验证模型的第一性能得分。该方法还包括由数据处理硬件基于在第二组验证结果中标识的包括性能度量的多个验证结果来确定替代主验证模型的第二性能得分。该方法进一步包括由数据处理硬件基于第一性能得分和第二性能得分来确定替代验证模型的验证能力是否优于主验证模型的验证能力。该方法还包括当替代验证模型的验证能力优于主验证模型的验证能力时,由数据处理硬件利用替代验证模型替换在至少一个相应用户设备上执行的主验证模型。
4.本公开的实施方式可以包括以下可选特征中的一个或多个。在一些实施方式中,该方法还包括在数据处理硬件处接收第三组验证结果,其中该第三组验证结果中的每个验证结果指示在相应用户设备上执行的控制验证模型是否在相应用户与相应用户设备之间的相应交互期间将相应用户的身份验证为相应用户设备的一个或多个注册用户中的一个。在这些实施方式中,该方法进一步包括由数据处理硬件标识第三组验证结果中包括性能度量的每个验证结果,该性能度量指示控制验证模型是能够或不能够在相应用户与相应用户设备之间的相应交互期间验证相应用户的身份的一个控制验证模型。在这些实施方式中,该方法另外包括由数据处理硬件基于在第三组验证结果中标识的包括性能度量的多个验
证结果来确定控制验证模型的第三性能得分,并且由数据处理硬件基于第二性能得分和第三性能得分来确定替代验证模型的验证能力是否优于控制验证模型的验证能力。在这些实施方式中,利用替代验证模型替换在每个相应用户设备上执行的主验证模型包括当替代验证模型的验证能力优于主验证模型和控制验证模型两者的验证能力时,利用替代验证模型替换在每个相应用户设备上执行的主验证模型。
5.在一些示例中,所述方法包括由数据处理硬件初始地分配要在第一多个用户设备上执行的主验证模型和要在第二多个用户设备上执行的替代验证模型。在这些示例中,替换在至少一个相应用户设备上执行的主验证模型包括重新指派替代验证模型,以代替主验证模型在第一多个用户设备中的至少一个相应用户设备上执行。第一多个用户设备可以大于第二多个用户设备。
6.本公开的另一方面提供一种用于评估验证模型的性能的系统。该系统包括数据处理硬件和与数据处理硬件通信的存储器硬件。存储器硬件存储指令,该指令当在数据处理硬件上执行时使数据处理硬件执行操作。该操作包括接收第一组验证结果,其中该第一组验证结果中的每个验证结果指示在相应用户设备上执行的主验证模型是否在相应用户与相应用户设备之间的相应交互期间将相应用户的身份验证为相应用户设备的一个或多个注册用户中的一个。该操作还包括接收第二组验证结果,其中该第二组验证结果中的每个验证结果指示在相应用户设备上执行的替代验证模型是否在相应用户与相应用户设备之间的交互期间将相应用户的身份验证为相应用户设备的一个或多个注册用户中的一个。该操作进一步包括标识第一组验证结果和第二组验证结果中包括性能度量的每个验证结果,该性能度量指示主验证模型或替代验证模型中的相应一个是能够或不能够在相应用户与相应用户设备之间的相应交互期间将相应用户的身份验证为一个或多个注册用户中的一个的一个验证模型。该操作另外包括基于在第一组验证结果中标识的包括性能度量的多个验证结果来确定主验证模型的第一性能得分。该操作还包括基于在第二组验证结果中标识的包括性能度量的多个验证结果来确定替代主验证模型的第二性能得分。该操作进一步包括基于第一性能得分和第二性能得分来确定替代验证模型的验证能力是否优于主验证模型的验证能力。该操作还包括当替代验证模型的验证能力优于主验证模型的验证能力时,利用替代验证模型替换在至少一个相应用户设备上执行的主验证模型。
7.在一些实施方式中,该操作还包括接收第三组验证结果,其中该第三组验证结果中的每个验证结果指示在相应用户设备上执行的控制验证模型是否在相应用户与相应用户设备之间的相应交互期间将相应用户的身份验证为相应用户设备的一个或多个注册用户中的一个。在这些实施方式中,该操作进一步包括标识第三组验证结果中包括性能度量的每个验证结果,该性能度量指示控制验证模型是能够或不能够在相应用户与相应用户设备之间的相应交互期间验证相应用户的身份的一个控制验证模型。在这些实施方式中,该操作另外包括基于在第三组验证结果中标识的包括性能度量的多个验证结果来确定控制验证模型的第三性能得分,并且由数据处理硬件基于第二性能得分和第三性能得分来确定替代验证模型的验证能力是否优于控制验证模型的验证能力。在这些实施方式中,利用替代验证模型替换在每个相应用户设备上执行的主验证模型包括当替代验证模型的验证能力优于主验证模型和控制验证模型两者的验证能力时,利用替代验证模型替换在每个相应用户设备上执行的主验证模型。
8.在一些示例中,该操作包括初始地指派要在第一多个用户设备上执行的主验证模型和要在第二多个用户设备上执行的替代验证模型。在这些示例中,替换在至少一个相应用户设备上执行的主验证模型包括重新指派替代验证模型,以代替主验证模型在第一多个用户设备中的至少一个相应用户设备上执行。第一多个用户设备可以大于第二多个用户设备。
9.系统或方法的实施方式可以包括以下可选特征中的一个或多个。在一些实施方式中,在第一组验证结果和第二组验证结果中接收到的验证结果都不包括标识相应用户的用户标识符。在一些配置中,在第一组验证结果和第二组验证结果中接收到的验证结果都不包括与相应用户与相应设备之间的相应交互相关联的音频数据。在操作上,主验证模型在第一组训练数据上训练,而替代验证模型在不同于第一组训练数据的第二组训练数据上训练。主验证模型可以包括第一神经网络,并且替代验证模型可以包括具有与第一神经网络不同的神经网络架构的第二神经网络。
10.在一些示例中,性能度量包括错误拒绝度量,该错误拒绝度量指示主验证模型或替代验证模型中的相应一个错误地拒绝将相应用户标识为相应用户设备的一个或多个注册用户中的一个。错误度量可以包括以下中的一个:放弃(punt)度量,该放弃度量指示主验证模型或替代验证模型中的相应一个在与相应用户设备的相应交互期间授权相应用户获得访客特权;双放弃度量,该双放弃度量指示紧接在与相应用户设备的先前相应交互期间授权相同的相应用户获得访客特权之后,主验证模型或替代验证模型中的相应一个在与相应用户设备的相应交互期间授权相应用户获得访客特权;以及放弃和重新询问度量,该放弃和重新询问度量指示紧接在主验证模型或替代验证模型中的相应一个在与相应用户设备的先前相应交互期间授权相同的相应用户获得访客特权之后,当相应交互对应于相应用户请求授权特权时,主验证模型或替代验证模型中的相应一个在与相应用户设备的相应交互期间授权相应用户获得访客特权。
11.在一些实施方式中,性能度量包括错误接受度量,该错误接受度量指示主验证模型或替代验证模型中的相应一个错误地接受相应用户作为相应用户设备的一个或多个注册用户中的一个。这里,错误接受度量可以包括代理冒名顶替者接受度量,该代理冒名顶替者接受度量指示主验证模型或替代验证模型中的相应一个确定与满足验证阈值的相应用户设备的至少两个注册用户相关联的相应验证得分。
12.下文在附图和具体实施方式中阐述本公开的一个或多个实施方式的细节。其它方面、特征和优点将从具体实施方式和附图以及从权利要求书变得显而易见。
附图说明
13.图1a到1d是用于验证分析器的示例语音环境的示意图。
14.图2a和2b是用于评估验证模型的性能的示例验证分析器的示意图。
15.图3是用于评估验证模型的性能的方法的操作的示例布置的流程图。
16.图4是可以用于实施本文中所描述的系统和方法的示例计算设备的示意图。
17.在各个附图中的相同的附图标记指示相同的元件。
具体实施方式
18.通常,验证过程指代基于与实体相关的一个或多个特征来标识是否授权实体执行某些任务或行动的过程。当实体是一个人时,验证过程中涉及的特征通常是该人的生物标志物。例如,验证过程使用从一个人所说出的语音或音频中提取的音频特征来验证是否授权他或她执行特定任务。除了语音之外,验证过程可以使用的生物标志物的其它示例包括指纹、视网膜特征、面部特征(例如,在面部识别中)和/或笔迹(例如,签名)。对于这些生物标志物中的任一个,验证过程通常将当前的生物标志物输入与先前的生物标志物输入(即,登记生物标志物)进行比较,以确定当前的生物标志物输入是否匹配或非常类似于先前的生物标志物输入。在当前的生物标志物输入与先前的生物标志物输入匹配或非常类似时,验证过程考虑当前生物标志物的输入以验证人的身份;允许人执行需要身份验证的特定任务。
19.说话者识别系统可以执行验证过程,以验证两个或多个口头话语是否源自同一说话者。为了执行该验证,与说话者识别系统相关联的验证系统比较音频样本(例如,两个音频样本),并且确定与说话者所说出的第一话语相对应的第一音频样本是否匹配或非常类似于与另一口头话语相对应的第二音频样本。当第一话语匹配或非常类似于另一口头话语时,验证系统标识出两个话语可能来自同一说话者。另一方面,当第一话语无法匹配或非常类似于另一口头话语时,验证系统标识出每个话语可能来自不同说话者。在一些示例中,说话者识别系统比较与文本相关的音频样本以确定匹配。在其它示例中,说话者识别系统比较两个与文本无关的音频样本,以确定两个音频样本是否源自同一说话者。通常,为了执行说话者验证,说话者识别系统的用户向验证系统提供一个或多个口头话语,以便向说话者注册系统注册或登记用户。向说话者注册系统登记的用户可以称为“注册用户”,因此术语

登记用户’和

注册用户’可以互换地使用。通过向说话者识别系统登记,用户的登记可以授权用户执行与说话者识别系统相关联的某些任务。此外,用户的登记使得验证系统能够使用登记话语(即,为登记用户而提供的口头话语)来稍后验证用户的身份。例如,在向说话者识别系统登记为计算设备的授权用户之后,当用户向计算设备提交口头话语时,说话者识别系统(例如,验证系统)将提交的口头话语与一个或多个登记话语进行比较,以确定用户是否为授权用户。
20.为了执行验证,验证系统可以使用验证模型来生成话语的说话者是授权用户还是未授权用户的预测。然而,不幸的是,自动化系统并非没有缺陷,并且当说话者不是授权用户时,验证模型有时可能将话语的说话者错误地标识为授权用户,或者当说话者是授权用户时,验证模型有时可能将话语的说话者错误地标识为未授权用户。当系统在说话者不是授权用户时将话语的说话者标识为授权用户时,这种错误标识被称为对说话者的错误接受。另一方面,当系统在说话者实际上是授权用户时将话语的说话者标识为未授权用户时,这种错误标识被称为对说话者的错误拒绝。由于验证系统可能具有与错误接受和/或错误拒绝有关的一些性能问题,因此验证系统的提供者收集关于验证系统性能的反馈或评估验证系统的性能可能是有利的。但是,当验证系统已经在实施中(例如,部署在计算设备上)时,评估验证系统的性能变得更加复杂。
21.评估验证系统性能的传统方法通常很繁琐,和/或包括一定程度的手动输入以供审查,以确保验证系统得到正确评估。在一个此类方法中,志愿者可以从各种设备呼叫,根
据一些标识符(例如,个人标识号(pin))标识他们自己,并且提交标记有说话者标识符的录音。对于这些录音的集合,可以使用一定数量的这些录音来评估验证系统(例如,验证模型)的性能,以确定验证系统对已知说话者身份执行验证的程度。这种方法的缺点是志愿者通常按他们的时间计酬,并且评估集录音通常经过审计或修复,以确保准确的评估。这种结果能够导致成本高且耗时的过程。
22.可以确定验证系统的性能的另一方法是从使用验证系统的设备收集用户数据的方法。在该方法中,向来自使用验证系统的设备的用户数据分配说话者标识符,该说话者标识符掩盖关于用户的任何信息。例如,该方法假设来自使用验证系统的每个设备的音频与特定说话者有关,并且在音频被收集时为音频分配个人标识号(pin)以消除任何用户关联。与呼叫志愿者方法非常相似,从使用验证系统的设备收集的音频数据然后可以被用作评估数据集,以评估验证系统的性能。然而,正确的是,即使当该过程消除任何用户关联并且以用户同意为前提时,验证系统的提供商也不想承担对用户数据的控制,也不想对可能危及客户端数据安全的任何潜在安全问题负责。此外,每当用户或客户端提供其自己的数据时,即使是向可靠的来源提供数据,客户端也会放弃对其数据的控制,并且面临无法防止此数据出现任何下游问题(例如,安全问题)的风险。因此,这种方法面临的现实是单个设备可能包括多个用户或说话者,但也会牵涉隐私和/或安全问题。
23.为了克服困扰评估验证系统的性能的各种技术的问题,验证系统的提供商可以替代地利用由验证系统收集的关于验证过程或在验证过程期间收集的信息。换句话说,当验证系统验证说话者是否为登记/授权用户时,验证过程生成关于说话者与验证系统之间的交互的数据(例如,元数据)。例如,验证过程为验证会话期间的交互生成类似于事件日志的信息。为了说明,登记的说话者可以向设备说出话语以执行需要授权的动作。一旦设备设备接收到需要授权的这种口头话语,验证系统就确定说话者是否在设备上登记,并且当验证系统验证说话者时允许设备执行功能,或者生成指示无法验证说话者的某种类型的响应。对于该验证会话,设备和/或验证系统可以生成验证数据,该验证数据指示发起验证过程,并且验证并接受说话者或不验证并拒绝说话者。通过收集关于验证过程的验证数据,所生成的验证数据不包括说话者的身份/标识符或与说话者相关联的任何音频数据/特征,同时仍然提供关于验证系统的性能的关键见解。更具体地,验证数据可以被用于构建指示验证系统的性能的度量,并且更具体地,验证数据可以被用于构建由验证系统利用的验证模型,而不共享与说话者相关联的任何个人或生物特征数据。通过使用脱离用户特定信息的验证数据并避免收集附加的评估音频数据(例如,通过志愿者呼叫),这种性能评估技术克服传统性能评估技术的几个缺点。
24.图1a至1d是包括一个或多个用户10的语音环境100的示例,用户将口头话语12传送到验证设备110(还称为设备110或用户设备110)。用户10(即,话语12的说话者)可以说出话语12作为从设备设备110请求响应的查询或命令。类似地,话语12或话语12的至少一部分可以包括调用短语(例如,热词、唤醒词、触发短语等),该调用短语在由设备110检测到时触发设备110从睡眠状态唤醒,并且开始记录与要由设备110和/或远程服务器上运行的自动语音识别(asr)系统处理的查询或命令相关联的后续音频。设备110被配置成从语音环境100内的一个或多个用户10捕获声音。这里,音频声音可以指用户10所说出的话语12,该话语用作调用短语、可听查询、设备110的命令,或由设备110捕获的可听通信。设备设备110的
或与设备110相关联的语音启用系统可以通过回答查询和/或致使执行命令来字段化命令的查询。
25.这里,设备110被配置成检测话语12并且调用本地或远程asr系统。设备110可以对应于与用户10相关联的任何计算设备并且能够接收对应于口头话语12的音频信号12。用户设备110的一些示例包括但不限于移动设备(例如,移动电话、平台计算机、膝上型计算机、电子书阅读器等)、计算机、可穿戴设备(例如,智能手表)、音乐播放器、播放设备、智能电器(例如,智能电视)和物联网(iot)设备、遥控器、智能扬声器等。设备110包括数据处理硬件112和存储器硬件114,该存储器硬件与数据处理硬件112通信并且存储指令,该指令在由数据处理硬件112执行时使数据处理硬件112执行与话语检测或某种其它形式的话语/语音处理(例如,说话者验证)相关的一个或多个操作。
26.在一些示例中,设备110包括一个或多个应用程序(即,软件应用程序),其中每个应用程序可以利用与设备110相关联的一个或多个语音处理系统(例如,语音识别系统、文本到语音系统、说话者识别系统、验证系统140等)以执行应用程序内的各种功能。在一些实施方式中,设备110可以检测话语12并且将表征话语12的数据提供到一个或多个语音处理系统。例如,设备110包括验证应用程序,所述验证应用程序被配置成验证话语12的说话者10是否为授权用户。例如,验证应用程序执行说话者验证过程,该说话者验证过程涉及基于说话者的语音的特征(即,音频特征)来接受或拒绝说话者10的身份声明,该特征由来自说话者10的一个或多个话语12确定。在一些示例中,设备110在本地配置有应用程序以执行本地说话者验证或远程地配置有应用程序以利用远程资源来执行说话者验证的某些部分。验证系统140可以执行与文本相关或与文本无关的说话者验证。与文本相关的说话者验证对于从说话者所说的调用短语中提取的音频特征识别说话者可能是有用的,该调用短语用于触发设备110从睡眠状态唤醒。
27.设备110进一步包括具有音频捕获设备(例如,麦克风)116的音频子系统,用于捕获语音环境100内的口头话语12并且将该口头话语转换成电信号。虽然设备110在所示示例中实施单个音频捕获设备116,但是设备110可以在不偏离本公开的范围的情况下实施音频捕获设备116的阵列,由此阵列中的一个或多个音频捕获设备116可以物理上不驻留在设备110上,而是与音频子系统(例如,设备110的外围设备)通信。例如,设备110可以对应于利用位于整个车辆中的麦克风阵列的车辆信息娱乐系统。另外或替代地,设备110还包括语音输出设备(例如,扬声器)118,以用于传送来自设备110的可听音频信号。例如,设备110被配置成响应于检测到的话语12而生成合成回放信号。换句话说,话语12可以对应于设备110利用合成音频应答的查询,该合成音频由设备110生成并且经由语音输出设备118传送。为了说明,设备110可以利用合成回放信号对检测到的话语12作出响应,该合成回放信号通知扬声器10验证过程已经验证他或她作为设备110的授权用户的身份。
28.此外,设备110被配置成经由网络120与远程系统130通信。远程系统130可以包括远程资源132,诸如远程数据处理硬件134(例如,远程服务器或cpu)和/或远程存储器硬件136(例如,远程数据库或其它存储硬件)。设备110可以利用远程资源132来执行与语音处理相关的各种功能,诸如语音识别和/或说话者标识/验证。例如,设备110被配置成使用验证系统140执行说话者识别。该系统140可以驻留在设备110上(称为设备上系统)或远程地驻留(例如,驻留在远程系统130上),但是与设备110通信。在一些示例中,系统140的一些部分
本地驻留或在设备上,而其它部分远程地驻留。例如,配置成执行验证系统140的语音验证的验证模型146远程或本地驻留。在一些示例中,验证系统140可以与诸如语音识别系统、二值化系统、文本到语音系统等的其它语音处理系统组合。在一些配置中,验证系统140驻留的位置基于处理要求。例如,当系统140的大小或处理要求相当大时,系统140可以驻留在远程系统130中。然而,当设备110可以支持系统140的大小或处理要求时,一个或多个系统140可以使用数据处理硬件112和/或存储器硬件114驻留在设备110上。
29.验证系统140通常被配置成代表用户10从设备110接收验证查询142,并且提供指示由验证模型146执行的验证过程的结果的响应144。在一些示例中,验证模型146接收需要验证的验证查询142作为输入,并且关于是否验证向设备110提交验证查询142的用户10(即,用户10的身份是为了验证查询142目的而授权使用设备110的身份)生成响应144作为输出。这里,验证系统140能够对用于验证的任何类型的生物特征执行验证过程,生物特征包括面部特征(即,面部识别)、语音特征(即,语音识别)、书写特征(即,手写识别)等。在诸如图1a到1d的一些示例中,验证系统140执行语音验证过程,其中验证查询142包括表征口头话语12的音频特征,并且验证系统140将响应144提供到设备110以指示由验证模型146执行的语音验证过程的结果。音频特征可以包括d向量或i向量。换句话说,沿着系统140被配置成使用验证模型146执行说话者验证过程,以验证话语12的说话者10的身份。例如,响应144可以指示说话者10是否基于说话者10所说的口头话语12向设备110注册(即,注册的说话者)。
30.仍参考图1a,设备110可以使用验证系统140向设备110登记一个或多个用户10。通过向设备110登记用户10,该登记用作一种类型的说话者注册过程以将登记的用户10、10e标识为设备110的授权或注册用户。设备110可以是可配置的,使得设备110的登记用户10e可以访问设备110的各种功能或具有控制设备110的各种功能的许可,而未向设备110登记的未授权用户10被禁止执行设备110能够执行的一个或多个功能。可选地,设备110可以登记多个用户10。对于多个用户10,每个登记用户10e可以在设备110上配置具有关于设备110的功能的特定许可或权利的用户账户。例如,包括丈夫、妻子和九岁女儿的家庭拥有设备110。这里,当每个成年人向设备110注册时,成年人可以设置父母控制,该父母控制允许每个成年人访问或控制设备110的所有功能,但限制他们的女儿(也是登记用户10e)对设备110进行完全控制。例如,父母设置他们女儿的账户以防止女儿修改家庭自动化控制,诸如由设备110控制的恒温器时间表。这意味着一个登记用户10e可以具有与另一个登记用户10e的许可或权利重叠或不同的特定权限或权利。此外,代替仅生成登记者的权限,设备110还可以被配置成指定设备110的用户10(不是登记用户10e)的许可。例如,当设备110的用户10不是登记用户10e时,设备110可以被配置成执行有限的功能(例如,访客模式)或完全阻止未登记用户10使用设备110。在没有限制的情况下,授权登记用户10e可以许可设备110访问仅登记用户10e有访问许可的资源。例如,在具有至少两个登记用户10e的家庭中,其中一个登记用户说出由设备110捕获的语音命令“play my music playlist”(“播放我的音乐播放列表”),验证系统140能够标识特定登记说话者10e的身份,并且许可设备110访问与所标识的说话者10相关联的特定音乐播放列表,而不是其他登记用户10e的音乐播放列表。
31.在一些配置中,设备110使用验证系统140来执行将用户10登记为设备110的注册说话者的登记过程。例如,与验证系统140相关联的说话者识别应用程序提示用户10说出一
个或多个登记话语12、12e,可以从该登记话语为用户10生成说话签名。在一些实施方式中,登记话语12e是例如一个、两个、三个、四个或更多个单词的简短短语。验证系统140可以提示用户10说出预定义的短语作为登记话语12e,或者用户10可以基于没有专门为用户10提供的短语自发地说出并且提供登记话语12e。在一些示例中,用户10可以说出多个登记话语12e,其中每个登记话语是相同短语或不同短语。登记话语12e可以包括用户10说出预定义热词,该热词被配置成触发设备110从睡眠状态唤醒以处理在预定义热词之后接收到的口头音频。虽然示例示出用户10向设备110提供(多个)口头登记话语12e,但是其它示例可以包括用户10中的一个或多个从另一设备(例如,智能手机)访问验证系统140以提供(多个)登记话语12e。
32.在一些示例中,在接收到登记话语12e之后,验证系统140处理登记话语12e以生成每个登记话语12e的说话者表示。验证系统140可以从登记话语12e的所有、一些或一个说话者表示生成用户10的说话者签名。在一些示例中,说话者签名是多个登记话语12e的相应说话者表示的平均值。在其它示例中,说话者签名对应于来自特定登记话语12e的特定说话者表示,该特定登记话语基于一个或多个标准(例如,基于所选择登记话语12e的音频的音频或语音质量)而选择。一旦为说话者10生成说话者签名,说话者签名就可以本地存储在设备110上或存储在远程系统130中(例如,存储在远程存储器硬件136中)。
33.在登记之后,当设备110检测到用户10在语音环境100内的查询话语12、12q时,验证系统140被配置成基于查询话语12q标识查询话语12q的说话者10是否为设备110的登记用户10e。查询话语12q可以指代特殊类型的话语或口头短语,诸如与文本相关的验证短语,或者更一般地指代与文本无关的短语,该与文本无关的短语可以包括用户10在完成一个或多个用户10的登记过程之后所说出的任何话语12。这里,由验证模型146执行的验证过程标识检测到的查询话语12q的说话者10是否为登记用户10e,并且生成响应144以指示说话者10是否为登记用户10e。在一些示例中,验证模型146可以访问已经为登记用户10e生成的说话者签名,诸如d向量或i向量,并且将由说话者10检测到的查询话语12q与说话者签名进行比较,以确定查询话语12q是否对应于特定的说话者签名。在这些示例中,当查询话语12q对应于特定的说话者签名时,验证系统140确定查询话语12q由登记用户10e说出,并且生成指示查询话语12q的说话者10是登记用户10e的响应144。
34.图1a图示通过执行登记过程首先向设备110登记的用户。换句话说,图1a描绘至少一个登记话语12e由用户10发送到设备110以向设备110登记。在登记过程之后,用户10向设备110说出查询话语12q。当设备110接收到查询话语12q时,设备110将查询话语12q传送到验证系统140,以使验证模型146能够验证说话者10是登记用户10e。这里,当验证模型146验证说话者10确实是登记用户10e时,验证系统140将响应144传送到设备110以指示说话者10是设备110的登记用户10e。一旦被验证,说话者10可以使用设备110或访问由设备110提供的计算功能的某个方面,登记用户10e有访问该计算功能的许可,或者更具体地,计算功能指定给用户10。在一些示例中,查询话语12q包括跟随查询的热词。在这些示例中,验证模型146可以基于对应于热词的音频的仅一部分、对应于查询的音频的仅一部分,或包括热词和查询两者的整个音频而验证说话者10。在附加的示例中,查询话语12q可以是登记用户10e提供给验证模型146以验证登记用户10e的身份的特定验证短语。
35.当说话者10发起由验证系统140的模型146执行的该验证过程时,验证会话已经开
始,该验证会话可以包括说话者10与验证系统140之间的一个或多个交互(例如,经由设备110)。验证系统140被配置成记载/记录验证结果148,该验证结果指示在验证过程期间发生的交互事件。可以捕获为验证结果148的这些交互事件的一些示例包括用于验证的查询12q的接收、查询12q的拒绝、查询12q的接受、验证系统140确定(例如,登记的说话者概率)、来自说话者10的关于验证过程的反馈、或其它验证日志事件。这里,可以生成验证结果148的来自说话者10的反馈的示例是当说话者10随后与查询12q的结果交互的时候。换句话说,与查询12q的实际结果的进一步交互可以指示验证系统140正确地验证说话者10,因为说话者10正在进一步参与对查询12q(例如,点击搜索结果或使用由验证系统140授权的功能)的响应144。由于这些验证结果148的性质,这些日志事件通常不包括任何敏感的用户信息(例如,用户标识符)和/或不包括对应于查询12q的实际音频数据。
36.图1b和1c描绘在验证系统140的验证过程期间可能发生的一些验证结果148。在图1b中,验证系统140图示设备110包括示出为用户x、用户y和用户z的三个登记用户10e。在该示例中,用户x向设备110提交陈述“what is next on my calendar?”(“我日历上的下一项是什么?”)的查询12q。在接收到该查询12q时,设备110和/或验证系统140可以首先确定查询话语12q是否调用对验证的需要。当话语包括例如对存储在设备110上或设备110可访问的个人信息的请求、对执行受限功能的请求、或对已指定为需要验证的其它信息的请求时,话语12通常调用对验证的需要。例如,在三口之家的先前示例中,父亲可能具有一个音乐播放列表,该音乐播放列表包含父亲指定为需要授权的露骨的歌词,使得他九岁的女儿就不会接触到该露骨的歌词。在一些示例中,设备110和/或验证系统140可以对查询12q执行验证过程,而不管查询12q是否调用对验证的需要。也就是说,当说话者10对设备110说话时,验证系统140可以最初确定说话者10是否为登记用户10e,但仅当口头话语12需要授权执行时才强制授权。在图1b中,“what is next on my calendar?”的口头话语是请求个人日历信息的查询。这里,验证系统140开始验证过程,并且尝试验证说话者,即用户x。尽管用户x在登记用户的列表上,但在该示例中,验证系统140未能验证说话者10,即用户x是登记用户10e。基于该失败,验证系统140将响应144传送到设备110,该响应继而传送到说话者10,即用户x以指示验证失败。响应144陈述“sorry.i could not verify your voice.”(“对不起。我无法验证您的语音。”)。由于说话者10知道他或她是设备110的验证系统140的登记用户10e,因此说话者10可以提交第二查询12q2,例如该第二查询试图使用增加的措辞来第二次发出相同的查询12q(即,重新询问相同的查询12q)。如图1b中所示,该第二查询12q2也被证明为不成功,因为验证系统140未能验证说话者10,即用户x的语音,并且将该失败再次作为针对陈述“sorry.i could not verify your voice.”的第二响应144、144b传送。在该不成功的验证会话期间,验证系统140将在会话期间发生的验证结果148记录为验证数据。例如,图1b图示了三个验证结果148、148a-c。第一验证结果148a指示放弃(punt)事件,该放弃事件指代验证系统140(例如,验证模型146)没有识别说话者10的事件。第二验证结果148b指示放弃和重新询问事件,其中说话者10没有被识别(即,被放弃),但是说话者10再次重新询问相同的查询12q2。第三验证结果148、148c指示双放弃事件,该双放弃事件指代在相同查询12q2(即,重新询问)的验证失败(即,放弃)和后续重新提交之后,验证模型146再次未能验证说话者10(即,双放弃)的事件。换句话说,这些潜在验证结果148a

148c中的每一个指示错误拒绝,因为说话者10是用户x,并且用户x实际上是验证系统140的登记用户10e。
37.作为另一示例,图1c图示了验证结果148是错误接受的场景。确定验证系统140具有作为错误接受的交互事件的一种方式是当验证系统140具有多个登记用户10e的时候。对于多个登记用户10e,当由说话者10说出话语12时,验证系统140可以确定话语12对应于每个登记用户10e的可能性。例如,验证系统140为每个登记用户10e生成登记得分,该登记得分指示说话者10是否是对应的登记用户10e的可能性。当登记说话者10e的登记得分满足接受阈值得分时,验证系统140被配置成将说话者10指定为特定登记用户10e。尽管这是验证系统140的理想行为,但是有时验证模型146的性能指示对于特定话语12q,验证模型146确定多于一个登记用户10e具有满足话语12q的接受阈值的得分。例如,一个家庭中都是登记用户10e的两兄弟可能具有相似的语音特征,这些语音特征有时很难区分以用于说话者验证。当这种情况发生时,验证结果148指示冒名顶替者(impostor)接受事件,该冒名顶替者接受事件指代验证系统140确定多于一个登记用户12e具有满足接受阈值的得分的事件。它被称为冒名顶替者接受事件,因为说话者10仅是单个登记用户10e,但是验证系统140接受查询话语12q作为多于一个登记用户10e的身份。换句话说,实际上没有说话的被接受身份是一个冒名顶替者。例如,图1c描绘阈值接受值是值0.5,并且查询话语12q导致验证过程,该验证过程指示多于一个等级用户10e可以是说话者10。这里,说话者10是用户x并且验证模型146指示用户x的得分为0.65,用户y的得分为0.8并且用户z的得分为0.4。在该示例中,因为用户y的得分最高,因此验证系统140可以返回结果144,说“user y,you have an appointment at 5pm”(“用户y,您下午5点有个约会”),使得验证系统140认为用户y(即,冒名顶替者)说出话语12q而不是用户x。
38.图1d图示了验证系统140可以使用几个验证模型146(例如,示出为三个验证模型142a

142c)中的一个来确定话语12的说话者10是否为设备10的登记用户10e。验证系统140的提供者可以使用不同模型146来测试、开发、维护或比较地评估模型146。例如,组a描绘具有使用第一验证模型142、142a来执行验证过程的对应设备110的几个用户10(例如,七个用户10)。组b描绘具有使用第二验证模型142b的对应设备110的四个用户10。组c描绘具有使用第三验证模型142c来执行验证过程的对应设备110的三个用户10。在该描绘的示例中,第一验证模型146a可以对应于已经部署到验证系统140的大多数用户10的生产模型或主模型,并且通常应该是鲁棒性的,因为它经受住了时间的考验。第二验证模型146b可以对应于验证系统140的提供者可以用来开发验证过程的改进(例如,修复验证错误)的实验或替代模型。例如,验证模型146使用神经网络来确定话语12的说话者10是否为登记用户10e。该神经网络可以具有不同类型的神经网络架构。诸如第一验证模型146a的生产验证模型可以使用一种类型的神经网络架构,而诸如第二验证模型146b的实验验证模型使用不同类型的神经网架构或对第一验证模型146a的神经网络架构的改进/更新。另外或替代地,在一些实施方式中,每个模型146通常由一组训练数据训练,以教导模型146验证注册或登记的身份。因此,提供给每个模型146的训练数据的实质内容可能对其性能产生一定影响。至少出于这个原因,生产验证模型146a与实验验证模型146b的不同之处可以在于,每个模型146已经在不同的训练数据集(例如,验证训练示例)上进行训练。然后可以将实验验证模型146b与生产验证模型146a并行部署,以标识当与生产验证模块146a相比时,对训练数据的任何改变是否提高使用实验验证模块146b的验证系统140的验证性能。通过比较模型方法,可以将两个或多个模型146部署到某一组用户10,并且可以收集关于每个相应模型146的验证过程的验
证结果148形式的数据,以允许提供者比较和/或评估这些模型146之间的性能相似性和差异。例如,图1d图示了使用第一模型146a的组a生成第一组验证结果148、148
s1
,使用第二模型146b的组b生成第二组验证结果148、148s2,并且使用第三模型146c的组c生成第三组验证结果148、148
s3
。当使用比较模型方法时,提供者可以将大部分用户流量路由到生产验证模型146a,以避免实验验证模型146b的部署复杂性或可能发生的任何其它问题。这里,生产验证模型146a将被部署到大多数验证系统用户(即,部署到与执行验证系统140的用户10相关联的设备110),而用于比较的(多个)其它模型146被部署到少数验证系统用户(即,部署到与执行验证系统140的用户10相关联的设备110中)。
39.在诸如图1d的一些示例中,验证系统140使用多于两个模型146进行比较分析。例如,图1d以虚线描绘使用第三验证模型146c的组c,以指示提供者可以可选地部署多于两个模型以用于比较分析。这里,第三模型146、146c被示出为说明控制验证模型146的使用。控制验证模型146可以参考生产验证模型146的冗余版本(例如,第一验证模型146a),以便确认生产模型146a与实验模型146b之间的比较结果。换句话说,生产模型146a与实验模型146b之间的比较结果可以指示一些性能差异。通过还将生产模型146a或实验模型146b的性能结果与控制模型146c相比较,提供者可以能够标识性能差异实际上是由于模型146的验证还是一些其它问题导致的。例如,可能一定数量的生产模型146a已损坏或存在缺陷。这里,由于缺陷导致的生产模型146a的性能可能使实验模型146b在验证说话者10的过程中表现得更好。然而,当将实验模型146b与表示处于未损坏或没有缺陷状态下的生产模型146a的控制模型146c相比较时,控制模型146c指示比实验模型146b更好的性能。这可以向提供者指示提供者不必替换或大规模部署实验模型146b和/或在生产模型146a中可能存在一些附加问题。
40.因为验证系统140可以使用几个不同的验证模型146,所以登记过程可以使得用户10成为每个模型146上的登记用户10e,以使每个模型146能够正确地验证话语12的说话者是否为登记用户10e。取决于登记过程,在多个模型上登记用户10可能在从无法检测到登记用户10到登记用户10必须提供特定于模型的登记(例如,特定登记短语)的范围。当验证系统140进行更新或验证模型146经历将影响用户向模型146的登记的改变时,用户10可能还必须看起来重新登记。例如,基于比较分析,提供者决定利用第二验证模型146b替换第一验证模型146a。当这种情况发生时,第二验证模型146b可能需要被部署到大多数用户10以成为生产模型146。在这种情况下,一定数量的用户10可能需要在现在是生产模型146的第二验证模型146b上重新登记或第一次登记。
41.如图1a到1d中所示,语音环境100还包括验证分析器200(还称为分析器200)。分析器200与验证系统140通信并且被配置成分析一个或多个验证模型146的性能。例如,尽管图2a和2b图示了分析器200分别分析两个和三个模型146的性能,但是分析器200可缩放以对任何数量的模型146(例如,甚至单个模型146)执行分析。分析器200可以本地定位(例如,在用户设备110上)并且被配置成将其分析传送到验证系统140的提供者(例如,经由网络120),或远程定位(例如,在远程系统130中)并且与提供者通信。在一些示例中,分析器200的一些部分可以本地定位,而其它部分远程定位。分析器200被配置成接收验证结果148作为输入并且生成性能比较202作为输出。在一些示例中,性能比较202触发要关于分析器200比较的模型146采取的一些动作。例如,分析器200被配置成将不同模型146的部署调整到用
户10的一个或多个组。换句话说,当实验验证模型146b被证明具有比生产验证模型146a更好的性能验证能力时,分析器200可以利用实验或替代验证模型146b替换主验证模型或生产验证模型146a。
42.无论是分析单个模型146,还是对两个或更多个模型146执行比较分析,分析器200都从其打算分析的每个模型146接收一组验证结果148s。参考图2a和2b,分析器200包括标识器210、记分器220和比较器230。标识器210被配置成接收验证结果148并且标识对应于特定性能度量212的每个验证结果148。这里,性能度量212可以指代在验证会话期间发生的特定交互事件,该特定交互事件提供模型146能够还是不能将用户10的身份验证为一个或多个注册或登记用户10e的某一指示。例如,性能度量212对应于在验证会话期间的错误拒绝事件或错误接受事件。如先前所述,错误拒绝事件的一些示例包括放弃、双放弃、放弃和重新询问,而错误接受事件的示例是冒名顶替者接受。注意,其它类似的性能度量212可能指示验证模型146处的错误拒绝事件或错误接受事件。如图2a中所示,标识器210将验证结果148分类为一个或多个对应性能度量212、212a

212n。
43.在标识与一个或多个性能度量212相对应的验证结果148之后,标识器210将一个或多个性能度量212a

212n传送到记分器220。记分器220从标识器210接收一个或多个性能度量212a-212n并且被配置成基于包括给定性能度量212的多个验证结果148确定得分222。例如,记分器220能够确定每个不同类型的性能度量212的得分222。当记分器220确定得分222时,记分器222迎合特定模型146。换句话说,得分222形成特定模型对给定性能度量212的性能的表示,因为每一组验证结果148s对应于给定的验证模型146。为了说明,图2a描绘记分器220生成第一模型146a的第一性能度量212a的第一得分222、222a、第一模型146a的第二性能度量212b的第二得分222、222b,以及第一模型146a的第n性能度量212n的第n得分222、222n。由于在图2a中,分析器200正在比较两个模型146a

146b(例如,主验证模型146a和替代验证模型146b),因此记分器220为(多个)相同性能度量212但相对于另一模型的验证结果148(即,来自特定模型146的一组验证结果148s)生成得分222。换句话说,第二模型146b可以从记分器220接收关于与第一模型146a相同的性能度量212的得分222。这意味着第一模型146a基于来自第一模型146a的一组验证结果146
s1
接收双放弃度量212的得分222,而第二模型146b基于来自第二模型146的一组验证结果146
s2
接收双放弃量度212的得分222。
44.在一些实施方式中,当得分222对应于作为性能度量212的放弃时,放弃得分222指代一组特定验证结果148s内的放弃次数除以该组内的验证结果148的总数。对于对应于作为性能度量212的双放弃的得分222,双放弃得分222可以指代一组特定验证结果148s内的双放弃次数除以该组内的验证结果148的总数。当得分222对应于作为性能度量212的放弃和重新询问时,放弃和重新询问得分222可以指代最初在一组特定验证结果148s内放弃的同一查询12q的放弃和再次提交的组合计数除以该组内的验证结果148的总数。当得分222对应于作为性能度量212的冒名顶替者接受时,冒名顶替者接受得分222可以指代具有能够验证用户10的接受得分阈值的一个或多个登记用户10e的查询12q百分比。这里,查询12q的百分比是具有能够验证特定一组验证结果148s内的用户10的接受得分阈值的一个或多个登记用户10e的查询12q计数除以该组内的查询12q总数。
45.在一些示例中,记分器220基于一组验证结果148s内的性能度量212的类型之间的
一个或多个关系来生成验证模型146的得分222。关系可以指代表示错误接受事件的(多个)度量212与表示错误拒绝事件的(多个)度量212之间的关系。为了说明,记分器220可以通过将错误接受事件(即,错误接受错误)和错误拒绝事件(即,错误拒绝错误)合并为单一成本来生成得分222,记分器220将该单一成本转换成得分222。在一些实施方式中,得分222指代成本函数,该成本函数是错误接受事件和错误拒绝事件的加权组合。在一些配置中,错误接受事件和/或错误拒绝事件的数量可以导致记分器220能够标识在验证模型146处发生错误接受事件和/或错误拒绝事件的概率。这里,模型146的得分222可以等于第一成本系数(也称为权重)乘以错误接受事件的概率组合(例如,加上)第二成本系数乘以错误拒绝事件的概率。在其它方法中,形成得分222的成本可以表示为错误拒绝成本分量组合错误接受成本分量,其中每个成本分量表示为分配给错误事件的成本权重乘以相同说话者的概率和错误事件的概率。尽管这些是记分器220生成得分222的算法的一些示例,但是可以使用表示度量212之间的关系的其它算法来生成得分222。
46.记分器220将(多个)性能度量得分222传送到比较器230,使得比较器230可以确定验证模型146(例如,生产验证模型146a)的验证能力是否优于另一验证模型146(例如,实验验证模型146b)。为了执行该确定,比较器230比较模型146之间相同性能度量212的得分222。例如,图2a描绘将第一模型146a的第一性能度量212的第一性能度量得分222a与第二模型146b的第一性能度量212的第一性能度量得分222a进行比较的比较器230。比较器230可以被配置成比较两个或更多个模型146上的单个性能度量得分222,或者同时比较两个或更多个模型146上的多个性能度量得分222。当分析器200使用比较器230同时比较两个或更多个模型146上的多个性能度量得分222时,分析器200可以提供每种类型的性能度量212的某一重要性指示。例如,分析器200将权重应用于每种类型的性能度量得分222,以指示其对验证过程的验证能力的总体重要性。
47.继续参考图2a和2b,在一些配置中,比较器230被配置成生成性能比较202,该性能比较指示一个模型146是否优于另一模型146。例如,在图2a中,比较器230比较两个模型146a-146b(例如,主验证模型146a和替代验证模型146b),而在图2b中,比较器230比较三个模型146a-c(例如,主或生产验证模型146a、替代或实验验证模型146b和控制验证模型146c)。在一些示例中,当比较指示第二模型146b的(多个)性能得分222优于第一模型146a的(多个)对应性能得分222时,比较器230建议利用第二模型146b替换第一模型146a。在一些情况下,分析器200实际上利用第二模型146b替换第一模型146a,而不是被动地推荐这种替换。为了利用另一模型146替换模型146(例如,为了利用第二模型146b替换第一模型146a),分析器200可以转移或重新分配被分配给每个模型146的用户10或设备110的数量。例如,当替换大多数用户设备110所使用的生产验证模型146时,分析器200替代地将实验验证模型146b部署到大多数用户设备110,并且停止该大多数用户设备使用原始生产验证模型146a。在诸如图2b的一些配置中,当比较器230比较多于两个模型146的性能度量222时,分析器200可以设置关于分析器200何时将建议替换或将主动替换模型146的条件。例如,在具有生产验证模型146a、实验验证模型146b和控制验证模型146c的三个模型146a-c的情况下,分析器200设置实验验证模型146b需要具有超过其它模型146中的每一个(例如,超过生产验证模型146a和控制验证模型146c)的性能(基于性能度量得分222)的条件。
48.图3是用于评估验证模型146的性能的方法300的操作的示例布置的流程图。在操
作302处,方法300接收第一组验证结果148、148
s1
,其中第一组验证结果148、148
s1
中的每个验证结果148指示在相应用户设备110上执行的主验证模型146、146a是否在相应用户10与相应用户设备110之间的相应交互期间将相应用户10的身份验证为相应用户设备110的一个或多个注册用户10e中的一个。在操作304处,方法300还包括接收第二组验证结果148、148
s2
,其中第二组验证结果148、148
s2
中的每个验证结果148指示在相应用户设备110上执行的替代验证模型146、146b是否在相应用户10与相应用户设备110之间的交互期间将相应用户10的身份验证为相应用户设备110的一个或多个注册用户10e中的一个。在操作306处,方法300标识第一组验证结果148
s1
和第二组验证结果148
s2
中包括性能度量212的每个验证结果148,该性能度量指示主验证模型146、146a或替代验证模型146、146b中的相应一个是能够或不能够在相应用户10与相应用户设备110之间的相应交互期间将相应用户10的身份验证为一个或多个注册用户10e中的一个的验证模型。在操作308处,方法300基于在第一组验证结果148
s1
中标识的包括性能度量212的多个验证结果148来确定主验证模型146、146a的第一性能得分222、222a。在操作310处,方法300基于在第二组验证结果148
s2
中标识的包括性能度量212的多个验证结果148来确定替代主验证模型146、146b的第二性能得分222、222a。在操作312处,方法300基于第一性能得分222、222a和第二性能得分222、222a来确定替代验证模型146、146b的验证能力是否优于主验证模型146、146a的验证能力。在操作314处,当替代验证模型146、146b的验证能力优于主验证模型146、146a的验证能力时,方法300利用替代验证模型146、146b替换在至少一个相应用户设备110上执行的主验证模型146、146a。
49.图4是用于评估验证模型146的性能的方法400的操作的另一示例布置的流程图。在操作402处,方法400接收一组验证结果148、148
s1
,其中该组验证结果148、148s中的每个验证结果148指示在相应用户设备110上执行的验证模型146是否在相应用户10与相应用户设备110之间的相应交互期间将相应用户10的身份验证为相应用户设备110的一个或多个注册用户10e中的一个。在操作404处,方法400标识该组验证结果148s中包括错误拒绝度量212的每个验证结果148,该错误拒绝度量指示验证模型146错误地拒绝将相应用户10标识为相应用户设备110的一个或多个注册用户10e中的一个。在操作406处,方法400确定该组验证结果148s中包括错误接受度量212的每个验证结果148。该错误接受度量212指示验证模型146确定与满足验证阈值的相应用户设备110的至少两个注册用户10e相关联的相应验证得分。在操作408处,方法400基于在该组验证结果148、148s中标识的包括错误拒绝度量212和错误接受度量212的多个验证结果148来生成验证模型146的性能得分222。
50.图5是可以用于实施在本文档中描述的系统(例如,验证系统140和/或分析器200)和方法(例如,方法300、400)的示例计算设备500的示意图。计算设备500旨在表示各种形式的数字计算机,诸如膝上型计算机、台式计算机、工作站、个人数字助理、服务器、刀片服务器、大型机和其它合适的计算机。这里所示的组件、组件的连接和关系,以及组件的功能意味着仅仅是示例性的,并且并不意味着限制本文档中描述和/或要求保护的发明的实施。
51.计算设备500包括处理器510(例如,数据处理硬件)、存储器520(例如,存储器硬件)、存储设备530、连接到存储器520和高速扩展端口550的高速接口/控制器540,以及连接到低速总线570和存储设备530的低速接口/控制器560。组件510、520、530、540、550和560中的每一个使用各种总线互连,并且组件可以被安装在通用母板上或视情况以其它方式安
装。处理器510能够处理用于在计算设备500内执行的指令,包括存储于存储器520中或存储设备530上以将图形用户界面(gui)的图形信息显示在外部输入/输出设备上,诸如耦合到高速接口540的显示器580上的指令。在其它实施方式中,多个处理器和/或多个总线可以视情况与多个存储器以及多种类型的存储器一起使用。此外,可以连接多个计算设备500,其中每个设备提供必要操作的部分(例如,作为服务器组、刀片服务器群组,或多处理器系统)。
52.存储器520将信息非暂时性地存储在计算设备500内。存储器520可以是计算机可读介质、(多个)易失性存储器单元,或(多个)非易失性存储器单元。非暂时性存储器520可以是用于临时地或永久地存储程序(例如,指令序列)或数据(例如,程序状态信息)以供计算设备500使用的物理设备。非易失性存储器的示例包括但不限于闪存存储器和只读存储器(rom)/可编程只读存储器(prom)/可擦除可编程只读存储器(eprom)/电子可擦除可编程只读存储器(eeprom)(例如,通常用于固件,诸如引导程序)。易失性存储器的示例包括但不限于随机存取存储器(ram)、动态随机存取存储器(dram)、静态随机存取存储器(sram)、相变存储器(pcm)以及磁盘或磁带。
53.存储设备530能够为计算设备500提供大容量存储。在一些实施方式中,存储设备530是计算机可读介质。在各种不同实施方式中,存储设备530可以是软盘设备、硬盘设备、光盘设备,或磁带设备、闪存存储器或其它类似的固态存储器设备,或设备的阵列,包括存储区域网络或其它配置中的设备。在附加的实施方式中,计算机程序产品有形地体现在信息载体中。计算机程序产品包含指令,该指令在执行时执行一个或多个方法,诸如,上述那些方法。信息载体是计算机或机器可读介质,诸如存储器520、存储设备530,或处理器510上的存储器。
54.高速控制器540管理计算设备500的超带宽操作,而低速控制器560管理较低超带宽操作。这种职责的分配仅是示例性的。在一些实施方式中,高速控制器540耦合到存储器520、显示器580(例如,通过图形处理器或加速度计),以及可以接受各种扩展卡(未示出)的高速扩展端口550。在一些实施方式中,低速控制器560耦合到存储设备530和低速扩展端口590。可以包括各种通信端口(例如,usb、蓝牙、以太网、无线以太网)的低速扩展端口590可以例如通过网络适配器耦合到一个或多个输入/输出设备,诸如键盘、指向设备、扫描仪,或诸如交换机或路由器的联网设备。
55.如图所示,计算设备500可以通过多种不同形式实施。例如,算设备可以被实施为标准服务器500a,或多次实施于一组此类服务器500a中、实施为膝上型计算机500b,或实施为机架服务器系统500c的一部分。
56.本文中描述的系统和技术的各种实施方式能够在数字电子和/或光学电路、集成电路、专门设计的asic(专用集成电路)、计算机硬件、固件、软件,和/或它们的组合中实现。这些各种实施方式能够包括在一个或多个计算机程序中的实施方式,该计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以用于专用或通用目的,并且耦合以从存储系统、至少一个输入设备和至少一个输出设备接收数据和指令,并将数据和指令传输到存储系统、至少一个输入设备和至少一个输出设备。
57.这些计算机程序(还称为程序、软件、软件应用程序或代码)包括用于可编程处理器的机器指令,并且能够以高级程序化和/或面向对象的编程语言,和/或以汇编/机器语言
实施。如本文中所使用的,术语“机器可读介质”和“计算机可读介质”指代用于将机器指令和/或数据提供到可编程处理器的任何计算机程序产品、非暂时性计算机可读介质、装置和/或设备(例如,磁盘、光盘、存储器、可编程逻辑设备(pld)),包括接收机器指令作为机器可读信号的机器可读介质。术语“机器可读信号”指代用于将机器指令和/或数据提供到可编程处理器的任何信号。
58.本说明书中描述的过程和逻辑流能够由执行一个或多个计算机程序的一个或多个可编程处理器执行,以通过在输入数据上操作并且生成输出来执行功能。过程和逻辑流还能够通过专用逻辑电路,例如fpga(现场可编程门阵列)或asic(专用集成电路)执行。举例来说,适合于执行计算机程序的处理器包括通用微处理器和专用微处理器两者,以及任何种类的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行指令的处理器,以及用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括用于存储数据的一个或多个大容量存储设备(例如,磁盘、磁光盘或光盘),或可操作地耦合以从该一个或多个大容量存储设备接收数据或将数据传递到该一个或多个大容量存储设备,或两者。然而,计算机不需要具有这种设备。适合于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如,半导体存储器设备,例如eprom、eeprom和快闪存储器设备;磁盘,例如内部硬盘或可移动磁盘;磁光盘;以及cd rom和dvd-rom盘。处理器和存储器可以由专用逻辑电路补充或并入专用逻辑电路中。
59.为了提供与用户的交互,本公开的一个或多个方面能够在具有显示设备(例如,crt(阴极射线管)或lcd(液晶显示器)监视器或触摸屏)的计算机上实施,以将信息显示给用户以及可选地键盘和指向设备(例如,鼠标或轨迹球),用户可以通过键盘和指向设备将输入提供到计算机。其它种类的设备也能够被用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如,视觉反馈、听觉反馈或触觉反馈;以及从用户产生的输入能够以任何形式接收,包括声音、语音或触觉输入。另外,通过将文档发送到用户使用的设备以及从该设备接收文档;例如,通过响应于从网络浏览器接收的请求而将网页发送到用户的客户端设备上的网络浏览器,计算机能够与用户交互。
60.已经描述多个实施方式。然而,应理解,在不脱离本公开的精神和范围的情况下可以进行各种修改。因此,其它实施方式在所附权利要求书的范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1
zhuanli/21/202180077688.html by HTTrack Website Copier/3.x [XR&CO'2014], Mon, 24 Jul 2023 09:35:13 GMT -->