Siri 是 iPhone 4S 内置的智能语音识别系统,吸引了许多用户的关注。本文将从技术层面详解 Siri,主要讲述输入系统和活跃本体两部分内容。
  寰球今日,苹果正红。
  iPhone 4S 无疑是苹果公司的博利杀手及系列产品中的当家小生,除采用 A5 双核处理器、800万像素摄像头以及全新的 iOS 5 外,最吸引眼球的还是其内置的智能应用 Siri。
  Siri 并非苹果公司自主研发,最初只是苹果 App Store 上的一款应用,由 Siri 公司开发。2010年 4 月 28 日,苹果公司收购了 Siri 公司,传言收购价格在 2 亿美元左右。不久之后 Siri 从 App Store 下架,集成进 iPhone 4S。
  从纯技术角度,Siri 是一套较准确的语音识别系统,也是具有环境感知能力的持续自学习系统,更是一整套集成上述所有优点的新型人工智能框架。本质上,Siri 是通过多轮对话来获得用户事务意图的意图识别系统。为了做到这一点,其内部综合了语音识别、自然语言理解、任务控制、意图理解、服务集成等多项技术。
  用一句话来概述 Siri:Siri 能理解用户的语言语义,并经过多轮会话弄清用户的意图后,集成能够满足用户意图的多种服务(内部和外部)来帮助用户达成特定领域的事务。
  Siri 整体技术框架
  从整体上来说,Siri 符合云计算的技术架构,图 1 展示了其物理架构。Siri 正常运转需要调用词典资源、计算模型等很多资源,客户端也会存储部分数据资源和计算资源,但绝大部分数据和资源存储在服务器端。客户端接收用户输入并做简单处理。
图 1 Siri 的云技术与架构
  就语音流来说,Siri 会将语音数据传输给服务端进行语义理解和意图识别等操作,并将服务结果在客户端展示给用户。Siri 对用户需求的满足,最终要体现在能够集成提供一定功能的各种服务上。Siri 提供的所有服务,一部分是苹果自身提供的,但大部分服务都是通过调用外部网站提供的服务 API 来完成的。
  Siri 是一个功能繁复的综合 AI 框架,图 2 展示了其包含的数据、模型和计算模块。为了更易于理解整个框架,本文将其划分为能顺序执行有先后依赖关系的四部分。
图 2 Siri 技术结构图
输入系统支持用户多种模态的输入,并在内部统一以标注文本的方式表示。
在用户输入表示为文本后,Siri 利用活跃本体和对应的执行系统将文本表示解析为用户意图。
理解用户意图只是一个中间过程。为了能够帮助用户完成事务,Siri 的服务系统将调用各种内部和外部服务,作为满足用户意图的结果。
输出系统将 Siri 的运算结果返回给用户,完成一次服务,输出系统同样支持多模态输出方式。
  Siri 的资源主要分为数据资源和计算资源两类,其中数据资源有领域模型、词汇表数据库、短期记忆系统、长期记忆系统、领域本体数据库、对话流模型、服务模型、服务能力模型和外部服务;计算资源包括语音识别系统、语言模式识别器、语言解释器、对话流控制器、任务控制器、服务集成模块和语音生成系统。
  Siri 系统的复杂性由上面众多的数据资源和计算资源可窥一斑。下面将讲述输入系统和活跃本体两大子模块。
  输入系统
  Siri 系统以用户输入开始,以输出服务结果为终,其间与用户进行多轮交互。Siri 的输入系统主要提供了以下三个功能。
支持多通道输入模式。所谓多通道,即不仅支持键盘文本输入模式,也支持语音自动识别模式、GUI 界面操作模式以及系统事件触发的输入等多种输入模式。
消除用户输入信息的歧义。自然语言理解系统的最大难点是在各级别的处理过程中会遇到形式各异的语言歧义现象,而输入系统也会对用户输入的信息进行初步的歧义消解工作。
尽可能将用户的注意力引导到 Siri 能够提供的服务上。虽然 Siri 可用于趣味性的聊天对话,但其根本目的并不在此,能够为用户提供各个领域的实用服务是其本原,因此在 Siri 整个运作流程中都会尽量将用户引导到其能够提供的服务,而输入系统也肩负这一重任。
  多模态输入
  Siri 提供多模态输入,即给用户多种可选择的输入方式(如图 3 所示)。用户可以选择文本键入方式,也可以选择语音输入方式或者在 GUI 界面通过点选来进行功能选择。
图 3 Siri 支持多模态输入
  Siri 提供了多种输入通道,供用户随意选择。在用户输入前,根据与用户个人兴趣的相关性提供给用户一些可能感兴趣的选择项。如果用户没有从提供的选择项里选择,则接受用户的主动输入,在用户输入过程中 Siri 自动判断用户输入是否完成。如果判断用户还需继续输入,则将当前的输入追加到之前的输入流中,同时根据与目前输入数据的相关性自动给出一些输入建议。如果判断用户输入完成,则结束输入过程。
  在用户以任意一种输入方式输入信息的过程中,Siri 都会实时地进行引导或提示,尽可能将用户的输入引导到 Siri 可以识别的商业实体或能够提供服务的功能上。归根结底,Siri 是要根据用户的输入提供一些服务,采用主动引导而非被动等待用户自由输入,能帮助用户节约时间,充分展示出 Siri 的能力。
  Siri 的输入提示是引导用户的重要组件。在用户输入部分信息后,Siri 根据目前的信息,结合自己能够提供的服务,提供了功能强大的输入提示来引导用户到某项功能上来。这种输入提示可以是单词这种表层拼写级别的,也可以是语法语义和任务功能等深层级别的。
  比如,最简单的输入提示是自动补全功能,用户输入了“rest”,此时 Siri 可以提示用户 restaurants,通过直接选择减少用户的输入成本。Siri 也提供如替换和语义改写类型的输入提示,比如用户输入:find restaur
