基于文本的消息中的异步语音行为检测的制作方法

文档序号:15203537发布日期:2018-08-21 04:52阅读:192来源:国知局

本申请要求于2015年11月17日提交的标题为“asynchronousspeechactdetectionintext-basedmessages”的第62/256,338号(代理人案号117082-8002.us00)的美国临时专利申请的权益,其全部内容通过引用并入本文中。

几种实施方式涉及自然语言处理,并且更具体地涉及对在通信平台的用户之间进行传送的基于文本的消息执行异步语音行为检测。



背景技术:

通信平台和协作工具经常被商业企业的雇员用来更加容易地交换想法、文档等。例如,对团队项目有贡献的雇员可以通过将消息发布到私人内部聊天室来相互交谈。虽然这些消息的内容(即,聊天历史)在某些情况下可能是可搜索的,但是这种搜索的范围通常是有限的。换言之,传统的通信平台通常只允许简单地搜索消息本身中的字符和符号。随着现代公司的成长,越来越多的协作和通信通过使用内部聊天系统以及即时通讯服务来完成。

附图说明

通过结合所附的权利要求以及附图(所有这些构成本说明书的一部分)来研究以下具体实施例,这些以及其他目的、特征和特性对于本领域技术人员而言将变得更加明显。虽然所附的附图包括几种实施方式的图示,但附图并不旨在限制所要求保护的主题。

图1是描绘在几种实施方式中可能发生的通信系统中的某些组件的概括框图。

图2是具有聊天服务器和nlp服务器的示例性组件的框图,聊天服务器和nlp服务器一起检测发布至通信界面的消息内的语音行为。

图3是用户向其中输入消息以相互通信的界面的屏幕截图。

图4描绘了由nlp服务器执行异步语音行为检测的过程的流程图。

图5是示出其中可以实现本文中所描述的至少一些操作的计算机系统的示例的框图。

附图仅出于说明的目的来描绘整个具体实施例中所描述的几种实施方式。尽管在附图中以示例的方式示出了特定实施方式并在以下进行了详细描述,但是本发明可适用于多种修改和替代形式。然而,并不旨在将本发明限制于所描述的特定实施方式。因此,要求保护的主题旨在覆盖落入由所附权利要求而限定的本发明范围内的所有修改、等同方案以及替代方案。

具体实施方式

本文描述了涉及采用自然语言处理(nlp)的通信系统的几种实施方式。更具体地,几种实施方式涉及用于对在通信平台的用户之间进行传送的基于文本的消息执行异步语音行为检测的系统、方法和界面。异步语音行为检测允许在不中断通信流的情况下来分析消息的内容。也就是说,这些消息可被发布用于查看(例如,到聊天室)并同时被传送至nlp服务器用于进一步分析。随后,可以更新所发布的消息(例如,通过添加用于存储、搜索等的标签)。

虽然为了方便,参照用于公司和雇员的通信系统描述了几种实施方式,但是本发明的实施方式同样适用于具有教育、个人等应用的多种其他通信系统。本文所介绍的技术可以被实现为专用硬件(例如,电路)、或被实现为采用软件和/或固件适当编程的可编程电路、或被实现为专用和可编程电路的组合。因此,实施方式可以包括其上存储有指令的机器可读介质,该指令可以用于对计算机(或其他电子设备)进行编程以执行处理。机器可读介质可包括但不限于软盘、光盘、光盘只读存储器(cd-rom)、磁光盘、只读存储器(rom)、随机存取存储器(ram)、可擦除可编程只读存储器(eprom)、电可擦除可编程只读存储器(eeprom)、磁卡或光卡、闪存或适用于存储电子指令的其他类型的介质/机器可读介质。

术语

下面给出贯穿本申请所使用的术语、缩写和短语的简要定义。

在本说明书中对“一个实施方式”或“实施方式”的引用意味着结合该实施方式所描述的特定特征、结构或特性被包括在本公开的至少一个实施方式中。在说明书中多处出现的短语“在一个实施方式中”不一定都指相同的实施方式,也不是与其他实施方式相互排斥的单独或替代实施方式。而且,描述了可以由一些实施方式而不是其他实施方式来展示的几种特征。类似地,描述了对一些实施方式而言是要求,而对其他实施方式则不是要求的几种要求。

