物联网中无缝的人机交互
摘要
物联网将带来一个人类与设备之间的交互至关重要的场景,以便人们能够使用、监控或配置物联网设备。此类应用中的交互基于传统的图形界面。接受自然语言交互的设备,例如通过语音命令进行交互的设备,能够在用户表达符合已知语言模式的情况下理解基本的人类指令或回答问题。一些设备可以理解自然语言语音命令,但需要依赖位于云端的复杂语音助手,这引发了严重的隐私问题。而另一些在本地处理语音的设备则只能执行非常有限的本地识别系统,要求用户熟悉系统能够处理的词汇。
本研究旨在降低物联网环境中自然语言处理的复杂性。本文提出了一种解决方案,允许物联网设备将自然语言处理任务卸载到一个能够提升自然语言使用体验的系统上,从而减轻用户学习或记忆用于触发设备动作的特定词语或术语的需求。我们已在家庭环境中实现了一个概念验证,并通过真实用户的测试评估了该设计的可行性。
Index Terms— 人机交互,物联网,自然语言处理
I. 引言
如今,大多数物联网(IoT)设备通过图形用户界面、键盘、鼠标、操纵杆、语音甚至眼球运动进行控制,并通过设备上的小型屏幕或远程设备(如智能手机)显示其状态。
语音识别已成为人类与设备之间的重要交互方式,因为对人类而言,它无需费力、天生、自然且高效。
然而,语音识别解决方案可能导致设备制造商与用户之间的误解[3]。一方面,设备制造商必须提供设备控制词的定义,以便潜在用户了解[4];另一方面,设备用户必须知道那些能够触发设备动作的有限词汇、句子或模式[5]。因此,制造商必须使用易于用户记忆的术语或句子,但考虑到语言种类和文化特征的多样性,这一点很难实现。
当设备的控制词与用户用于与设备交互的命令之间存在差异时,就会产生误解,从而导致意外行为。如果设备所期望的词语或句子在内容或词序上与用户的自然语言表达不匹配,即使意图相同(例如“switch off the TV”和“shut down the television”),这种情况也很可能发生。正因如此,与设备预期词语或句子在句法上相近或语义上相等的表达可能无法生效,或者会触发非预期的命令,降低用户体验,甚至使用户感到沮丧。
设备端语音识别受限的主要问题在于,当与不同的物联网应用领域(例如智能家居、购物中心、办公室、大学等)进行交互时,用户必须熟悉每个领域内的多个命令,而相同类型的设备在不同领域中的命令可能存在很大差异。
例如,安装在家中的暖通空调控制器与安装在大学的暖通空调控制器尽管是相似的设备,但其制造商的定义未必相同。
物联网范式带来了大量的服务[6],这些服务可以分为以下领域:
1)
个人场景
设备由单个用户使用的情况,例如用于医疗监控的可穿戴设备。
2)
私人场景
用户和设备数量有限且明确的情况,例如智能家居或私人汽车。
3)
公共上下文
用户的数量和设备的数量可能无法预测,并且可能会不断改变,例如办公室、智慧城市或购物中心。
在个人和私有上下文中,设备不会频繁改变。因此,可以假设用户对这些设备是熟悉的,即使记住设备的命令可能不太方便,但也不是大问题。然而,在公共上下文中,潜在的设备和用户数量巨大。由于这一点,用户很难记住每个设备的命令,而制造商也几乎不可能找到一组有限的词语,以在考虑大量潜在用户的情况下最小化错误。
这项工作在先前研究[7]的基础上,具有双重目的。
首先,它提出了一种能够代表附近设备执行自然语言处理的系统。通过这种方式,物联网设备制造商只需提供适当的设备描述,即可将此功能集成到产品中,而该描述可被系统所理解。
其次,该系统旨在通过有控制地扩展设备的定义,实现自然语言作为物联网接口的无缝采用。这种扩展可以是基于地域感知的,从而提升用户体验。如此一来,所提出的系统减少了用户使用语音或文本接口的工作量,并简化了希望集成此类接口的新产品的开发。
本文提出了一种改进的命令推断方法(设备可将其语言处理任务卸载)以及一种用于描述或注释物联网中设备的机制。这些注释在根据本地上下文扩展后,将用于创建相关的语言表达式集合,并为语言解释器派生度量指标。
通过这些度量指标,所提出的系统能够识别制造商最初未考虑的新语言表达式,从而使设备能够响应更丰富、更复杂的自然语言表达,并且该系统由于对设备空间具有更全面的可见性,因此可以执行涉及多个设备的服务组合。
II. 相关工作
A. 人机交互中的主要问题
人机交互(HDI)涉及将人类意图转化为对设备的控制命令。此外,交互还包括反向的沟通,即将数据转化为人类可理解的信息。人机交互也被称为移动人机交互[8]、移动人机计算机交互[9]、和移动设备人机交互[10]。
人机交互是一个跨学科领域,涉及人类与计算设备交互方式的理论、设计、实现和评估。早期的人机交互关注如何设计和实现高可用性的界面,即产生易于使用且高效的界面。
人机交互有两个主要目标。第一,识别并理解用户如何与其设备进行交互。第二,设计引人入胜的系统,以积极提升整体用户体验[11]。
在此背景下,设备为用户服务,提供用户希望它们执行的动作,例如打电话或提供天气信息。
人机交互中的一个重要问题是,人们需要习惯使用特定命令来触发动作[3],例如通过语音助手。对于不熟悉这类系统的用户来说,这是一个令人烦恼的要求[4],例如老年用户。新手用户经常抱怨新设备的陌生感和学习曲线[5]。这些研究中的主要观察结果是,人们使用出人意料的多种词汇来指代相同的动作或服务,即并不存在单一的访问术语[12]。
因此,开发者用来描述设备或软件动作的关键词不一定与用户熟悉的词汇一致。设计师可能会选择某些术语、视觉图像或关键词来指代计算机、设备或服务的动作,这些应易于所有用户理解,例如文本编辑器中的“保存”或“打开”等动作,通常使用视觉图标并配合一些标签来表示。
Matsuda et al.[13]提出了一种使用自然语言的音视频控制方法。用户通过自然语言发出请求。系统对该句子进行分析,并向用户提出问题,以确定具体的动作。该系统的主要问题是用户必须知道如何正确回答,即了解音视频系统的各个组成部分。
Park[14]开发的成果提出了一种用于移动设备的基于自然语言的用户界面。该系统的应用范围局限于具有有限资源的移动设备。在此情况下,模型根据模式将语音请求转换为移动设备可理解的命令。
本文提出了一种对用于描述动作的术语的简洁描述方法,旨在减少制造商方面的工作量,并方便用户使用设备。
B. 描述物联网中的服务与设备
物联网是一场即将到来的技术革命,将彻底改变我们的环境,并推动应用程序和服务的创新[15]。物联网将实现设备与人之间的全球连接。物联网将现实生活和物理活动与虚拟世界联系起来[16]。
为了连接到网络空间,物理实体通常会配备包含描述这些实体的元数据的电子设备。然而,将物理实体连接到网络空间存在一些限制
例如,由于虚拟和动态信息不断变化,因此无法对其进行扩展。
解决此局限性的一种方法是使用本体。本体是共享概念化的形式化明确规范[17]。本体中包含的概念结构可被视为一种空间,可用于比较两个概念之间的语义接近性[18]。这些本体扩展了符合标准规范的信息,表示一段知识。然而,使用本体涉及一些约束:如果使用本体来描述设备,则这些设备应被标准化,以便适配到标准本体中。
不同的本体仅处理上下文建模[19]或与服务属性相关的服务质量[20]。其他本体则侧重于空间建模[21],还有一些强调家庭人机交互[22]或致力于实现即插即用集成[23]。此外,物联网范式涉及大量的服务和设备。如此庞大的设备数量是物联网的特征:到2020[24]年,联网设备将达到500亿个。
此外,本体数量与服务和设备的数量成正比。因此,大量的设备或服务会带来大量需要精确且简洁地描述它们的本体。
因此,开发包含这500亿台设备的标准化本体所需的工作量过于巨大,难以承受。如今,使用当前本体一致且完整地描述每台设备是不可能的。
本体是极其强大的工具,因为它们描述知识并支持推理。然而,其处理过程消耗大量资源,尤其是在描述数量众多的动作时。
解决设备描述问题的另一种方法是使用标签。对资源进行打标签是指向该资源添加元数据,以附加更多相关信息。这些元数据由自然语言中的关键词组成,从人类视角出发描述资源,使其更易于理解。
在软件开发中,打标签被用来促进软件开发者与非专业用户之间的沟通[25]。打标签的另一个应用场景是搜索引擎,人们基于标签进行查询[26]。然而,这些并不是使用打标签的唯一场景。William Jones et al.研究了人们组织信息的方式。他们的研究得出结论:普通用户在命名文件夹和文件时会使用关键词,以实现对它们的简单管理[27]。打标签是用户寻找资源的方式,因为它具有可用性、符合自然习惯,并且能在内容与使用该内容的人之间建立关系。
物联网意味着人类、服务和设备之间的交互。这些服务或设备中的每一个都可以被视为用户希望获取的资源。
因此,打标签可用于描述虚拟服务在物联网范式下的设备。用户可以通过与使用搜索引擎或命名文件夹相同的方式来查找这些服务或设备。这种描述方式涉及元数据,而这些元数据无法通过物理标签或有限的本体来添加。使用标签的好处在于它们不是标准化的,其使用对用户来说自然且直观。
本文提出了一种通过标签来增强设备和服务描述的方法。该描述被本文提出的系统用于在人机交互中将自然语言作为输入。
C. 自然语言处理
自然语言处理(NLP)采用计算技术来学习或理解人类语言内容。当需要将人类与设备之间的交互提升到更高水平时,就会使用自然语言处理[28]。
理想情况下,无论用户使用何种术语与虚拟世界进行交互,虚拟世界都应能够理解该用户,推测出这些术语背后的意图,即具有相同目标的不同句子应触发相同的结果。例如,“shut down the television”和“switch off the TV”这两个句子具有相同的预期目的。对于人类而言,意识到这两个句子应产生相同的结果是自然且直观的,但对于设备而言却并非如此。在这一领域,已经开发出了一些工具。
判断两个句子的意图接近程度这一任务可以细分为两部分:首先,找出这些句子之间是否存在相似或相关的词;其次,找出句子中重要的词,例如动词或名词。
对于方程的第一部分,有一些示例,例如 WordNet[29]、FrameNet[30]、或建议的上层合并本体(SUMO)[31]。
WordNet 是一个大型的英语词汇数据库。该数据库分为名词、动词、形容词和副词,这些词被归类为同义词集合,每个集合代表一个词汇化概念。WordNet 包含超过 118,000 个不同的词形和超过 90,000 个不同的词义(包括多义性和句法范畴)。词汇数据被组织成一组在至少一个上下文中表达相同含义的英语单词。其中包含上位词、下位词、蕴含、反义词等不同的关系。WordNet 是一个词汇集合,最初设计用于人工查阅,而不是用于自然语言文本的自动处理。
FrameNet 项目是一个词典编纂项目,通过手动和自动方法从大型电子文本语料库中提取关于 英语 词汇的关联性语义和句法 属性 的信息。它是一个包含超过13,000 个词义和超过200,000个已标注 句子 的词典,用于 语义角色标注。该项目基于 框架语义学 理论。一个 框架 通过其 参与者 之间的 交互 来表示一个场景,而这些参与者承担特定的角色。动词 和 名词 可用于识别一个框架,每个框架中的已标注 句子 展示了给定词语可能的语义角色。
SUMO为通用术语提供了定义。该上层本体覆盖范围极广,可作为语义网中搜索、互操作和沟通的语义基础。建议的上层合并本体通过整合多个现有的上层本体而创建。
SUMO为通用术语提供定义,并作为构建更具体领域本体的基础。SUMO的开发旨在构建一个标准的上层本体,以促进数据互操作性、信息搜索与检索、自动推理和自然语言处理。上层本体仅限于元级、通用、抽象和哲学性的概念,因而具有足够的通用性,能够从高层次上涵盖广泛的领域。特定领域的概念不会被包含在内。
本研究的目的是根据句子的意图来评估两个句子之间的接近程度。因此,WordNet 是我们方法和框架的核心,因为它提供了概念之间的多种关系:WordNet 使用同义词集来表示词义,而 FrameNet 的操作基于对场景的描述,SUMO 是一个本体,但并未涵盖所有术语,例如口语表达。
对于第二个任务,已有高性能工具可用于识别句法和语义信息,以及关于话语上下文的信息。
一个例子是斯坦福CoreNLP[32]。斯坦福 CoreNLP套件是由斯坦福大学自然语言处理研究小组发布的软件工具包。斯坦福CoreNLP工具包是一个Java管道,可提供常见的语言处理任务。该工具提供自然语言处理功能,包括词性标注、命名实体识别、将句子解析为其语法结构,以及识别名词短语提及之间的共指关系。
此类工具的另一个例子是自然语言工具包(NLTK)[33]。它是一个Python库,被划分为独立的模块,负责特定的自然语言处理任务,如分词、词干提取、打标签、组块化和句法分析。
本研究使用自然语言处理技术,从自然语言句子中提取关键信息,以理解用户的意图。
我们选择将CoreNLP纳入我们的研究,是因为它使用Java编写,并且与其他框架(如NLTK)相比,设置和运行更加简单,因为用户无需学习和理解复杂的安装过程和操作流程。它可以作为一个集成工具包,提供广泛的语法分析工具,并支持多种主要(人类)语言[32]。
III. 系统架构
该系统的目的是解释人类的自然语言指令,并从上下文中提取有用信息。通过这种方式,系统可以找到候选设备并触发可能需要编排的简单或复杂动作。
所提出的架构(见图1)除了用户外还考虑了两个不同的实体。这两个实体是控制器和一组物联网设备。控制器介于用户与设备之间。它从自然语言表达中理解用户的意图,推断出应涉及哪些设备以达到期望的结果,并监督整个过程。
每个物联网设备预计将提供一个或多个可按照通用格式描述的独立动作。每个动作可以独立描述,并与实现底层协议消息和控制执行的绑定相关联。这种抽象与最先进的物联网框架[34]兼容。
A. 描述物联网设备
如第II.B节所述,目前在描述互联网上影响物联网环境的资源方面已付出大量努力。资源可以通过本体进行描述,并从中推断其属性。如前所述,本体是极其强大的工具,因为它们能够描述知识并支持推理。然而,本体消耗大量资源。这对于描述物联网设备动作尤其令人担忧,因为这些设备数量可能众多,而推理引擎可能运行在资源受限设备上。另一种方法是使用多个关键词对资源进行标签化,如果关键词选择得当,则可以准确描述设备动作,并且能够在资源受限设备上处理。因此,所提出的系统采用标签来描述设备。此外,在系统中添加新设备及其本体可能计算开销较大,因为它可能需要本体匹配,而使用标签则可以在合理的计算成本下集成新设备。
因此,所提出的系统要求每个愿意接收自然语言指令的设备在被发现后,需使用元数据向控制器进行描述。
这些元数据是一组动作及其描述。对于每个动作,元数据包含一组带有关键词或简短自然语言表达的自然语言标签。可以使用描述功能结果或功能本身的关键词来为动作打标签。例如,一个执行器可能分别具有“设置”、“重置”和“切换”的标签。
通过这种方式,与设备动作相关的关键词可以在控制器内的数据库中建立索引,并可像任何文本检索应用一样进行查询。
标签应仅限于与动作直接相关的词语或表达(参见图 2)。由于系统使用这些标签集来识别特定动作的目的或预期结果,简洁性对于获得最佳结果至关重要。
B. 控制系统
本节描述了控制器的模块及其相互关系(见图3)。
检测器允许用户向系统发出查询。任何形式为语音、文本或手势的指令均可由指令检测器捕获。指令检测器使用多种输入设备,如麦克风、键盘或消息接口。输入设备的分布方式及其使用不在本文讨论范围之内。由指令检测器捕获的自然语言表达被转换为文本,并输入到指令解释器中。
指令解释器 是从 指令检测器 解析 用户指令 的模块。它处理整个文本,并生成一个 指令原语,该原语是来自用户输入的一组选定词以及相关词簇的集合。
Workflow Orchestrator 处理生成的指令原语以获得期望结果。它生成一系列设备动作,执行这些设备动作可实现指令原语中表达的用户意图。
工作流协调器依赖于集群管理器来查找设备及其设备动作,通过单个或复合执行这些设备动作可实现期望结果。
Cluster Manager 从设备描述中收集标签,并对这些标签以及第四节A部分中所述的其他相关词进行索引。
从设备操作描述中提取的相关词、词类和标签具有一个 Identification String(IdS)。工作流协调器向集群管理器查询查找与解释器提供的指令原语中的术语相匹配的标签集,并通过其操作标识集来识别这些标签集。Workflow Orchestrator 使用评分算法可以推断出应触发哪些设备动作以获得期望结果。该算法在第四节中进行了描述。
最后,Message Builder/Interpreter 实例化与设备交互所需的任何协议绑定。它还监控设备状态和设备操作执行情况,并相应地更新 Workflow Orchestrator。
IV. 自然语言处理
该系统以两个阶段处理自然语言。第一阶段需要搜索同义词和相关词,以创建一个术语数据库,用于扩展设备提供的关键词来描述一个动作。这些数据提供给簇 管理器。
第二阶段是通过指令解释器分析用户的查询,以生成指令基元。
A. 设备元数据处理
如图2所示,设备动作使用自然语言标签进行描述。
这组标签可能由制造商或开发人员提供,但也可能由最终用户提供的。
正如第二节中所讨论的,选择合适词汇的主要问题在于这些词汇必须符合任何潜在用户会使用的术语。这是一把双刃剑。一方面,包含大量相关标签的设备描述可以通过
默认情况下,习惯、文化或年龄分层会影响用户使用自然语言的方式,因此可以认为在描述中添加更多词汇会增加潜在用户的数量。然而,这可能会显著增加误报的数量,因为设备动作可能被错误地匹配到过多的指令。另一方面,简洁且准确描述动作的设备描述可以减少误报,从而改善用户体验,但可能覆盖的潜在用户数量较少。
为了解决这些问题,系统通过从在线词典中获取同义词和相关词来对关键词进行受控扩展。该过程可通过关注自然语言表达和文化特征的演变来加以控制。系统通过分析用户最常使用的词语或术语的上下文,研究自然语言的演变情况,从而调节控制器所管理的同义词或相关词数据集。
因此,制造商或开发者需要添加一小部分用自然语言描述动作的术语。后续的词汇扩展过程将处理用户的多样性。一个简单的示例如表一所示。该表包含一个电视的操作示例,该电视可以被打开或关闭,或调谐到不同的频道。
| 动作 name | 操作描述 | 操作标签 |
|---|---|---|
| 关闭 | 关闭 电视 | “电视”,“关闭” |
| 打开 | 开关上的 电视 | “电视”,“打开” |
| 改变 频道 | 改变当前的 电视 频道 | “电视”, “频道”, “改变” |
系统首次为新设备操作处理标签时,会向英语同义词在线词典发送查询。之后,它会探索每个标签的相关词。
该系统原型使用普林斯顿大学的名为WordNet的英语词汇数据库[29],但也可使用其他语言和数据库。
系统将那些基于文化特征在同一句子中经常与原词一起使用的词视为相关词。此外,在某些语境下具有相同含义的词也是相关词。通过这种方式获得的相关词集合会被保存在本地缓存中,因为它们不会频繁变化。
集群管理器使用相关词集合,根据标签的同义词和相关词进行聚类。以表一中的示例为例,表示为“电视”(名词)的动作标签将扩展为“tv”和“telly”,因此这些术语将属于同一组。因此,集群管理器管理这些相关词的组。
操作标签可以存在于多个相关词的簇中。这取决于词性类型。例如,“light”一词可以用作名词、动词、副词或形容词。这些每一种用法都将与相应的相关词进行聚类。例如,如果“light”被用作名词,则它将与“照明”或“点火器”等术语相关联。在
对比,如果用作动词,则与“点燃”或“照亮”相关。同样的原则适用于副词和形容词。
如前所述,每个簇都被分配一个标识字符串和一个词性类型,例如“动词”。
考虑到表一中的示例,“switch off the telly”、“TV off”、“television out”或“shut down the television”这些句子将指向相同的簇集合并触发相同的动作。因此,无需学习特定的术语或表达来触发动作。
B. 分析用户自然语言查询
一旦创建了词簇,就在完成设备标签扩展并为它们分配操作标识集后,系统即可准备接收用户指令。当用户使用自然语言制定指令时,系统将从该指令中提取关键词,并将其与设备元数据处理阶段生成的簇中的词语进行比较,从而推断出应触发的设备操作。
为此,指令检测器会识别用户指令并将其发送给指令解释器。指令解释器根据词语之间的关系构建指令原语。斯坦福大学开发了一个用于自然语言处理的工具包,可提供这些词语之间的关系[32]。
该系统认为以下关系最为重要:
1) “dobjt.” 直接宾语 动词的宾语。
2) “nmod.” 名词修饰语 用于修饰或限定其他词语含义的术语。
3) “compound.” 用于修饰或限定一个术语含义的术语。
4) “dep.” 依赖关系 依赖于其他词语的术语。
5) “nummod.” 数量修饰语 用数量来限定名词的含义。
6) “case.” 为名词性元素提供更多信息。
7) “nsubj.” 名词主语 作为从句句法主语的名词短语。
8) “advmod.” 副词修饰语。 用于修饰其他词语意义的副词。
指令原语包含输入的自然语言指令中的词汇集合,这些词汇根据它们之间的关系进行过滤。过滤后的词汇集合由输入指令中所有与其他词汇存在前述关系的词汇构成。在解释用户指令时,会考虑所有这些词汇。而那些与其余词汇无关联的多余词汇则被舍弃。
对于这些词中的每一个,工作流协调器通过向集群管理器查询,在词簇数据库中进行搜索。集群管理器提供每个词所属簇的IdS。因此,生成的指令原语包含过滤后的词(选定词)以及这些词所归属的簇标识符集合。
该过程如图4所示,其中句子“Please, switch on the desk light”首先通过关系进行过滤,然后与现有簇关联以构建指令原语;例如,“switch on”、“connect”和“turn on”这些术语属于同一簇(其IdS为“gh4s”),因此“switch on”与“turn on”具有相同的效果,当制造商使用同义词描述动作时,它们将关联到相同的设备。
为了确定用户想要触发的是哪个动作,工作流协调器会将集群管理器从用户命令中提取出的结果组与设备标签扩展后创建的操作标识集进行比较。
为此,工作流协调器会处理所有标签组合,并在动作集合中寻找最大匹配。
图4中的示例包含16种操作标识集组合(从左到右为 2·2·1·1·4= 16)。在此示例中,每种组合都会与动作进行比较。根据输入顺序获得的每个动作的匹配项数量用于排序。匹配项数量更高的将被选为有效项。
V. 实现与结果
我们进行了概念验证实现,以使用参与者模型验证本文中定义的算法。参与者模型是一种著名的数学模型,其中计算原语为参与者[34]。参与者可以创建其他参与者,并通过消息传递与其它参与者通信。参与者作为小型单线程应用,可用于模拟资源受限设备。
模拟设备的参与者会根据接收到的消息不断演化并改变其状态。我们将这些参与者称为虚拟设备。在我们的实验中,控制器是感知虚拟设备的参与者。
该实验模拟了一个小型物联网领域(智能家居),共有12个设备和43种不同动作。
为了构建测试向量数据库,我们创建了一个在线表单,用于从大规模人群中收集自然语言指令。该表单通过本机构的学生和学术人员以及社交网络进行宣传。参与者收到一份需要填写的表单,其中描述了不同的场景,例如:“你躺在床上,想要关闭台灯”“桌子”或“你正在听收音机,想要将调频旋钮调到 100.5调频”。共收集了2170个句子(指令)。
我们将每条指令作为系统输入,处理所有指令的结果被存储在数据库中,随后由人工检查。
系统会为用户指令返回带有相应排名的候选操作,并按降序排列,排在第一位的是算法认为最可能的操作。多个候选操作可能具有相同的排名,从而导致不同操作之间出现平局。我们使用工作流协调器返回的已排序动作集合作为评估系统性能的指标。对结果进行评分的标准如下:
1) 如果正确操作与结果中第一个候选动作匹配,则该结果评分为5(完全匹配);如果正确操作位于第二位,则评分为4,依此类推,直到评分为1。如果正确操作在结果中的排名为第六位或更高,则该结果评分为1。
2) 如果出现平局,结果评估将减少一分,但无论如何,评估不得低于一分。
3) 如果动作存在拼写错误或模糊的,则其结果评为0(无效)。
该评估的结果如图5所示,其中模糊的句子数量为 574个,共2170个。其余1596个句子根据上述标准进行了评估。
图5 显示,在未训练系统的情况下,处理指令的结果中有92%在第一或第二位置包含正确操作。因此,这证明了系统正确理解了92%的指令。
该原型实现经过精心设计,具有较小的内存占用和较低的CPU消耗,旨在用于小型消费类电子商品设备。在仿真与测试阶段,我们的目标设备是一块配备四核RISC、运行频率为900兆赫、内存为1GB的开发板。
该原型多次执行相同的仿真以测试实现的稳定性。每轮中,相同的包含2170个句子的输入集被随机打乱,并以10到100秒之间随机选择的时间间隔发送给系统。
图6显示,内存在整个测试过程中保持稳定,从未超过380兆字节。因此,该原型可以以可承受的价格安装在任何现有的电子设备中,例如小型个人计算机,或集成到智能家居等智能环境中。
VI. 结论
物联网范式正逐渐通过大量新型连接设备补充现有的消费技术,提供了极为广泛的新可能性。可用性是物联网中最关键的问题之一。为了被广泛采用,新设备应当易于使用。然而,正如本文所讨论的,即使设备集合中的每个设备都易于使用,同时进行接口连接、控制和协调整个设备集合也可能非常繁琐。
如今,使用自然语言作为用户界面已成为研究中的热门话题。我们展示了一种系统,该系统利用自然语言作为简单和复杂指令的通用接口,降低了人机交互的复杂性,并缩小了开发者与最终用户之间的差距。正如所讨论的,具有明显相似知识和专业水平的不同用户可能会使用不同的语音命令来触发相同的动作。
这项工作采用了标签和相关词,而不是本体(因为处理本体会消耗大量资源而影响效率),以扩展每个动作的参考空间,证明在无需训练的情况下,成功率可达92%。
该原型展现出一种模块化架构,可轻松实例化于受限的商用消费技术设备中,如性能测试所示。其弹性(异步消息驱动)和灵活性(每个模块都可以单独实例化)有助于其在现有和未来的物联网领域中的部署。
我们的未来工作将继续探索该架构的潜力,通过增强控制器从模糊查询中学习的能力,并引入上下文感知识别系统,以更有效地识别用户的意图。
1万+

被折叠的 条评论
为什么被折叠?