ants of style,此时 Siri 可以提示用户:Italian,而用户点选了这个提示后,Siri 可以将这个输入语义改写为:Find Italian restaurants。这是 Siri 在输入阶段就体现出来的智能。
  语音输入流程
  语音自动输入也是 Siri 最吸引人的特性之一。图 4 展示了 Siri 的语音输入流程。系统接收用户的声音流信号,通过调用“语音文字转换器”来将语音信号转换成可能的文字信号,这个“语音文字转换器”是 Nuance 通信公司提供的。
图 4 Siri 的语音输入流程
  虽说如此,但这个转换器可被认为是 Nuance 通信公司为苹果公司特别制作的。我们知道,“语言模型”在语音识别系统中起到至关重要的作用,因为音频符号转换为文字信息时,有多种可能选项,而哪个选项才是用户真正表达的内容呢?此时语言模型在进行正确答案选择时会发挥很大的作用。
  举个例子,假设用户语音输入:“我喜欢苹果”。语音识别后输出两个可能答案:1.我喜欢苹果;2.我稀饭苹果。此时可以利用语言模型来对两个结果进行打分,语言模型本质上是通过大规模语料统计来获得相连两个单词的连接紧密程度,通过语言模型可知“喜欢苹果”比“稀饭苹果”更容易在真实语料中出现,于是选项 1 的得分就高于选项2,此时 Siri 会将选项 1 作为识别结果。
  之所以说这个转换器是为苹果公司定制的,是因为转换器的语言模型是根据 Siri 专门训练的。Siri 是多个垂直领域的垂直智能助手,所以数据中包含领域相关的商业实体名称以及用户的个性化信息。在训练语言模型时也会考虑这一点,并将这些信息在语言模型中的权值加大,这样在识别时更容易被识别为能由 Siri 提供的服务。所以说整个 Siri 系统都有引导用户到其能够提供的服务上来的机制,这点从语音识别中也可看出。
正则匹配公司名称
  尽管经过语言模型调整有助于明确输入内容,但语音识别结果仍然不是唯一可确定的,会有语音流的多种文本解释。此时 Siri 会对其语法语义进行检查,判断哪些是符合语义的,哪些是不符合语义的。
  比如语音识别结果为两个候选项:1.Italian food for lunch;2.Italian shoes for lunch。此时 Siri 可以判断出选项 1 在语义上更合理,所以会根据语义合理性进行排序。如果得分最高的选项超过一定阈值,则 Siri 认为这就是语音识别的结果,并进行一些语义标注工作作为最终识别结果。否则,会将多个选项提交给用户进行选择,把用户的选择结果作为最终识别结果。在上面的例子中,Siri 可能会问用户:“Did you mean shoes or food?”然后根据用户的选择来挑选正确答案。
  活跃本体
  活跃本体和执行系统是 Siri 中最具技术含量的两个核心组件。活跃本体可以被理解为整个 Siri 系统的具体执行环境和场所;执行系统调用所有系统数据、词典、模型和程序,在活跃本体内将用户输入的信息解析为用户真正的意图,然后根据意图来调用外部的服务。
  如果进行类比的话,可将活跃本体类比为人工智能系统里著名的“黑板系统”,即将数据放入黑板中,各个程序来对黑板内的数据进行加工。
  在程序执行时,活跃本体内放入的数据和模型包括:领域模型、用户个性化信息、语言模式、词汇表和领域实体数据库等。
  领域模型
  领域模型包括某个领域内的概念、实体、关系、属性和实例的内部表示,这其实就是 Semantic Web 研究领域常说的 ontology。Siri 包含很多垂直领域的领域模型,如外出就餐领域包括餐馆这个概念,而这个概念又具有名称、地址和电话等属性;另外就餐事件(Meal Event)也是该领域一个概念,具有人数、日期和时间等属性;多个领域的领域模型被 Siri 用来引导输入、解析自然语言、派发服务和生成输出内容。
  领域模型有以下一些功能。
表层单词到领域概念的映射关系。
单词分类,比如判断某个单词是个餐馆名称。
保存概念关系,比如“菜系”和“餐馆”的关系,以方便 Siri 在内部作出推理功能。假设用户输入是 local mexican food,因为领域模型体现了菜系和餐馆其中一个是概念,另一个是概念的属性,于是通过内部推理可以表示为:find restaurants with style=mexican。
组织领域有关的服务地址,比如哪个网站提供餐馆评论。
在输出系统生成语言时,提供信息并进行语义转写。
  领域模型采用被动触发机制,当外部任务或事件达到一定阈值后相关概念会被触发。
  个性化信息
  Siri 在个性化方面也做得非常出。在和用户沟通的过程中,一台本来冰冷无知的机器能够叫出你的名字,并且知晓你的个人爱好,用户体验无疑会非常好。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。