除非上下文明确要求,否则在整个说明书和权利要求书中,词语“包括(comprise)”、“包括(comprising)”等应被解释为包含性的意义,而不是排他性或穷举性的意义;也就是说,在“包括但不限于”的意义上。如本文所使用的,术语“连接”、“耦合”或其任何变体,意指两个或多个元件之间的直接或间接的任何连接或耦合;元件之间的连接的耦合可以是物理的、逻辑的或其组合。例如,两个设备可以直接耦合,或通过一个或多个中间通道或设备进行耦合。作为另一个示例,设备可以信息能够在其间传递而不与另一个共享任何物理连接的方式进行耦合。此外,当在本申请中使用时,“在此”、“在...之上”、“在...之下”以及类似含义的词语应当指的是本申请作为整体,而不是本申请的任何特定部分。在上下文允许的情况下,在具体实施例中使用单数或复数的词也可以分别包括复数或单数。词语“或”在引用两个或多个项目的列表时,涵盖以下对该词语的所有解释:列表中的任何项目、列表中的所有项目以及列表中的项目的任何组合。

如果说明书声明组件或特征“可能(may)”、“可能(can)”、“可能(could)”或“可能(might)”被包括或具有特性,则该特定组件或特征并不需要被包括或具有该特性。

术语“模块”广义上指软件、硬件或固件(或其任何组合)组件。模块通常是使用特定输入可以产生有用数据或其他输出的功能组件。模块可能是独立的,也可能不是独立的。应用程序(也称为“应用”)可以包括一个或多个模块,或者模块可以包括一个或多个应用程序。

在具体实施例中所使用的术语旨在以其最宽泛的合理方式进行解释,即使其与某些示例结合使用。在本公开的上下文中以及使用每个术语的具体上下文中,本说明书中使用的术语通常具有本领域的普通意义。为方便起见,某些术语可能会突出显示,例如使用大写、斜体和/或引号。突出显示的使用对术语的范围和含义没有影响;在相同的上下文中,术语的范围和含义是相同的,不管它是否被突出显示。应当理解的是,可以多种方式来描述相同的元件。

因此,替代的语言和同义词可用于本文所讨论的任何一个或多个术语,并且不会特别重视本文中是否阐述或讨论了术语。提供了某些术语的同义词。叙述一个或多个同义词并不排除使用其他同义词。包括本文所讨论的任何术语的示例的本说明书中任何地方的示例的使用仅是说明性的,并不旨在进一步限制本公开或任何示例性术语的范围和含义。同样地,本公开并不限于本说明书中给出的几种实施方式。

系统拓扑概述

图1是描绘在一些实施方式中可能发生的通信平台100中的某些组件的概括框图。平台100允许用户124a-c,其也可被称为雇员,使用呈现在一个或多个交互设备126a-c上的界面122来彼此通信。例如,交互设备126a-c可以是移动智能手机、个人数字助理(pda)、平板电脑(例如,)、便携式电脑、个人计算机、可穿戴计算设备(例如,智能手表)等。以下参照图3对界面122进行更加深入地描述。虽然用户124a-c典型地通过键入查询和响应来相互通信,但几种实施方式考虑了替代输入,例如光学或听觉识别。例如,通信平台100可以被配置为通过执行语音识别来生成口头消息的文本表示。因此,交互设备126a-c可以被配置为接收文本输入(例如,通过键盘)、音频输入(例如,通过麦克风)、视频输入(例如,通过网络摄像头)等。

在一些实施方式中,界面122由聊天服务器102生成(例如,使用gui模块104),然后通过网络110b(例如,英特网、局域网、广域网、点对点拨号连接)将界面122传送至交互设备126a-c。聊天服务器102可以包括多种组件、模块等,该多种组件、模块允许通信平台100执行由用户124a-c输入的消息的异步语音行为检测。例如,当用户124a-c将文本输入到呈现在相应界面设备126a-c上的界面122中时,消息可以被发布(例如,发布至聊天室)。如上所述,可以使用专用硬件(例如,电路)、采用软件和/或固件适当编程的可编程电路、或专用和可编程电路的组合来实现聊天服务器102的多种特征。

