基于多模态传感输入的人机对话的智能发起的系统和方法与流程
相关申请的交叉引用
本申请要求2017年12月29日提交的美国临时申请no.62/612,163的优先权,其内容全文并入此处作为参考。
本申请与2018年12月27日提交的美国专利申请_________(代理人案卷号047437-0502424)、2018年12月27日提交的国际申请_________(代理人案卷号047437-0461769)、2018年12月27日提交的美国专利申请_________(代理人案卷号047437-0502426)、2018年12月27日提交的国际申请_________(代理人案卷号047437-0461770)、2018年12月27日提交的美国专利申请_________(代理人案卷号047437-0502427)、2018年12月27日提交的国际申请_________(代理人案卷号047437-0461772)、2018年12月27日提交的美国专利申请_________(代理人案卷号047437-0502428)、2018年12月27日提交的美国专利申请_________(代理人案卷号047437-0502429)、2018年12月27日提交的国际申请_________(代理人案卷号047437-0461774)、2018年12月27日提交的美国专利申请_________(代理人案卷号047437-0502430)、2018年12月27日提交的国际申请_________(代理人案卷号047437-0461776)、2018年12月27日提交的美国专利申请_________(代理人案卷号047437-0502431)、2018年12月27日提交的国际申请_________(代理人案卷号047437-0461777)、2018年12月27日提交的美国专利申请_________(代理人案卷号047437-0502432)、2018年12月27日提交的国际申请_________(代理人案卷号047437-0461778)、2018年12月27日提交的美国专利申请_________(代理人案卷号047437-0502547)、2018年12月27日提交的国际申请_________(代理人案卷号047437-0461815)、2018年12月27日提交的美国专利申请_________(代理人案卷号047437-0502549)、2018年12月27日提交的国际申请_________(代理人案卷号047437-0461817)、2018年12月27日提交的美国专利申请_________(代理人案卷号047437-0502551)、2018年12月27日提交的国际申请_________(代理人案卷号047437-0461818)有关,其全部内容并入此处作为参考。
本示教一般涉及人机通信。具体而言,本示教涉及自适应的人机通信。
背景技术:
由于互联网连接无处不在,带来人工智能技术的进步和电子商务的蓬勃发展,因此,计算机辅助的对话系统日渐普及。例如,越来越多的呼叫中心配置自动对话机器人来处理用户呼叫。酒店开始安装能够回答旅客或客人问题的多种售货亭。在线预订(无论是旅游住宿还是剧场票务等)也越来越频繁地用聊天机器人完成。近些年来,其他领域的自动人机通信也越来越普遍。
基于不同领域中公知的会话模式,这样的传统计算机辅助对话系统通常用特定的问题和回答预先编程。不巧的是,人类会话者可能无法预测,有时不会遵从预先计划的对话模式。另外,在某些情况下,人类会话者可能在该过程中离题,并继续固定的会话模式,这可能令人恼火或失去兴趣。当这种情况发生时,这种机器传统对话系统常常不能继续使人类对话者保持参与,故使人机对话或者中辍、将任务交给人类操作员,或者,人类会话者直接离开对话,而这是不希望看到的。
另外,传统的基于机器的对话系统常常并非设计为处理人的情绪因素,更不用说在与人类交谈时将如何处理这种情绪因素考虑在内。例如,传统的机器对话系统常常不会发起会话,除非人启动系统或问某些问题。即使传统对话系统不发起会话,它具有开始会话的固定方式,不会因人而异或是基于观察进行调整。因此,尽管它们被编程为忠实遵循预先设计的对话模式,它们通常不能就会话的动态发展做出行动以及进行自适应,以便使会话以能吸引人参与的方式进行。在许多情况下,当设入对话的人明显心烦或感到灰心时,传统的机器对话系统浑然不觉,还以使那人心烦的同种方式继续会话。这不仅使得会话不愉快地结束(机器对此还是不知情),而且使那人在将来不愿意与任何基于机器的对话系统会话。
在某些应用中,为了判断如何有效进行,基于从人观察到的内容进行人机对话线程是至为重要的。一个例子是教育相关的对话。当聊天机器人用于教孩子阅读时,必须监视孩子是否以正被施教的方式具有感知力,并持续处理以便有效进行。传统对话系统的另一限制是它们对背景的毫无意识。例如,传统的对话系统不具有这样的能力:观察会话的背景并即兴产生对话策略,从而吸引用户参与,并改善用户体验。
因此,存在对解决这些限制的方法和系统的需求。
技术实现要素:
这里公开的示教涉及用于人机交流的方法、系统和程序设计。具体而言,本示教涉及自适应的人机交流。
在一实例中,公开了一种在机器上实现的用于使得与用户的交流成为可能的方法,该机器具有至少一个处理器、存储器和能够连接到网络的通信平台。经由通信平台,接收表征将要参与新对话的用户的周边情况的信息,其中,该信息从用户存在的场景获取,并捕获用户和场景的特点。相关特征从该信息中提取。基于所述相关特征来推定用户的状态,并基于所述相关特征来确定场景周围的对话背景。基于用户来确定新对话的话题,生成反馈,以便基于话题、用户状态和对话背景发起与用户的新对话。
在不同的实例中,提供了用于使得与用户的交流成为可能的系统。系统包含多模态数据分析单元,其被配置为,接收表征将要参与新对话的用户的周边情况的信息,其中,该信息是从用户所存在的场景获取的,并捕获用户和场景的特点,从该信息提取相关特征。系统包含用户状态推定器和对话背景信息确定器,用户状态推定器被配置为基于相关特征推定用户状态,对话背景信息确定器被配置为基于相关特征确定场景周边的对话背景。系统还包含对话控制器,其被配置为基于用户确定新对话的话题,并基于话题、用户状态和对话背景来生成反馈,以发起与用户的新对话。
其他的概念涉及实现本示教的软件。根据此概念的软件产品包含至少一个机器可读的非暂时性介质以及由该介质承载的信息。由该介质承载的信息可以是可执行程序代码数据、与可执行程序代码相关联的参数和/或与用户、请求、内容或其它附加信息有关的信息。
在一实例中,提供了一种机器可读的非暂时性介质,其上编码有用于使得与用户的交流成为可能的信息,其中,该信息一旦由机器读取,使得机器执行一系列的步骤。经由通信平台接收表征将要参与新对话的用户的周边情况的信息,其中,该信息从用户所存在的场景中获取,并捕获用户和场景的特点。从该信息提取相关特征。基于所述相关特征推定用户的状态,并基于所述相关特征确定场景周边的对话背景。基于用户确定新对话的话题,基于话题、用户状态和对话背景生成反馈,以发起与用户的新对话。
其他的优点和新特征将部分在下面的说明书中给出,部分将由本领域技术人员在检视下面的说明书和附图时明了或通过制造或运行实例来习得。本示教的优点可通过实践和应用下面讨论的详细实例中给出的方法、设备以及组合的多种实施形态来实现和获得。
附图说明
这里介绍的方法、系统和/或程序设计进一步以示例性实施例的方式描述。这些示例性实施例参照附图详细介绍。这些实施例是非限制性的示例性实施例,其中,贯穿几幅附图,类似的参考标号代表类似的结构,其中:
图1示出了根据本示教一实施例,在对话过程中在用户装置、代理装置和用户交互系统之间的连接;
图2示出了根据本示教一实施例,用于具有多层处理能力的自动对话伴侣的示例性高层次系统图;
图3示出了根据本示教一实施例,观察背景信息并将之用于推断情景以设计自适应对话策略的对话过程;
图4示出了根据本示教一实施例,在自动对话伴侣的不同处理层之间的示例性多层处理和通信;
图5示出了根据本示教一实施例的人机对话框架的示例性高层次系统图;
图6为根据本示教一实施例的人机对话框架的示例性过程的流程图;
图7a示出了根据本示教一实施例,能够在对话期间获取的多模态数据的示例性类型;
图7b示出了根据本示教一实施例,用户状态信息的示例性类型;
图7c示出了根据本示教一实施例,能被观察和用作背景信息的对话环境的示例性类型;
图8示出了根据本示教一实施例,多模态数据分析器的示例性高层系统图;
图9为根据本示教一实施例,多模态数据分析器的示例性过程的流程图;
图10示出了根据本示教一实施例,对话控制器的示例性高层次系统图;
图11为根据本示教一实施例,对话控制器的示例性过程的流程图;
图12示出了可用于实现本示教的特定系统的移动装置的架构;
图13为可用于实现本示教的特定系统的计算机的架构。
具体实施方式
在下面的具体介绍中,通过举例的方式,给出了多种具体细节,以便提供对相关示教的详尽理解。然而,本领域技术人员应当明了,本示教可以在没有这些细节的情况下实现。在其他的实例中,公知的方法、过程、部件和/或电路以相对较高的层次介绍而没有细节,从而避免不必要地模糊本示教的实施形态。
本示教一般涉及关于本示教所示实施例的系统、方法、介质和其他实施方式,相关概念在可以配置本示教的人机对话中给出。具体而言,本示教涉及根据观察到的周边情况(包括将要参与对话的人的状态,环境的设置,等等)来自适应地发起人机对话的概念。另外,在对话过程中,连续观察、分析对话的设置和人,并将之用于自适应地相应进行对话,以便增强用户体验,改善用户参与度。尽管给出了某些示例性特征和公开以描述与本示教相关联的概念,应当明了,本示教可应用于与这里所给出的不同的任何设置而没有限制。
图1示出了根据本示教一实施例,具有在不同参与者之间的信息流的人机对话的一般框架。如图所示,框架包含在对话过程中经由网络连接连在一起的用户装置110、代理装置160、用户交互系统170。用户装置可具有一种以上模态的多种传感器,例如获取视觉数据(图像或视频)的传感器140、获得包含用户的话语或来自对话环境的声音的音频数据的传感器130、获取文字信息(用户在显示器上写了什么)的传感器或捕获用户的触摸、移动等的触觉传感器(未示出)。这样的传感器数据可以在对话过程中被捕获,并被用于促进对用户(表达、情绪、意图)和用户周边情况的理解。这样的传感器数据提供背景信息,并可被探索,以便相应地对响应进行定制。
在变型实施例中,人类会话者可在没有代理装置160的情况下直接与用户交互系统170通信。当代理装置存在时,其可以对应于能由用户交互系统170控制的机器人。在某些实施例中,用户装置110可在没有代理装置的情况下与用户交互系统170直接交流。在这样的实施例中,将由代理装置执行的功能(例如说出词或句子,发送文字信息,或表达特定的情绪,例如皱眉、微笑或悲哀)可由用户交互系统170执行。因此,尽管下面的公开可讨论关于代理装置或用户交互系统的特定概念,这里公开的概念可应用到二者的组合或其中任何一个。另外,在这里介绍的实施例中,提及机器侧可能意味着代理装置或用户交互系统,或它们的组合。
如所示的,图1中的任何两个参与者之间的连接可以是双向的。代理装置160可经由用户装置110与用户交互,以便以双向方式实现对话。在运行中,代理装置160可由用户交互引擎170控制,以便例如说出对操作用户装置110的用户的响应。根据本示教,来自用户侧的输入(包括例如用户话语或动作、用户的外观、以及关于用户周边情况的信息)经由网络连接被提供给代理装置160或是用户交互系统170。
在某些实施例中,代理装置160或用户交互系统170可被配置为处理这样的输入,并使用从这样的输入识别出的相关信息,以动态且自适应地生成对用户的响应。这样的响应包括,例如,传送语言响应的话语,或将在代理装置中做出的改变,以便呈现将向用户显示的不同场景。例如,代理装置或用户交互系统170可从来自用户装置的输入观察到用户穿着黄色t恤且看起来厌倦。来自代理装置或用户交互系统的自适应响应可以被生成,其对用户看起来如何进行评论。这样的响应可以将用户的注意力重新引到对话上。作为另一实例,假设来自机器(或者是代理装置,或者是用户交互系统)的响应是在用户装置上呈现物体,例如树。基于来自用户装置的传感器输入,可以判断为用户周边情况指示现在是冬季。已经知道这一点,机器可以自适应地指示用户装置呈现没有叶子的树(与用户的周边情况一致)。
作为另一实例,如果机器响应是在用户装置上呈现鸭子,例如,关于用户的信息可从用户信息数据库130中关于用户的颜色偏好进行检索,并通过以用户偏爱的颜色(例如黄色或褐色)对鸭子进行定制,将呈现指示提供给用户装置。基于用户或其周边情况的即时观察或者用户的已知偏好的这样的定制关于用户以及当前对话环境自适应地进行。
通过这种方式,机器侧(代理装置或是用户交互系统或其组合)可以使如何对用户做出响应的决定基于在对话过程中观察到了什么。基于来自用户装置的输入,机器侧可确定对话的状态和用户的表情/情绪/心态,并在给定的观察到的情况下,生成基于对话的特定情况和对话的预期意图(例如用于教小孩英文词汇)的响应。在某些情况下,如果从用户装置接收的信息指示用户看起来厌倦、不耐烦,机器侧可将与一个话题(例如,在数学教育有关的对话中,几何学)有关的对话的状态改变为用户可能有兴趣的不同的话题,例如篮球。这样的话题转换可基于观察到用户凝视屋子里的篮球来决定。话题转换由此继续使用户参与会话。
在某些实施例中,用户装置可被配置为对从不同模态下获取的原始传感器数据进行处理,并将处理后的信息(例如原始输入的相关特征)发送到代理装置或用户交互引擎,用于进一步的处理。这将减少通过网络传输的数据的量,并增加通信效率。
如图所示,在用户和机器之间的对话过程中,用户装置110可连续收集与用户及其周边情况有关的多模态传感器数据,该数据可被分析以检测与对话有关的任何信息,并被用于以自适应的方式智能地对对话进行控制。这可增强用户体验和/或参与度。传感器数据提供对话周围的背景信息,并使得机器能够理解情景,以便更为有效地管理对话。
图2示出了根据本示教一实施例,用于具有多层处理性能的自动对话伴侣的示例性高层次系统图。在此所示出的实施例中,整体系统可包含驻留在用户装置110、代理装置160和用户交互引擎170中的部件/功能模块。这里所述的整体系统包含多个处理层和分级结构,它们一起执行智能方式的人机交互。在所示的实施例中有5个层,包括用于前端应用以及前端多模态数据处理的层1、用于对对话设置进行特征化的层2、对话管理模块所驻留的层3、用于不同参与者(人、代理、装置等)的推定心态的层4、用于所谓效用(utility)的层5。不同的层可对应于不同等级的处理,从层1上的原始数据采集和处理到层5上的改变对话参加者的效用的处理。
术语“效用”由此定义为基于检测到的状态识别的参与者的偏好,它们与对话历史相关联。效用可以与对话中的参与者相关联,无论该参与者是人、自动伴侣还是其他的智能装置。用于特定参与者的效用可表征世界的不同状态,无论是实物的、虚拟的还是甚至是精神的。例如,状态可以表征为对话沿着世界的复杂地图行进的特定路径。在不同的实例中,当前状态基于多个参与者之间的交互演化为下一状态。状态也可以是与参与者有关的,即,当不同参与者参加交互时,由这种交互带来的状态可能发生变化。与参与者相关联的效用可被组织为偏好的分级结构,且这样的偏好分级结构可基于在会话过程中做出的参与者选择以及表露出的喜好而随时间演化。这样的偏好(其可被表征为从不同选项中做出的有顺序的选择序列)被称为效用。本示教公开了这样的方法和系统:通过该方法和系统,智能自动伴侣能够通过与人类会话者的对话来学习用户的效用。
在图2所示的完整系统内,层1中的前端应用以及前端多模态数据处理可驻留在用户装置110和/或代理装置160中。例如,照相机、麦克风、键盘、显示器、呈现器、扬声器、聊天泡泡、用户接口元件可以是用户装置的部件或功能模块。例如,可能有在用户装置上运行的应用或客户端,其可包括图2所示外部应用接口(api)之前的功能。在某些实施例中,超出外部api的功能可以被考虑为后端系统,或驻留在用户交互引擎170中。在用户装置上运行的应用可取得来自传感器或用户装置的电路的多模态数据(音频、图像、视频、文字)。对多模态数据进行处理,以生成表征原始多模态数据的特征的文字或其他类型的信号(例如检测到的用户面孔、语音理解结果等对象),并发送到系统的层2。
在层1中,多模态数据可以经由例如为照相机的传感器、麦克风、键盘、显示器、扬声器、聊天泡泡、呈现器或其他用户接口元件来获取。可对这样的多模态数据进行分析,以推定或推断能用于推断较高层次的特点(例如表情、角色(character)、手势、情绪、动作、注意力、意图等)的多种特征。这样的高层次特点可由层2上的处理单元获得,接着,经由图2所示的内部api,由更高层的部件用于在更高的概念层上例如智能推断或推定与对话有关的附加信息。例如,在层2上获得的所推断的对话参加者的情绪、注意力或其它特点可用于推定参加者的心态。在某些实施例中,这种心态也可在层4上基于附加的信息来推定,例如,记录的周边环境或这种周边环境中的其他附加信息,例如声音。
推定的参与者的心态,无论是与人还是自动伴侣(机器)有关,可被层3的对话管理依赖,以便确定,例如,如何进行与人类会话者的会话。每个对话如何逐步发展常常表征了人类用户的偏好。这样的偏好可以动态地在对话过程中在效用层(即层5)上捕获。如图2所示,层5上的效用表征演化的状态,这种状态表示参与者的演化的偏好,它们也可由层3上的对话管理用于决定进行交互的合适或智能的方式。
不同层之间的信息共享可以经由api实现。在图2中所示的某些实施例中,层1和其他层之间的信息分享经由外部api,而层2-5之间的信息分享经由内部api。能够明了,这仅仅是一种设计上的选择,其他的实现方式也可以实现这里给出的示教。在某些实施例中,通过内部api,不同的层(2-5)可访问在其他层上产生或存储的信息,以支持处理。这样的信息可包括应用到对话的通用配置(例如代理装置的角色是化身、优选的嗓音或将为对话产生的虚拟环境,等等)、对话的当前状态、当前对话历史、已知的用户偏好、推定的用户意图/情绪/心态等等。在某些实施例中,可从外部数据库访问能经由外部api分享的某些信息。例如,可从例如开源数据库访问与代理装置的希望的角色(例如鸭子)有关的特定配置,该数据库提供参数(例如,视觉上呈现鸭子的参数,和/或呈现来自鸭子的语音需要的参数)。
图3示出了根据本示教一实施例的对话过程,其中,观察背景信息,并将之用于推断情景,以便设计自适应对话策略。由图3可见,可以进行不同层上的操作,它们一起以协作的方式促进智能对话。在所示的实例中,在观察到用户处于正常状态时,160代理装置可首先在302处询问用户“你今天好吗?”从而发起对话。在这里公开的其他的实施例中,如果用户看起来状态不佳,机器(代理装置160或用户交互系统170)可使用不同的句子发起,例如“你还好吗?”(未示出)。响应于302处的话语,用户可以在304处用话语“好”来响应。为了管理对话,自动对话机器可致动不同的传感器,以便在对话过程中捕获动态情景,从而使得对用户与周边情况的观察成为可能。例如,自动对话机器可致动多模态传感器,以获取多模态数据。这样的多模态数据可包括音频、视觉或文字数据。例如,视觉数据可捕获用户的面部表情。视觉数据还可揭示会话场景周边的背景信息。场景的图像可揭示存在篮球、桌子、椅子,这提供了关于环境的信息,并可在对话管理中得到利用,以增强用户的参与度。音频数据可不仅捕获用户的语音响应,还捕获其他的周边信息,例如响应的音调、用户说出响应的方式或是用户的口音。
基于所获取的多模态数据,分析可由自动对话机器进行(例如通过前端用户装置或通过后端用户交互引擎140),以评估用户的态度、情绪、心态和效用。例如,基于视觉数据分析,自动对话机器可检测到用户表露出悲哀、无笑容、用户语调低沉、语音缓慢。在对话中对用户状态进行特征化可以基于在层1上获取的多模态数据在层2上进行。基于这样检测的观察,自动伴侣可推断(在306处)为,用户对当前话题不是那么感兴趣且参与度不高。例如,对用户的情绪或精神状态的这样的推断可以在层4上基于与用户相关联的多模态数据的特点来进行。
为了响应用户的当前状态(表现为参与度不高),自动对话机器可判断为使用户活跃,从而使用户更好地参与。在所示出的实例中,自动对话机器可通过在308处向用户问问题来利用对话环境中可用的东西,“你想玩游戏吗?”例如,使用为用户个性化的定制语音,通过将文字转换为语音,这种问题可以以音频的方式发送为语音。在这种情况下,用户可在310处通过说“好。”来响应。基于连续获取的与用户有关的多模态数据,例如经由层2处的处理,可以观察到,响应于玩游戏的邀请,用户的眼睛表现出左顾右盼,特别是,用户的眼睛可能盯着看向篮球所在的地方。同时,自动伴侣可能还观察到,一旦听到玩游戏的建议,用户的面部表情从“悲哀”变为“微笑”。基于这样观察到的用户特点,自动伴侣可以在312处推断为用户对篮球感兴趣。
基于所获取的新信息以及基于其的推断,自动伴侣可决定利用环境中可用的篮球来使对话更能吸引用户参与,同时,又实现对于用户的教育目标。在这种情况下,层3处的对话管理可对对话进行自适应,以谈论游戏,并利用用户凝视房间中的篮球的这一观察来使对话对于用户来说更加有趣,同时仍实现例如对用户进行教育的目标。在一个示例性实施例中,自动伴侣生成响应,建议用户玩拼写游戏(在314处)并要求用户拼写单词“篮球”。
根据对用户和环境的观察,在给定自动伴侣的自适应对话策略的情况下,用户可做出响应,提供单词“篮球”的拼写(在316处)。可连续就用户在回答拼写问题时有多热情进行观察。基于例如在用户回答拼写问题时获取的多模态数据所判断,如果用户看起来以更为欢快的态度迅速响应,自动伴侣可以在318处推断为用户现在参与度更高。为了进一步鼓励用户积极参加对话,自动伴侣于是可生成正面响应“做得好!”,并指示将此响应用欢快、鼓励、积极的嗓音传送给用户。
图4示出了根据本示教一实施例,在自动对话系统的多个处理层之间的示例性多层处理和通信。图4中的对话管理器410对应于层3中的对话管理的功能部件。对话管理器是自动伴侣的重要部分,且其管理对话。按照传统,对话管理器将用户的话语用作输入,并判断如何对用户做出响应。这在不考虑用户偏好、用户的心态/情绪/意图或对话的周边环境的情况下做出,也就是说,不为相关世界的不同的可用状态授予任何权重。缺少对周边世界的了解常常限制了人类用户和智能代理之间会话的参与度或感知的真实性。
在本示教的某些实施例中,充分运用与正在进行的对话有关的会话参与者的效用,以允许进行更为个性化、灵活且参与度更高的对话。这促进了代理扮演不同的角色,以便在不同的任务中更为有效,例如安排约会、预订旅行、订购设备和补给品、在线研究多种话题。当智能代理认识到用户的动态心态、情绪、意图和/或效用时,这使得代理以更有目标且有效的方式使人类会话者参与对话。例如,当教育代理教孩子时,孩子的偏好(例如他喜欢的颜色)、观察到的情绪(例如,有时候孩子不想继续课程)、意图(例如,孩子伸手去拿地板上的球,而不是专注于课程)都可允许教育代理灵活地将关注的主题调整到玩具,并可能调整继续与孩子会话的方式,以便给孩子休息时间,从而实现对孩子进行教育的整体目标。
作为另一实例,本示教可用于,通过问在给定从用户实时观察到的东西的情况下更为适合的问题,增强用户服务代理的服务,并因此实现改进的用户体验。通过开发学习和适应参加对话的参与者的偏好或心态的方法和方式,这根植于如这里所公开的本示教的本质方面,使得对话能够以参与度更高的方式进行。
对话管理器(dm)410是自动伴侣的核心部件。如图4所示,dm410(层3)取得来自不同层的输入,包括来自层2的输入以及来自更高的抽象层的输入,例如来自层4的推定心态以及来自层5的效用/偏好。如所示的,在层1上,从不同模态的传感器获取多模态信息,其被处理,以便获得例如对数据进行描绘的特征。这可包括视觉、音频和文字模态的信号处理。
多模态数据的处理得到的特征可在层2上进一步处理,以实现语言理解和/或多模态数据理解,包括视觉、文字及其任何组合。某些这样的理解可能针对单一模态,例如语音理解,有些可以针对基于集成的信息对参与对话的用户的周边情况的理解。这样的理解可以是实物的(例如,识别场景中的特定对象)、认知上的(例如识别出用户说了什么,或某个大的声音,等等)或精神上的(例如特定的情绪,例如基于语音的音调、面部表情或用户手势推定出的用户的压力)。
层2上生成的模态-数据理解可由dm410用于判断如何响应。为了增强参与度和用户体验,dm410也可基于来自层4的推定的用户心态以及来自层5的参与对话的用户的效用来确定响应。dm410的输出对应于相应地确定的对用户的响应。为了将响应传送到用户,dm410也可规划出传送响应的方式。传送响应的形式可以基于来自多个源的信息确定,例如,用户的情绪(例如,如果用户是不开心的孩子,响应可以以温柔的嗓音呈现)、用户的效用(例如,用户可偏好类似于其父母的特定口音的语音)或用户处于的周边情况(例如,噪音空间,使得响应需要以高音量给出)。dm410可将所确定的响应与这样的传送参数一起输出。
在某些实施例中,这样确定的响应的传送通过根据与响应相关联的多种参数生成各个响应的可传送形式来实现。在一般情况下,响应以某种自然语言的语音的形式传送。响应也可以以语音耦合特定非语言表达的形式传送:该表达作为所传送响应的一部分,例如点头、摇头、眨眼睛或耸肩。可能有其他形式的、可传送形式的响应,其为音频但不是语言,例如口哨。
为了传送响应,可传送形式的响应可以经由例如语言响应生成和/或行为响应生成来生成,如图4所示出的。出于其所确定的可传送形式的这样的响应于是可由呈现器用于以所预期的形式来实际呈现响应。对于自然语言的可传送形式,响应的文字可用于,根据传输参数(例如音量、口音、风格等),经由例如文字到语音技术来合成语音信号。对于将以非语言形式传输的任何响应或其部分(例如,特定的表情),预期的非语言表达可以经由例如动画来翻译成控制信号,控制信号可用于控制代理装置(自动伴侣的有形呈现)的特定部分,以执行特定的机械运动,从而传送响应的非语言表达,例如点头、耸肩或吹口哨。在某些实施例中,为了传送响应,特定软件部件可被调用,以便呈现代理装置的不同的面部表情。响应的这样的演绎也可由代理同时执行(例如,用开玩笑的嗓音说出响应,且代理的脸上挂着大大的笑容)。
图5示出了根据本示教一实施例,用于个性化对话管理的对话管理器410的示例性高层次系统图。在此所示实施例中,对话管理器410包含多模态数据分析单元510、用户状态推定器520、对话背景信息确定器530、对话控制器540、反馈指示生成器550、对话响应输出单元560。这里所示的对话管理器410控制如何基于观察到的内容智能地发起与用户的会话,以及如何基于观察到的内容在会话过程中对用户做出响应。
将由多模态数据分析单元510分析的多模态数据可包含:听觉信号,其可对应于环境声音或语音;视觉信号,其可包含视频和图片映像;文字信息;或者,来自触觉传感器的信息,其描绘例如手指、手、头或用户身体的其他部分的移动。这在图7a中示出。
基于来自多模态数据分析单元510的处理的多模态数据,用户状态推定器520和对话背景信息确定器530分别推定用户的状态和对话场景周边的背景信息。图7b示出了根据本示教一实施例的用户状态信息的示例性类型。用户状态可包括用户的有形外表,包括肤色、发色/发型、皮肤色调、眼睛颜色、衣物(颜色、风格)等等。用户状态也可涉及用户的表情,例如微笑、皱眉、眨眼、困惑、嗓音洪亮程度等等。用户状态也可与用户说什么以及说话方式有关。基于音频信号,语音识别可以基于音频信号来进行,从而确定用户话语的文字。也可识别语音的音高和音调,其将与来自视觉数据的视觉线索一起用于推定用户的表情或情绪。用户的表情可用于推断他/她的情绪,例如高兴、悲哀、苦恼、厌倦、……等等。在某些情况下,表情/情绪也可用于推断意图。例如,如果用户的表情表示他/她厌倦但他/她的眼睛注视着附近的球,可以推断为用户对谈论与和意图相关的球有关的话题有兴趣(例如篮球比赛)。
为了促进用户状态推定器520,可在515处提供适合的模型。用户状态推定可基于不同模型来进行。在所示的实施例中,用户状态检测模型可包含用于检测与用户有关的不同方面的特征的模型,包括但不限于外表(用户穿戴的衣物的颜色,皮肤颜色/色调,性别,发色,眼睛颜色等)、面部表情(微笑、皱眉、哭喊、悲哀……等等)、情绪(悲哀、高兴、兴奋、生气、……等等)、心境(恼怒、冷淡、有兴趣、心不在焉等)。基于这些模型,可提取不同的信息或特征,并将之用于做出关于用户状态的判断。
为了推定对话场景周边的背景信息,基于环境检测模型525,对话背景信息确定器530检测由多模态数据捕获的场景中所存在的多种对象,并提取其相关特征。为了促进用户所处于的对话环境中的背景信息的判断,可适当地提供环境检测模型525,以便检测不同类型的场景、不同类型的对象、环境的不同特点等等。图7c示出了根据本示教一实施例,背景信息和/或环境检测模型的示例性类型。由图可见,对话环境可暗示不同概念层次上的概念的分级结构,从较低层概念(例如对话环境中存在的物体(计算机、办公桌、饭桌、球、椅子、橱柜、树、草地、天空、湖泊、孩子、秋千、滑梯、山等)、场所(办公室、公园、海滩、旷野、店铺、游乐场等))到场所的性质(例如度假场所、工作场所、交通运输场所等)。使用这样的模型,对话背景信息确定器530可不仅仅检测用户周围在场景中存在什么,还检测场所的特点以及场所对于用户的性质。
回到图5,推定的用户状态(来自用户状态推定器520)和确定的底层对话的背景信息(来自对话背景信息确定器530)于是可以由对话控制器540用于自适应地发起与用户的会话或是判断如何对来自用户的上一响应做出响应。反馈的确定(向用户说什么以发起会话,或者对来自用户的上一话语的响应)是基于当前应用于会话的项目535(例如数学教育线程)、对话树545(其提供会话的一般流程)、用户信息(例如来自用户配置档案555的偏好)做出的。这样产生的反馈于是在反馈指示生成器550上处理,以生成用于反馈的指示(例如将要发送到用户装置的呈现指示,以便呈现机器的响应),该指示于是经由对话响应输出单元560被发送到用户装置。
图6为根据本示教一实施例的对话管理器410的示例性过程的流程图。当多模态数据分析单元510在610处接收来自用户装置的多模态传感器数据,其在620处分析多模态传感器数据。基于所分析的多模态传感器数据,用户状态推定器520在630处基于用户状态检测模型515来推定用户状态。如这里所讨论的,用户的状态包含在不同概念层次上的用户的特点,有些是在外表层次上的,有些是在情绪层次上的,等等。
基于所分析的多模态传感器信息,对话背景信息确定器530在640处确定对话的背景信息。为了确定对用户的反馈(或者是向用户说的最初的话语,或者是对用户最后话语的响应),对话控制器540在650处确定与当前对话有关的项目/话题。由如此确定的项目,对话控制器540可访问与项目对应的合适的对话树,并识别与当前对话对应的对话树中的节点。基于对话树、用户状态和背景信息,对话控制器540在660处确定对话的进展。存在两种可能的对话情境。一种是对话线程处于一开头时,例如,用户刚刚出现,对话控制器540需要根据观察到的内容来发起对话。另一种情境是对话正在进行,故对话控制器540将要确定如何对用户进行响应。
对于对话控制器540将要发起会话的新会话,如果用户新出现,对话控制器540将要发起会话。在这种情况下,所识别的对话树处于其初始节点,且对话控制器540将判断在给定推定的用户状态的情况下,对话树的第一节点所指示的是否合适。例如,如果根据对话树的机器的第一话语是“你准备好进行今天的项目了吗?”但推定的用户状态可能指示用户当前实际上心烦意乱,则对话控制器540可判断为不采取对话树中所指示的,而是基于例如来自用户配置档案555的用户偏好和/或在对话场景中检测到的(例如用户外表或用户环境中的某些对象)来生成不同的发起句子。例如,可能已经知道用户爱玩篮球(由用户配置档案555),且场景中观察到有球存在(来自对话背景信息确定器530的背景信息),对话控制器540可判断为通过说“你想玩一会儿球吗?”以吸引用户参与,从而发起对话。
如果对话是正在进行的线程,对话控制器540可基于例如用户状态对于遵循当前对话的对话树是否合适来确定响应。如果推定的用户状态表明遵循对话树并不合适,例如,来自用户的最后一次的话语不对应于对话树中的任何预测回答且用户看起来茫然不知所措,对话控制器540可判断为不遵循对话树,而是识别某种替代性响应。这样的替代性响应可以根据用户状态和背景信息自适应地确定。例如,用户状态可能显示用户穿着泳衣,且背景信息显示用户在游泳池附近。为了吸引用户参与英语教育对话线程,对话控制器540可判断为,通过响应“可以告诉我怎么拼写“游泳”和“池塘”吗?”来将用户吸引到项目中。通过根据用户状态(迷失的情绪,身穿泳衣的外表)和对话的背景(环境中存在泳池)对对话进行自适应,从而识别对用户的替代性响应,可重新引导用户注意力,并改善参与度和用户体验的。
基于对话控制器540确定的反馈(如何发起对话,或如何在进行的对话中响应用户),反馈指示发生器550在670处生成对于用户装置的可用于向用户呈现反馈的指示,并将指示发送到对话响应输出单元560,对话响应输出单元560于是在680处将指示发送到用户装置。
图8示出了根据本示教一实施例,多模态数据分析单元510的示例性高层次系统图。如这里所讨论的,多模态数据分析单元510用于对多模态传感器数据进行分析,提取相关信息,并识别能用于对对话进行自适应的有用线索。这类线索包括与用户有关的特征以及与环境有关的特征。基于这样的多模态特征(视觉、听觉、文字或触觉的),多模态数据分析单元510也可例如基于模型来推断较高层次的概念,例如表情、情绪、意图等。在所示的实施例中,多模态数据分析单元510包含原始数据处理部分、特征提取部分以及推断部分。
原始数据处理部分包含音频信息处理器800、视觉信息处理器805、文字信息处理器810。附加的原始传感器数据处理单元也可被包含在内,例如用于对触觉信息进行处理的处理器(未示出)。用于对原始数据进行处理的处理器可以是用于低层次信号处理的,例如用于移除噪音、增强图片品质、减少冗余数据的二次采样等等。
特征提取部分可以将来自原始处理单元的输出用作输入,提取与感兴趣的某些特点(例如微笑等表情,例如眼睛颜色、皮肤色调/颜色等外表,周围的对象,例如桌子、树木颜色、游泳池等等)有关的特征(面部、眼睛、皮肤、天空、树、来自语音或文字的词、与语音有关的量度(例如速度、清晰度、洪亮程度、音高等等)。这一部分可包括听觉声音分析器815(用于分析环境声音)、语音识别单元820(用于识别用户的和/或其他人的话语)、用户面部特征检测器825(用于检测面孔、面部特征和面部表情)、用户外表分析器830(例如衣物、皮肤颜色等)和周边情况特征检测器835(用于检测例如出现在对话环境中的不同类型的对象,等等)。这些部件检测相应模态的特征,且这样检测的特征被发送到推断部分,以推断较高层次的概念,例如情绪、意图等。
此所示实施例中的推断部分包括:情绪推定器840,其可基于来自部件815、820、825、830的视觉和听觉特征来推断用户的情绪;以及,意图推定器850,其可不仅基于来自这四个部件的视觉和听觉特征、还基于来自情绪推定器840的推定的情绪来推定意图。例如,用户面部特征检测器825可能已经检测到用户正在注视某个有球的方向,且情绪推定器840可推断为用户对对话的主旨感到困惑。基于这些视觉线索,意图推定器850可推断为用户的注意力不在对话上,且希望(意图)玩球。这样推断的情绪和意图可由对话控制器540用于确定如何继续对话,并重新引导用户的注意力,如这里所讨论的那样。在某些实施例中,可以在用户状态推定器520中实现更高层次的推断,例如,推定情绪或意图。
多模态数据分析单元510也可包含相关线索识别器860,其从特征提取部分和推断部分的所有部件(即815、820、825、830、835、840和850)取得输入,并基于例如对话模型/树837来识别与对话有关的线索。例如,如果对话是关于旅行计划的,与用户有关的(例如眼睛颜色)或存在于对话场景中的(例如桌上的玩具鸭子)特定特征可能与对话管理无关。在这种情况下,相关线索识别器860可将这些特征滤除,而不将之发送到用户状态推定器520或对话背景信息确定器530(见图5)。
图9为根据本示教一实施例的多模态数据分析单元510的示例性过程的流程图。在910处接收到多模态数据时,多模态数据分析单元510中的部件处理不同的信息,以便分别提取和识别相关信息。例如,由图8可见,为了识别音频域中的有用线索,音频信息处理器800、听觉声音分析器815、语音识别单元820在940处处理音频信号,以识别环境声音和/或用户的语音。为了识别视觉域中的有用线索,视觉信息处理器805、用户面部特征检测器825、用户外表分析器830在930处对视觉数据进行处理,以识别用户的视觉特征(例如眼睛、鼻子、肤色等)、面部表情和用户外表(例如头发、衣物等)。为了识别用户周边环境中的有用线索,周边特征检测器835在920处处理来自多个域的数据,以便提取相关特征。
基于检测到的音频和视觉特征,情绪推定器840在950处推定用户的情绪。基于音频/视觉特征和/或推定的用户情绪,意图推定器850在960处推定用户的意图。相关线索识别器860于是对特征和推定进行过滤,以便在970处识别相关视觉/音频/环境线索,并在980处将这样的相关线索发送到对话管理器410中的不同部件(见图5)。
图10示出了根据本示教一实施例的对话控制器540的示例性高层次系统图。在此示出的实施例中,对话控制器540包含用户信息处理器1000、背景信息处理器1010、对话进展确定器1040、对话发起确定器1030、对话响应确定器1020、对话反馈生成器1050。如这里所讨论的,对话控制器540判断是发起对话还是在正在进行的对话线程中生成对用户的响应。在每一种情况下,对话控制器540将生成反馈,因此,反馈在开始新对话的情况下是发给用户的最初的问候,或在进行的对话中是生成的对用户的响应。在每一种情况下,反馈是基于用户状态以及来自场景的背景信息自适应且智能地生成的。
图11为根据本示教一实施例的对话控制器的示例性过程的流程图。在运行中,用户信息处理器1000在1100处接收用户状态信息(来自图5中的用户状态推定器520)和来自层5的用户效用/偏好(见图2和4)。基于所接收的信息,用户信息处理器1000在1110处分析这种信息,以识别相关信息的不同类型,其可包括例如用户的当前精神状态(厌倦)、用户的效用/偏好(喜欢将好玩的东西与学习混在一起,从而更加有效)、用户的外表(穿戴黄色泳衣和红色泳帽)、安排要学的项目是英语、和/或用户安排的项目的当前话题是拼写简单的英文词(如果是正在进行的对话),等等。可进一步运用这样的来自不同源的关于用户的有关信息,以确定对话发起/响应策略。
另外,背景信息处理器1010在1120处接收来自对话背景信息确定器530的背景信息(见图5),并在1130处分析所接收的背景信息,以识别有关的背景信息。例如,背景信息处理器1010可基于所接收的背景信息识别场景中的某些对象(例如桌子、椅子、计算机、……,书柜),并下结论为用户在办公室中。在其他情况下,如果接收的背景信息报告其他类型的对象,例如树、蓝天、长椅、秋千等,背景信息处理器1010可推定为用户身处公园。基于背景信息的这样的结论也可被运用,以确定对话发起/响应策略。
为了继续进行以确定对话如何发展,取决于是新的对话还是进行中的对话,在1140处由对话进展确定器1040从例如用户状态信息中提取相关信息(例如对话的状态),并将之用于在1050处相应地确定运行的模式。如果是新的对话,对话进展确定器1040调用对话发起确定器1030,以确定发起策略。否则,对话模式确定器1040调用对话响应确定器1020,以生成响应策略。
在被调用时,对话发起确定器1030分析来自用户信息处理器1000和背景信息处理器1010的处理结果,以理解用户和用户的周边情况。例如,用户可以是有着棕色眼睛、深色皮肤、卷曲头发、穿着黄色t恤的年轻男孩(由用户状态信息),且已经知道在与陌生人会面和交谈时是个慢热的人(即,害羞的人)(由用户效用)。来自背景信息处理器1010的处理结果可指示用户当前在办公室中,办公室中有桌子、椅子、桌上的电脑,桌上还有标记乐高组合的盒子。
基于对当前用户已知的内容(慢热的人),对话发起确定器1030可基于例如机器学习模型决定这样更为合适:在使用户参与预期会话(例如用户已经登录的学习数学的项目)之前,首先通过谈论年轻男孩可能喜欢的东西使用户感到舒适,从而启动对话。在给定关于用户周边情况的背景信息的情况下,为了关于当前用户适当地发起,对话发起确定器1030可在1160处生成个性化的对话发起策略,其利用在场景中所观察到的,并判断在一开始如何接近用户。例如,对话发起确定器1030可利用在桌上观察到的乐高组合,并决定通过询问“你喜欢乐高吗?”来开始对话。或者,对话发起确定器1030可利用观察到的用户的外表,并决定通过说“今天你看起来很开心!”来开始对话。以这种方式开始对话是基于关于用户的个性化策略的,这使得更好的用户体验和增强的参与度成为可能。通过这种方式,用于各个用户的对话发起策略可能不同,但对于各个用户智能地自适应。
在正在进行的对话中确定对于用户的响应这方面,在正常情况下,对话响应确定器1020可以如传统对话系统将要做的那样,基于例如在相关对话树中所指示的内容来确定响应。然而,对话不会一直如计划中那样进行,在某些情况下,对话中的机器代理需要更具适应能力和创造性,从而继续吸引用户参与,而不会在不知不觉中惹怒用户。当检测到这样的情况时(例如,通过基于多模态传感器数据及其分析来理解该情况),通过利用与用户状态以及用户所处周边环境的背景有关的相关信息,对话响应确定器1020可执行与对话发起确定器1030类似的功能。
在确定对于正在进行的对话的响应时,相比于关于如何发起对话的判断,需要考虑附加的运行参数。例如,由于它是正在进行的对话,存在对话历史,其可能影响将要决定的响应。另外,与对应的对话树的当前状态相关联的当前用户状态(例如用户的情绪)也可能影响对于合适的响应的决定,或者沿着同一对话树,或者在对话树之外。例如,如果用户在与机器代理的关于几何学的会话之中,且用户错误地给出几个回答(如对话历史所示)。机器代理也可能已经观察到用户看起来有挫败感。在这种情况下(可从对话历史以及从用户获取的多模态数据观察到),对话响应确定器1020可基于特定的机器学习模型(其可能指示当用户由于错误回答而感到挫败时,偏离主题可能是合适的,从而不会失去用户)确定用户需要从当前话题偏离一点。
关于机器代理应当说什么来实现将用户注意力切换到其他东西的策略,对话响应确定器1020可利用在场景中对用户观察到的东西或场景背景。在某些情况下,对话响应确定器1020可利用检测到的用户的外表,并设计出某些分散注意力的响应。例如,如果观察到用户穿着印有“红袜”文字的t恤,对话响应确定器1020可以解码,以询问用户“你是红袜队的粉丝吗?”在某些情况下,对话响应确定器1020可利用在场景(背景)中观察到的东西,设计出需要的且有关的响应。例如,如果背景信息指示用户当前身处办公室,且办公室场景包含桌子上的乐高,对话响应确定器1020可决定问用户“你喜欢乐高吗?”,意图是将在后来使用场景中的乐高来继续关于几何学的讨论(例如“这一片乐高是什么形状的?”)基于这样的智能且动态的处理,对话响应确定器1020可在1150处在考虑所观察的实际对话情境的情况下确定适合的响应。对于正在进行的对话线程生成的这样的响应被相应地适应于各个个体用户以及在该时刻观察到的各种情境。
反馈(或者是由对话发起确定器1030生成的最初对用户所说的,或者是在正在进行的对话中由对话响应确定器1020生成的对用户的响应)于是被发送到对话反馈生成器1050,对话反馈生成器1050在1180处生成将要提供给用户的反馈,并在1190处将这样生成的反馈发送给反馈指示生成器550(见图5),在那里,合适的呈现指示将被生成并被提供给用户装置,以便向用户呈现该反馈。
图12示出了移动装置的架构,其可用于部分或完整地实现本示教的特定系统。在此实例中,在其上呈现内容并与之交互的用户装置是移动装置1100,其包括但不限于智能电话、平板电脑、音乐播放器、手持游戏机、全球定位系统(gps)接收器和可穿戴计算装置(例如眼镜、腕表等)或其他的形式因素。此实例中的移动装置1200包含一个以上的中央处理单元(cpu)1240、一个以上的图形处理单元(gpu)1230、显示器1220、内存1260、诸如无线通信模块的通信平台1210、存储器1290以及一个以上的输入/输出(i/o)装置1250。任何其他合适的部件,包括但不限于系统总线或控制器(未示出)也可包含在移动装置1200中。如图12所示,移动操作系统1270(例如ios、android、windowsphone等)以及一个以上的应用1280可从存储器1290被装载到内存1260中,以便由cpu1240执行。应用1280可包括浏览器或任何其他合适的移动app,用于接收和呈现移动装置1200上的内容流。与移动装置1200的通信可以经由i/o装置1250实现。
为了实现本公开中介绍的多种模块、单元及其功能,计算机硬件平台可用作用于这里介绍的一个或多于一个元件的硬件平台。硬件元件、操作系统和这种计算机的编程语言在性质上是传统的,且假设本领域技术人员足够熟悉它们,以便使这些技术适应于这里公开的广告匹配询问。具有用户接口元件的计算机可用于实现个人计算机(pc)或其他类型的工作站或终端装置,但是,如果合适地编程的话,计算机也可作为服务器运行。据信,本领域技术人员熟悉这种计算机设备的结构、编程和一般运行,因此,附图可能是不言自明的。
图13示出了可用于实现实施本示教的特定系统的计算装置的架构。实现本示教的这种特定系统具有硬件平台的功能框图,该硬件平台包括用户接口元件。计算机可以是通用计算机或专用计算机。二者都能用于实施用于本示教的特定系统。这种计算机1300可用于实现如这里所介绍的示教的任何部件。例如,对话管理器、对话控制器等可以在例如计算机1300的计算机上实现,经由其硬件、软件程序、固件或其组合。尽管为方便起见示出了仅仅一个这样的计算机,与这里介绍的本示教有关的计算机功能可以以分布式方式在若干个类似的平台上实现,从而分散处理负荷。
例如,计算机1300包括与连接于其上的网络相连接的com端口1350,以促进数据通信。计算机1300还包括中央处理单元(cpu)1320,其采用一个或多于一个处理器的形式,用于执行程序指令。示例性计算机平台包括:内部通信总线1310;不同形式的程序存储器和数据存储器,例如盘1370、只读存储器(rom)1330或随机访问存储器(ram)1340,用于将要由计算机处理和/或进行通信的多种数据文件以及将由cpu执行的可能的程序指令。计算机1300还包括i/o部件1360,其支持在计算机和这里的其他部件(例如接口元件1380)之间的输入/输出流。计算机1300也可经由网络通信接收编程和数据。
因此,如上面所概述的增强广告服务和/或其他处理的方法的实施形态可以在程序中实现。本技术的程序方面可被看作典型地出于可执行代码和/或相关数据的形式的“产品”或“制品”,该可执行代码和/或相关数据被承载在一种机器可读介质上或在其中实现。有形非暂时性“存储器”类型介质包括任何或全部存储器或其他的用于计算机、处理器等的存储器或其相关模块,例如多种半导体存储器、带驱动器、盘驱动器等,其可在任何时候提供用于软件编程的存储。
所有或部分软件有时可通过网络(例如互联网或多种其他电信网络)传送。例如,这种传送可使软件从一台计算机或处理器向另一台(例如从管理服务器或搜索引擎操作者的主机或其他系统向着计算环境的硬件平台或实现与询问/广告匹配相关的计算环境或类似功能的其他系统)的载入成为可能。因此,可承载软件元件的另一类型的介质包括光、电和电磁波,例如通过本地装置之间的物理接口、通过有线和光固定网络、通过多种空中链路使用。承载这种波的物理元件(例如有线或无线链路,光链路等)也被看作承载软件的介质。如这里所使用的,除了限制为有形的“存储”介质,例如计算机或机器“可读介质”的术语指参与向处理器提供指令以便执行的任何介质。
因此,机器可读介质可采用多种形式,包括但不限于有形存储介质、载波介质或物理传输介质。非易失性存储介质包括例如光或磁盘,例如任何计算机等等之中的任何存储装置,其可用于实现附图所示的系统或其任何部件。易失性存储介质包括动态存储器,例如这种计算机平台的主存储器。有形传输介质包括:同轴电缆、铜线和光纤,其包括构成计算机系统内的总线的导线。载波传输介质可采用电或电磁信号或者是声或光波(例如在射频(rf)和红外(ir)数据通信期间生成的那些)的形式。计算机可读介质的一般形式因此包括例如软盘、可折叠盘、硬盘、磁带、任何其他磁介质、cd-rom、dvd或dvd-rom、任何其他光介质、穿孔卡片纸带、具有孔的图案的任何其他物理存储介质、ram、prom和eprom、闪速eprom、任何其他的存储器芯片或插装盒、传输数据或指令的载波、传送这样的载波的链路或电缆、或计算机可从之读取编程代码和/或数据的任何其他介质。许多这些形式的计算机可读介质可以涉入将一个或多于一个的指令的一个或多于一个的序列承载到物理处理器,以便执行。
本领域技术人员将会明了,本示教适用于多种修改和/或增强。例如,尽管上面介绍的多种部件的实现可以在硬件装置中实现,其还可实现为仅仅使用软件的解决方案,例如安装在已有的服务器上。另外,这里所公开的基于用户组织本地广告的增强广告服务也实现为固件、固件/软件组合、固件/硬件组合或是硬件/固件/软件组合。
尽管上面已经介绍了本示教和/或其他实例,将会明了,可对之做出多种修改,且这里公开的主题可以以多种形式和实例实现,且本示教可以在多种应用中应用,这里仅仅介绍了其中的一些。所附权利要求旨在要求落入本示教真实范围内的任何以及全部应用、修改和变型。
起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。
此文章来源于网络,如有侵权,请联系删除