通常,聊天服务器102和nlp服务器112一起识别、标记和/或存储发布到界面122的每个消息的元数据。聊天服务器102和nlp服务器112中的任一者(或两者)可以被配置为执行本文中所描述的技术。通常由附加到消息的标签来表示的元数据,该元数据可被存储在耦合至聊天服务器102的存储介质108中、耦合至nlp服务器112的存储介质120中、或可通过网络110a访问的远程基于云的存储介质122中。网络110a和网络110b可以是相同的网络或不同的网络。

由用户124a-c输入到界面122中的消息由聊天服务器102使用例如通信模块106、114传送至nlp服务器112。一旦消息被nlp服务器112所接收,nlp模块116利用nlp原则来检测对每个用户通信内特定资源的引用。语音行为检测模块118可以被配置为识别日期、问题、分配和待办事宜、资源名称、元数据标签等。nlp服务器112创建元数据字段以用于这些识别的元素,并且可以创建表示元数据字段的标签。如以下参照图4进一步描述的,标签通常被传送至聊天服务器102,该聊天服务器102将标签附加到发布至界面122的消息中,并使标签对用户124a-c可见。

通信平台100的其他示例可在共同未决的第15/135,360号(代理人案卷号117082-8001.us01)的美国专利申请中找到,该美国专利申请通过引用整体并入本文中。

图2是具有聊天服务器202和nlp服务器220(也被称为语音行为检测服务器)的示例性组件的框图,聊天服务器202和nlp服务器220一起检测发布至通信界面的消息内的语音行为。根据图2所示的实施方式,聊天服务器202可以包括一个或多个处理器204、通信模块206、gui模块208、标记模块210、搜索引擎模块212、加密模块214、云服务连接模块216以及包括众多存储模块的存储器218。与此同时,nlp服务器220包括一个或多个处理器222、通信模块224、语音行为检测模块226、nlp模块228、加密模块232、云服务连接模块234以及包括众多存储模块的存储器236。聊天服务器202和nlp服务器220的其他实施方式可以包括这些模块和组件中的一些、全部或不包括这些模块和组件,以及其他模块、应用和/或组件。仍然,一些实施方式可将这些模块中的两个或多个并入单个模块中和/或将这些模块中的一个或多个的一部分功能与不同模块相关联。

如上所述,聊天服务器202可以生成允许用户发布消息以相互通信的界面。在一些实施方式中,聊天服务器202与外部网站、服务等“智能”地集成在一起,如在共同未决的第62/150,788号的美国专利申请中所描述的那样。即,通信平台200可以被配置为每当添加新创建的文档或在外部网站或服务之一上修改现存文档时,自动更新元数据、数据库记录等。

通信模块206、224可以管理聊天服务器202和nlp服务器220之间的通信以及其他组件和/或系统。例如,通信模块206可用于将发布至界面的消息的内容传送到nlp服务器220。类似地,通信模块224可用于将元数据和/或标签传送至聊天服务器202。由通信模块206接收的元数据和/或标签可被存储在存储器218及236、一个或多个特定存储模块、通信地耦合至聊天服务器202或nlp服务器220的存储介质、或它们的一些组合。

语音行为检测模块226,以及更具体的nlp模块228,可以被配置为对发布到界面的内容执行后处理。后处理可以包括,例如,识别可识别元素、创建描述内容的元数据字段(例如,关键字、用户、日期/时间)以及生成表示元数据字段的标签。然后,标签可以被附加到消息中(例如,通过聊天服务器202的标记模块210)。例如,标签可归因于基于发布消息的用户、消息的内容、发布消息的位置(例如,哪个聊天室或会话字符串)等的消息。然后,在随后的搜索中使用标签、按主题对消息进行分组、生成用于近期讨论的过程报告等。搜索引擎模块212可以分析消息以及其他资源(例如,文件、约定、任务)。

语音行为检测模块226可使用nlp模块228来检测打字或口头内容(即,“语音行为”)。在一些实施方式中,语音行为检测模块226基于识别的内容自动触发工作流程,由此增加工作场所通信的效率。nlp模块228可采用一个或多个检测/分类过程来识别由用户输入的文本通信内的日期、问题、文档等。该信息以及任何元数据标签可被存储在存储器236内,以在未来执行检测/分类时进行协助。优选地,nlp模块228对已经传送的消息、电子邮件等执行检测/分类,以便不会中断用户聊天界面之间的通信流。

加密模块214、232可确保通信(例如,即时消息)的安全性,不会因聊天服务器202与nlp服务器220之间的双向信息交换而遭受损害(compromised)。加密模块214、232可通过使用安全套接字层(ssl)或传输层安全(tls)加密、唯一的网络证书(例如,ssl证书)和/或一些其他加密协议来高度保护消息内容。例如,加密模块214、232可采用256位ssl加密。在一些实施方式中,加密模块214、232或一些其他模块执行元数据和消息中的一些或全部的自动备份。

云服务连接模块216、234可以被配置为正确地预测由用户键入的词语(即,提供“自动完成”功能)和/或促进与基于云的资源的连接。聊天服务器202的云服务连接模块216所采用的自动完成算法可以获悉特定用户的习惯,例如在与他人通信时经常参考哪个(些)资源。在一些实施方式中,云服务连接模块216、234允许在聊天服务器202、nlp服务器220和基于云的存储器之间安全地传送消息、元数据等。取决于主机云是公共的、私有的还是混合的,云服务连接模块216、234可以包括特定的安全或通信协议。

图形用户界面(gui)模块208生成可以由用户(例如,雇员)使用以相互通信的界面。gui模块208还可以被配置为生成浏览器。该浏览器允许用户基于由标记模块210附加到消息中的标签,来执行对消息的搜索。存储介质218、236可以是用于存储信息的任何设备或机制。例如,存储器236可用于存储用于在处理器222上运行一个或多个应用或模块(例如,语音行为检测模块226、nlp模块228)的指令。

本领域技术人员将认识到,聊天服务器202和nlp服务器220可由相同或不同的实体来管理。例如,聊天服务器202可由负责维护通信平台及其界面的聊天实体来管理,而nlp服务器220可由专门进行语音处理的另一实体(即,第三方)来管理。在这样的实施方式中,可以采用附加的安全措施(例如,加密技术)。

图3是可以在一些实施方式中呈现的通信界面300的屏幕截图。界面300可基于用户之间传送的内容而直观地进行设计和布置。与传统的通信平台不同,界面300既是高度智能化,又能够集成多种服务和工具。尽管图3的界面300被示为浏览器,但是界面300也可以被设计成专用应用(例如,用于ios、android)或桌面程序(例如,用于osx、windows、linux)。

在一些实施方式中,界面300执行索引api,该索引api允许通过通信平台将几种外部数据库进行链接、抓取和索引。因此,存储在几种外部数据库中的任何数据都能够容易地从界面300内访问并容易地获得。高度集成的基础结构允许通信平台使用语音行为检测,自动完成等来识别正在寻找什么数据。

外部开发者也可以能够将他们自己的服务集成到通信平台中。此外,外部公司数据库可被连接至通信平台以提供附加功能。例如,公司可能希望上传雇员配置文件(profile)或客户列表以及联系信息。特定的知识库也可被创建和/或被集成到用于特定目标部门和行业的通信平台中。例如,法规、代码以及法律数据库可以被集成在为律师事务所设计的通信平台中,而诊断信息、病人配置文件和医疗数据库可以被集成在为医院设计的通信平台中。

界面300允许用户308发布消息302(例如,发布到私人聊天室)。消息302可被发布,并能被特定的用户群查看。例如,特定的用户群可以是正在共同开展项目的企业的雇员。如下面进一步描述的,用户最初将消息302发布到界面,并同时将消息302传送至nlp服务器以用于进一步分析。消息302的内容304的元数据表征(由标签306表示)在其被发布至界面300之后,被附加到消息302。因此,界面300的用户308之间的通信流不会被标签中断。例如,参见图3,其示出了标签306已经被附加到一个消息302,但尚未被附加到另一个最近的消息310的实例。

图4描绘了用于由nlp服务器来执行异步语音行为检测的过程400的流程图。在步骤402中,聊天服务器从用户客户端接收消息。用户客户端位于互动设备(例如,智能手机、平板电脑或便携式电脑)上呈现的界面的单独实例中。在步骤404中,聊天服务器将消息添加至聊天历史中,从而使消息对在对话线程中的参与者可见。例如,对话线程可被限制到私人聊天室。然后,聊天服务器同时(或之后不久)将消息传送至nlp服务器,以用于附加分析,如步骤406所描述的。在步骤408中,nlp服务器接收消息并传送确认,并且在步骤410中,确认是由聊天服务器接收。该交换可能是身份验证握手(authenticationhandshake)过程的一部分。在该步骤之后,聊天服务器准备好处理下一个传入消息,并且特别地,聊天服务器不需要等待nlp服务器完成其处理。

在步骤412中,nlp服务器执行用于识别消息里的内容的一个或多个nlp技术。例如,nlp技术可以包括将消息拆分成句子的话语拆分(步骤414a)、将句子拆分成单个词语的词语切分(tokenization)(步骤414b)、检索词语属性(例如词性)的词典查找(步骤414c)、以及考虑相关词语特性(例如,第一相关词语是否是疑问代词)的特征提取(步骤414d)。在步骤416中,nlp服务器使用基于规则和基于机器学习的分类器来检测消息的语音行为和/或其他高级属性,该分类器利用先前提取的特征。检测到的语音行为可由nlp服务器创建并传送至聊天服务器以用于发布的标签来表示,如步骤418所描述的。通常,采用表示与单独消息相关联的元数据的标签来标记消息。

在步骤420中,聊天服务器接收标签和/或消息标识符,并在步骤422中向nlp服务器传送确认。在步骤424中,确认是由nlp服务器接收。该交换可能是上述同一身份验证握手过程的一部分。在步骤426中,聊天服务器将标签附加到已经发布至界面并且已被适当用户查看的消息中。这里所描述的异步语音行为检测技术允许在不中断通信平台的用户之间的通信流的情况下来进一步分析消息。

计算机系统

图5是示出其中可以实现本文所描述的至少一些操作的计算系统500的示例的框图。计算系统可以包括一个或多个中央处理单元(“处理器”)502、主存储器506、非易失性存储器510、网络适配器512(例如,网络接口)、视频显示器518、输入/输出设备520、控制设备522(例如,键盘和定点设备)、包括存储介质526的驱动单元524、以及可通信地连接到总线516的信号发生设备530。总线516被示为表示任何一个或多个单独的物理总线、点对点连接或通过适当的桥接器、适配器或控制器进行连接的两者的抽象概念。因此,总线516可以包括,例如,系统总线、外围部件互连(pci)总线或pci-express总线、hypertransport或工业标准体系结构(isa)总线、小型计算机系统接口(scsi)总线、通用串行总线(usb)、iic(i2c)总线或电气和电子工程师协会(ieee)标准1394总线,也称为“火线”。

在几种实施方式中,尽管计算系统500可被连接(例如,有线或无线)至其他机器,但是计算系统500作为独立设备进行操作。在联网部署中,计算系统500可作为客户端-服务器网络环境中的服务器或客户端机器来操作,或作为对等(或分布式)网络环境中的对等机器来操作。

计算系统500可以是服务器计算机、客户端计算机、个人计算机(pc)、用户设备、平板pc、便携式计算机、个人数字助理(pda)、蜂窝电话、iphone、ipad、黑莓、处理器、电话、网络设备、网络路由器、交换机或桥接器、控制台、手持式控制台、(手持式)游戏设备、音乐播放器、任何便携式、移动式、手持式或能够执行指定要计算系统采取的动作的一组指令(顺序或其他)的任何机器。

尽管主存储器506、非易失性存储器510和存储介质526(也称为“机器可读介质”)被示出为单个介质,但术语“机器可读介质”和“存储介质”应当被理解为包括存储一个或多个指令集合528的单个介质或多个介质(例如,集中式或分布式数据库、和/或相关联的高速缓冲存储器和服务器)。术语“机器可读介质”和“存储介质”还应当被理解为包括能够存储、编码或承载一组指令的任何介质,该一组指令由计算系统执行并使计算系统执行当前所公开的实施方式中的任何一种或多种方法。

通常,被执行以实现本公开的实施方式的例程,可被实现为称作“计算机程序”的操作系统或特定应用、组件、程序、对象、模块或指令序列的一部分。计算机程序通常包括在多个时间在计算机中的多个存储器和存储设备中设置的一个或多个指令(例如,指令504、508、528),并且当由一个或多个处理单元或处理器502读取和执行时,引发计算系统500执行操作以执行涉及本公开的多个方面的元件。

此外,尽管已经在全功能计算机和计算机系统的背景下描述了实施方式,但是本领域技术人员将认识到,几种实施方式能够以多种形式作为程序产品进行分配,并且无论用于实际实现分配的机器或计算机可读介质的具体类型如何,本公开同样适用。

机器可读存储介质、机器可读介质或计算机可读(存储)介质的进一步示例包括但不限于可记录类型介质,诸如易失性和非易失性存储器设备510、软盘和其它可移动磁盘、硬盘驱动器、光盘(例如,光盘只读存储器(cdrom)、数字多功能盘(dvd))以及诸如数字和模拟通信链路的传送类型介质。

网络适配器512使得计算系统1000能够通过由计算系统500和外部实体所支持的任何已知的和/或便捷的通信协议,利用计算设备500外部的实体来调解网络514中的数据。网络适配器512可以包括网络适配器卡、无线网络接口卡、路由器、接入点、无线路由器、交换机、多层交换机、协议转换器、网关、桥接器、桥接器路由器、集线器、数字媒体接收器和/或中继器中的一个或多个。

网络适配器512可以包括防火墙,在一些实施方式中,该防火墙可以控制和/或管理计算机网络中的访问/代理数据的权限,并且追踪不同机器和/或应用之间的不同级别的信任。防火墙可以是具有硬件和/或软件组件的任意组合的任何数量的模块,其能够在特定的一组机器与应用、机器与机器、和/或应用与应用之间实施预定的一组访问权限,例如,以调控这些不同实体之间的通信流量以及资源共享。此外,防火墙可对访问控制列表进行管理和/或访问,该访问控制列表详细描述权限,该权限包括例如由个人、机器和/或应用对对象的访问权和操作权、以及权限权利得以成立的条件。

其他网络安全功能可被执行或被包含在防火墙的功能中,该防火墙的功能可包括但不限于入侵防御、入侵检测、下一代防火墙、个人防火墙等。

如上所述,这里所介绍的技术由,例如,可编程电路(例如,一个或多个微处理器)、利用软件和/或固件进行编程、完全在专用硬连线的(即,不可编程的)电路中或在组合中或此种形式中来实现。专用电路可以是以下形式:例如,一个或多个专用集成电路(asic)、可编程逻辑设备(pld)、现场可编程门阵列(fpga)等。

备注

为了说明和描述的目的,提供了所要求保护的主题的几种实施方式的以上描述。并非旨在穷举或将所要求保护的主题限制于所公开的精确形式。对于本领域技术人员来说,许多修改和变化将是显而易见的。选择和描述实施方式是为了最好地描述本发明的原理以及其实际应用,从而使相关领域的其他技术人员能够理解所要求保护的主题,几种实施方式以及适于特定用途的几种修改是可以预期的。

尽管以上具体实施例描述了某些实施方式以及所预期的最佳模式,但无论文本中出现了多么详细的内容,实施方式能以多种方式来实行。系统和方法的细节可能在它们实现细节上有很大差异,但仍然被说明书所包含。如上所述,在描述几种实施方式的某些特征或方面时所使用的特定术语不应当被理解为暗示该术语在本文中被重新限定为限于和该术语相关联的本发明的任何特定特性、特征或方面。通常,以下权利要求中所使用的术语不应当被解释为将本发明限制为说明书中所公开的具体实施方式,除非本文中明确定义了这些术语。因此,本发明的实际范围不仅包含所公开的实施方式,而且还包含在权利要求书下实行或实施所述实施方式的所有等效方式。

说明书中所使用的语言主要是为了可读性和指导性目的而进行选择的,并且其可能没有被选择为描绘或限定本发明主题。因此,其目的在于本发明的范围不受具体实施例的限制,而是受限于基于本文的申请所提出的任何权利要求。因此,几种实施方式的公开旨在是说明性的,而不是限制实施方式的范围,该范围是在所附权利要求中所阐述的。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1