CN108701458B - 话音识别 - Google Patents
话音识别 Download PDFInfo
- Publication number
- CN108701458B CN108701458B CN201780014607.7A CN201780014607A CN108701458B CN 108701458 B CN108701458 B CN 108701458B CN 201780014607 A CN201780014607 A CN 201780014607A CN 108701458 B CN108701458 B CN 108701458B
- Authority
- CN
- China
- Prior art keywords
- user
- response
- words
- voice
- interval
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 230000004044 response Effects 0.000 claims abstract description 181
- 230000000694 effects Effects 0.000 claims abstract description 64
- 238000004891 communication Methods 0.000 claims description 90
- 238000001514 detection method Methods 0.000 claims description 37
- 238000000034 method Methods 0.000 claims description 24
- 230000000007 visual effect Effects 0.000 claims description 15
- 238000012544 monitoring process Methods 0.000 claims description 9
- 230000033001 locomotion Effects 0.000 claims description 3
- 238000013473 artificial intelligence Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 230000007246 mechanism Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 241000167880 Hirundinidae Species 0.000 description 5
- 230000006399 behavior Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 230000009118 appropriate response Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 241001465754 Metazoa Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000008921 facial expression Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 125000001475 halogen functional group Chemical group 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- APTZNLHMIGJTEW-UHFFFAOYSA-N pyraflufen-ethyl Chemical compound C1=C(Cl)C(OCC(=O)OCC)=CC(C=2C(=C(OC(F)F)N(C)N=2)Cl)=C1F APTZNLHMIGJTEW-UHFFFAOYSA-N 0.000 description 1
- 230000004043 responsiveness Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/02—Feature extraction for speech recognition; Selection of recognition unit
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/183—Speech classification or search using natural language modelling using context dependencies, e.g. language models
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/78—Detection of presence or absence of voice signals
- G10L25/87—Detection of discrete points within a voice signal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/14—Systems for two-way working
- H04N7/15—Conference systems
- H04N7/157—Conference systems defining a virtual conference space and using avatars or agents
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/183—Speech classification or search using natural language modelling using context dependencies, e.g. language models
- G10L15/19—Grammatical context, e.g. disambiguation of the recognition hypotheses based on word sequence rules
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
- G10L15/222—Barge in, i.e. overridable guidance for interrupting prompts
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
- G10L2015/0635—Training updating or merging of old and new templates; Mean values; Weighting
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L2015/088—Word spotting
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
- G10L2015/223—Execution procedure of a spoken command
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Acoustics & Sound (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Telephonic Communication Services (AREA)
- Machine Translation (AREA)
Abstract
从用户接收语音输入。ASR系统在存储器中生成其已经在该语音输入中识别出的单词的集合,并且在其每次在该语音输入中识别出新的单词时更新该集合以将该新的单词添加至该集合。信息在话音活动仍在进行时被预先取回以用于响应于要在所述话音活动间隔的结束时被输出而进行传递。
Description
背景技术
通信系统允许用户例如通过在网络上进行通信事件而通过通信网络彼此通信。网络例如可以是互联网或公共交换电话网(PSTN)。在通话期间,音频和/或视频信号能够在网络的节点之间被传输,由此允许用户在通过通信网络的通信会话中互相发送和接收音频数据(例如,话音)和/或视频数据(例如,网络摄像头视频)。
这样的通信系统包括互联网协议语音或视频(VoIP)系统。为了使用VoIP系统,用户在用户设备上安装并执行客户端软件。客户端软件建立VoIP连接并且提供诸如注册和用户认证之类的其他功能。除了语音通信之外,客户端还可以建立用于通信事件、即时消息传送(IM)、屏幕共享、或白板会话的连接。
通信事件可以在(多个)用户与智能软件代理之间进行,所述智能软件代理有时被称作“bot”。软件代理是一种代表具有代理关系的用户来执行任务的自主计算机软件。软件代理在通信事件的持续时间内连续运行以等待代理的输入,当所述输入被检测到时触发要对那些输入执行自动任务。软件代理可以表现出人工智能(AI),由此它可以模拟某些人类智能过程,例如对来自用户的输入生成类似人类的响应,因此促进用户与软件代理之间经由网络的双向对话。
发明内容
提供了该发明内容以用简化的形式引入在以下的具体实施方式中进一步描述的概念的选择。该发明内容不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于限制所要求保护的主题的范围。
本发明的一个方面针对一种计算机系统,其包括:输入端,其被配置为从用户接收语音输入;ASR系统,其用于识别该语音输入中的个体单词,其中,所述ASR系统被配置为在该语音输入中的至少一个话音活动的间隔期间、在存储器中生成它已经在该语音输入中识别出的一个或多个单词的集合,并且被配置为它每次在该语音输入中识别出新的单词时更新该存储器中的集合以将该新的单词添加至该集合;查找模块,其被配置为在该语音输入中的话音活动的间隔期间在该话音活动间隔仍在进行时的第一时间从该存储器中的集合中取回至少一个单词,并且被配置为在该话音活动间隔仍在进行时执行查找以预先取回与所述至少一个单词相关联的信息;以及响应生成模块,其被配置为检测该话音活动间隔在稍后时间的结束,该集合在该第一时间与所述稍后时间之间至少被该ASR系统更新了一次,并且基于其来生成用于输出给用户的响应,其中,该响应传达由查找模块预先取回的信息。
在用户已经完成讲话之前执行先发性(pre-emptive)查找确保了最终响应能够在期望时被输出而没有延迟。这提供了更加自然的对话流。被预先取回的信息例如可以来自互联网搜索引擎(例如,Bing、Google等),或者该用户可以是通信系统的用户并且所述信息可以是与通信系统中的另一个用户有关的信息。例如,可以将关键词与通信系统的用户数据库中的用户标识符(例如,用户名)进行比较以定位与该关键词相匹配的用户标识符中的一个,并且该信息可以是有关与其用户名相关联的所识别的用户的信息(例如,联系人细节)。
在实施例中,可以基于由ASR系统向该个体单词中的至少一个所指定的置信度数值和/或由计算机系统的语言模型向单词集合所指定的置信度数值来生成所述响应。
所述信息可以是从互联网搜索引擎预先取回的。
所述用户可以是通信系统的用户,而预先取回的信息可以是与通信系统中的另一个用户有关的信息。例如,预先取回的信息可以包括针对其他用户的联系人细节。
所述计算机系统可以包括话音检测模块,其被配置为当存储器中的所识别的单词的集合被ASR系统更新时对其进行监视,其中,所述响应生成模块被配置为基于对所识别的单词集合的所述监视来检测话音活动间隔的结束。
所述计算机系统还可以包括语言模型,其中,检测话音活动间隔的结束包括由所述话音检测模块来检测根据该语言模型,所识别的单词的集合何时形成语法上完整的句子。
检测话音活动间隔的结束可以包括由话音检测模块检测在预先确定的时段内没有新的单词被该ASR系统识别。
该响应可以是用于以可听见的形式向用户播出的音频响应。
该计算机系统可以包括视频生成模块,其被配置为生成并向用户输出化身(avatar)的运动图像,其通过执行视觉动作来传达对该响应的输出何时将开始。
该计算机系统还可以包括:话音检测模块;响应传递模块,其被配置为当话音活动间隔已经结束时开始向用户输出音频响应,其中,音频响应的输出在它完成之前响应于该话音检测模块检测到语音输入中的后续话音活动间隔的开始而终止。
该话音检测模块可以被配置为通过检测ASR系统的语音输入中对另一个单词的识别来检测后续话音活动间隔的开始,该话音活动间隔以对所述另一单词的检测为开始。
本发明的另一个方面针对于一种在用户与在计算机上执行的人工智能软件代理之间实行通信的计算机实现的方法,该方法包括:在ASR系统处从所述用户接收语音输入;由该ASR系统识别该语音输入中的个体单词,其中,该ASR系统在该语音输入中的至少一个话音活动的间隔期间、在存储器中生成它已经在该语音输入中识别出的一个或多个单词的集合,并且在它每次在该语音输入中识别出新的单词时更新该存储器中的集合以将该新的单词添加至该集合;在该语音输入中的话音活动的间隔期间在该话音活动间隔仍在进行时的第一时间从该存储器中的集合中取回至少一个单词;在该话音活动间隔仍在进行时执行查找以预先取回与该至少一个单词相关联的信息;检测该话音活动间隔在稍后时间的结束,该集合在该第一时间与所述稍后时间之间至少被该ASR系统更新了一次;并且基于此生成响应以由软件代理输出给用户,其中,该响应传达该查找模块所预先取回的信息。
该语音输入可以经由通信网络从用户设备接收,其中,该输出步骤是通过以下操作执行的:该软件代理经由网络向该用户设备发送该响应以便使得该用户设备向该用户输出该响应。
该语音输入从该用户被实时地接收并且该响应被实时地输出给该用户,由此经由网络在该用户与软件代理之间实行实时通信事件。
该方法可以在通信系统中实现,其中,该通信系统包括为该通信系统的多个用户中的每个用户存储用户标识符的用户账户数据库,该用户标识符唯一地标识通信系统内的用户;其中,软件代理的用户标识符也被存储在该用户账户数据库中,以使得该软件代理表现为该通信系统的另一个用户。
该方法可以包括当存储器中的所识别的单词的集合被ASR系统更新时对其进行监视,该话音活动间隔的结束基于对所识别的单词的集合的所述监视而被检测。
检测话音活动间隔的结束可以包括由话音检测模块检测根据该语言模型,所识别的单词的集合何时形成语法上完整的句子。
本发明的另一个方面针对于一种包括存储在计算机可读存储介质上的人工智能软件代理的计算机程序产品,该软件代理用于基于ASR系统的输出来与用户进行通信,该ASR系统用于从用户接收语音输入并且在该语音输入中的至少一个话音活动的间隔期间识别该语音输入中的个体单词,该软件代理被配置为当被执行时实现以下操作:在该语音输入中的话音活动的间隔期间在该话音活动间隔仍在进行时的第一时间从该存储器中的集合中取回至少一个单词;在该话音活动间隔仍在进行时执行查找以预先取回与该至少一个单词相关联的信息;检测该话音活动间隔在稍后时间的结束,该集合在该第一时间与所述稍后时间之间至少被该ASR系统更新了一次;并且基于此生成响应以由软件代理输出给用户,其中,该响应传达该查找模块所预先取回的信息。
在实施例中,该响应可以通过以下方式被输出给该用户:经由网络将其发送至用户可用的用户设备以便使得该用户设备能够向该用户输出该响应。
附图说明
为了更好地理解本主题并且示出其如何实行,作为示例对以下附图进行参考,其中:
图1示出了通信系统的示意性框图;
图2示出了用户设备的示意性框图;
图3示出了远程系统的示意性框图;
图4示出了远程系统的功能模块;
图5A示出了用户与软件代理之间的示例性对话,而图5B示出了稍后时间点的对话;
图6A和6B示出了该对话在图5B的时间点之后可以如何进行的不同示例。
具体实施方式
所描述实施例的目标是使得(多个)用户能够通过通信系统内的通信网络(例如在VoIP通话中)与软件代理进行对话。该对话在经延长的时段(例如,几分钟)内模拟与真人说话的体验。在使得该体验看上去逼真时的挑战在于令代理知晓何时人在讲话、不在讲话、结束了一个句子、或者开始了新的句子。
诸如“嗯…”、“啊…”等之类的讲话不流利会产生与软件代理的非常不连贯的对话。下文所描述的技术降低了话音的错误识别的几率,因为它们使用自动话音识别(ASR)系统的输出来检测何时ASR系统所识别的讲出的单词形成了完整的句子。
一种被称为语音活动检测(Voice Activity Detection,VAD)的现有机制使用麦克风处的声音水平检测系统来尝试并且检测用户何时在讲话。这样的系统使用麦克风处的声音压力来检测活动并且与实际的单词表达没有硬性关联。这使得系统易于出现伪阳性,即例如由于高的背景噪声水平或者由麦克风所检测到的其他可听见的干扰而在没有人时检测到话音。
在本文中,作为对比,ASR系统的输出被用于确定用户何时在讲话或者何时没有讲话。该信息有助于使得与软件代理的对话更具会话性并且因此更加真实。
下文进一步详细描述了本公开的话音检测技术。首先,描述所述技术可以被实现的上下文。
图1示出了通信系统1的框图。通信系统1包括通信网络2,与之连接的有第一用户设备6、第二用户设备6’、远程计算机系统8(远离用户设备6、6’)、以及用户账户数据库70。网络2是基于分组的网络,例如互联网。
用户设备6、6’分别能够由第一和第二用户4、4’使用。每个用户设备6、6’被示出为在执行相应版本的通信客户端7、7’。
每个客户端7、7’用于在用户4与其他用户4’之间经由网络实现通信系统内的通信事件,例如音频和/或视频通话,和/或诸如白板、即时消息传送、或屏幕共享会话之类的其他通信事件。通信系统1可以是基于互联网协议语音或视频(VoIP)系统的。这些系统对于用户而言可以是有益的,因为它们与常规的固定线路或移动蜂窝网络相比常常具有显著较低的成本,特别是对于长途通信而言。客户端软件例如基于诸如用户名和相关联的密码之类的登录凭证来建立VoIP连接并且提供诸如注册和用户认证之类的其他功能。为了实现通信事件,数据是从多个用户中的每个用户在其相应的设备处被捕获的,并且被传送至其他用户的设备以用于输出至其他用户。例如,在通话中,数据包括经由相应设备的麦克风所捕获并且实施作为经由网络2的音频流所发送的该用户的话音(通话音频)的音频数据,并且可以额外地包括经由相应设备的相机所捕获并且实施作为经由网络2所发送的视频流的该用户的运动图像(通话视频)的视频数据。通话音频/视频在传输之前在发送设备处被捕获并编码,并且在接收之后在其他设备处被解码并输出。用户4、4’因此能够以可听见和可看见(针对视频通话)的方式经由通信网络2互相通信。可替代地,可以经由蜂窝或固定线路(例如,PSTN)连接来建立通话。
就数据(例如,通话音频/视频)在其设备处从用户中的一个中被捕获与所捕获的数据在其设备处被输出给其他用户之间最多存在短暂延迟(例如,大约2秒或更少)的意义而言,通信事件可以是实时的。
图1中仅示出了通信系统1的两个用户4、4’,但是如将容易理解的,可以存在通信系统1的更多用户,他们中的每个都操作他们自己的设备和客户端以使得他们能够经由通信网络2与其他用户进行通信。例如,可以在通信系统1的三个或更多用户之间进行诸如分组通话(例如,视频会议)之类的分组通信事件。
图2示出了用户设备6的框图。用户设备6能够采用多种形式的计算机设备,例如台式或膝上计算机设备、移动电话(例如,智能电话)、平板计算设备、可穿戴计算设备(头戴式耳机、智能手表等)、电视(例如,智能TV)或其他挂墙设备(例如,视频会议设备)、机顶盒、游戏控制器等。用户设备6包括形成一个或多个处理单元(例如,CPU、GPU、定制处理单元等)的处理器22以及连接至处理器22的以下组件:在一个或多个存储器单元(例如,RAM单元、直接存取存储器单元等)上形成的存储器22;网络接口24;至少一个输入设备,例如所示出的相机27和麦克风28;至少一个输出设备,例如扬声器(26)和显示器24。用户设备6经由其网络接口24连接至网络2,以使得处理器22能够往来于网络2发送和接收数据。网络接口24可以是有线接口(例如,以太网、火线、Thunderbolt、USB等)或者无线接口(例如,Wi-Fi、蓝牙、NFC等)。存储器保存通信客户端7的代码以在处理器22上执行。客户端7可以是例如独立通信客户端应用、诸如Web浏览器等之类的另一应用的插件,其在由其他应用所提供的执行环境中的处理器上运行。客户端7具有用于从用户4接收信息并且向用户4输出信息的用户界面(UI)。例如,客户端7可以分别经由扬声器26和显示器24来输出经解码的音频/视频。显示器24可以包括触摸屏以使得该显示可以充当输入设备。客户端分别经由麦克风28和相机27来捕获音频/视频,其编码并发送至参与通话的其他用户的一个或多个其他用户设备。这些组件中的任何一个可以被集成在用户设备2或者经由合适的外部接口而连接至用户设备104的外部组件中。
返回图1,用户账户数据库70针对通信系统1的每个用户关联于该用户的唯一用户标识符存储相关联的用户账户数据。因此,用户在通信系统1内由他们的用户标识符唯一地标识,并且就他们利用在数据库70中所保存的信息而了解彼此的存在的意义而言,所述用户由数据库70在通信系统1内被呈现为彼此“可见”。数据库70可以以任何合适的方式来实现,例如被实现为分布式系统,由此其保存的数据在多个数据存储位置间被分布。
通信系统1提供登录机制,由此通信系统的用户能够为他们自己创建或注册唯一的用户标识符以在通信系统内使用,例如在通信系统内创建的用户名或者在注册时作为用户名使用的在通信系统内注册的现有电子邮件地址。用户还创建了相关联的密码,并且用户标识符和密码构成了该用户的凭证。为了从特定设备获取对通信系统1的访问,用户在该设备上向客户端输入他们的凭证,所述凭证针对在通信系统1的用户账户数据库70内存储的该用户的用户账户数据而被验证。用户因此在通信系统1内由相关联的用户标识符唯一地标识。这是示例性的,并且通信系统1可以提供可替代或额外的认证机制,例如基于数字凭证。
在给定时间处,每个用户名能够在通信系统内与该用户所登录的客户端的一个或多个实例相关联。用户可以具有在其他设备上运行的与相同的登录/注册细节相关联的通信客户端实例。在具有特定用户名的相同用户能够同时登录到不同设备上的相同客户端应用的多个实例的情况下,服务器(或者类似设备或系统)被设置为将用户名(用户ID)映射至所有那些多个实例,而且也将分别的子标识符(子ID)映射至每个特别的个体实例。因此,通信系统能够在不同实例间加以区分,同时仍然在通信系统内保持用户的一致身份。
除了认证之外,客户端7、7’在通信系统内提供额外的功能,例如在场和联系人管理机制。前者允许用户看到彼此的在场状态(例如,离线或在线,和/或诸如忙碌、有空、非活动等之类的更加详细的在场信息)。后者则允许用户在通信系统内将彼此添加为联系人。用户的联系人作为他们在数据库70中的用户账户数据的一部分而与他们的用户标识符相关联地被存储在通信系统1内,以使得他们能够由用户从用户所登录的任何设备来访问。为了将另一个用户添加为联系人,用户使用他们的客户端7向其他用户发送联系人请求。如果其他用户使用他们自己的客户端接受了该联系人请求,则所述用户就在数据库70中被添加为彼此的联系人。
远程系统8由服务器设备或者协作以提供期望的功能的多个互相连接的服务器设备的集合所形成。例如,远程系统8可以是基于云的计算机系统,其使用硬件虚拟化来提供灵活、可扩展的执行环境,代码模块能够向其上传以供执行。
远程计算机系统8实现智能软件代理(bot)36,其操作将在适当时进行描述。一言概之,bot 36是一种人工智能软件代理,其被配置为使得在通信系统1内大体上表现为就像它是该通信系统中的另一个成员那样。在该示例中,bot 36在通信系统1内具有其自己的用户标识符,由此(除其他之外)用户4能够:
使用他们的通信客户端7往来于bot 36接收或发起通话和/或与其进行IM会话,就像他们能够往来于通信系统1的其他用户2’接收或发起通话和/或与其进行IM会话那样;
将bot 36添加为他们在通信系统1内的联系人中的一个。在该情况下,通信系统1可以被配置为使得任何这样的请求都被自动地接受。
查看bot的在场状态。这例如始终或在大多数时间都是“在线”,除了在例外情况下(例如系统故障)。
这允许通信系统1的用户通过利用通信系统1现有的基础架构来与bot36进行通信。要实现该通信不需要对现有架构进行改变或者仅需要小幅改变。因此,bot就这一点而言在通信系统内对另一个用户表现为“可见”,就像用户通过数据库70以及在场和联系人管理机制而对彼此“可见”那样。
bot 36不仅表现为通信系统1的架构内的另一个用户,它还被编程为模拟某些人类行为。特别地,bot 36能够解译用户的通话音频中的话音,并且以智能的方式对其进行响应。bot 36将其响应表达为合成话音,所述合成话音作为通话音频被发送回用户,并且就像真实用户的通话音频那样由它们的客户端7以可听见的方式向他们播出。bot 36还生成以“化身”为形式的合成视频,其模拟人类的视觉动作以伴随该合成话音。这些以与真实用户的视频相同的方式作为通话视频被发送并且在用户设备2处被显示。
图3示出了远程系统8的框图。远程系统8是一种计算机系统,其包括一个或多个处理器10(每个由一个或多个处理单元形成)、存储器12(由可以本地化或者跨多个地理位置分布的一个或多个存储器单元形成)、以及连接至处理器10的网络接口16。存储器保存代码14以在处理器10上执行。代码14包括软件代理36的代码。该远程系统经由网络接口16连接至网络2。如将显而易见的,与在图3中即刻明显的相比,远程系统8可以具有更加复杂的硬件架构。例如,如所指示的,远程系统8可以具有分布式架构,由此代码14的不同部分在例如云计算平台的一组互相连接的计算设备中的不同设备上被执行。
图4示出了远程系统8的以下功能模块:ASR(自动话音识别)系统32;语言模型34;关键词查找服务38、响应生成器40、和响应传递模块42(它们构成响应模块);话音检测器44和计时器45;话音过载检测器46;化身生成器48;以及音频和视频编码器50、51。所述功能模块是代码14的软件模块,即,每个表示通过在远程系统8的处理器10中的一个上执行代码14的一部分而实现的功能。注意到,图4是高度示意性的,并且在实施例中,该系统可以包括例如用于实现声音建模、意图检测等的其他功能模块,它们可以结合在本文中所描述的技术使用以驱动bot 36的行为。
ASR系统32和语言模型34构成了对话性理解的话音识别服务30。话音识别服务30从用户4接收语音输入19,其作为到来的音频流中的通话音频而经由网络2从用户设备4接收。
ASR系统32提供连续识别,这意味着当用户4开始讲话时,ASR系统32就开始对关于正在识别什么内容给出部分假设。该部分假设继续被给出直到语言模型34确定整个句子在语法上是完整的并且给出最终结果。如果讲话者保持讲话,则新的部分响应将会开始。与软件代理36的对话是使用对话性理解的话音识别服务30的能力来控制的。
ASR系统32识别语音输入19(即,如用户4所讲出的)中的个体单词,并且以传递它们由用户4所讲出的相对顺序的方式将它们作为部分结果52存储在存储器10中。部分结果52是以ASR系统32已经在语音输入19中所识别出的单词集合(临时集合)为形式的。临时集合52是传递其所包含的单词的相对顺序的数据结构。临时集合52在ASR系统32每次在语音输入19中识别出新的单词时被更新以将该新的单词作为最近讲出的单词添加至集合52。
就其实际上能够对应于多于一个单词的意义而言,语音输入19的一部分可能是模糊的。这在图5A中被示出,其示出了可能的单词如何在用户4讲话时被添加至单词的临时集合52。在该示例中,用户4在感叹他或她附近明显缺少燕子时在单词“maybe the swallows”之前刚讲出了单词“flew”。然而,英语动词“flew”具有与英语名词“flue”类似的发音。ASR系统32识别出这两种可能性,并且因此将这两个单词添加至临时集合52作为紧接“swallows”之前所说的话的可能的替代选择(注意到在该示例中,ASR系统没有考虑到讲出单词的上下文——如下文所解释的,这是语言模型34的功能之一)。类似的模糊性在关于单词“maybe”的该示例中也是明显的,因为其在英语中与两个单词的短语“may be”具有类似的发音。因此,ASR系统32已经在临时集合52中包括了单词“maybe”和两个单词的短语“maybe”以作为紧接“the”之前所说的话的彼此可能的替代选择。
临时集合52因此识别出用户4所讲出的单词的一个或多个可能序列。由于上文所讨论的模糊性而出现了多个序列:在图5A的示例中,临时集合52识别出用户可能刚刚讲出的单词的四种可能的序列:
“may be the swallows flew”
“maybe the swallows flew”
“may be the swallows flue”
“maybe the swallows flue”
临时集合52可以具有文本格式,因此临时集合54中的每个单词被存储为一个或多个字符的串,其通过ASR系统32对语音输入19应用话音至文本算法所生成。
语言模型34对单词的临时集合52应用一组语法规则以通过将个体单词之间的语义关系考虑在内以便提供句子响应,来确定在由个体单词单独传递的之上和之外的有关语音输入19的语义内容的额外信息。
例如,语言模型34可以基于所述一组语法规则向可能的单词序列中的每个指定概率(或其他置信度数值)。该概率作为整体被指定给序列,并且表示该单词组合作为整体是由用户所讲出的依赖上下文的可能性。这样的语言模型在本领域是已知的。遵循图5A的示例将显然的是,当一组语法规则是英语语言语法的合理近似时,将向(上文的)序列2(即“maybe the swallows flew”)指定比其余序列显著更高的概率(或者其他置信度数值)。
图5B示出了当用户继续讲话时他们所讲出的单词如何在它们被识别时被添加至临时集合52。在该示例中,用户要讲出的下一个单词是“south”,其作为紧接“flew”/“flue”之前所说出的话而被添加至集合。置信度数值也可以被指定给ASR的输出,即指定给个体候选单词,例如“flew”和“flue”可以单独基于相对应的讲话而被指定以个体置信度数值,其能够在确定哪个单词集合最可能被讲出时与指定给多个单词的集合的置信度数值相结合。也就是说,在生成合适的响应时可以使用个体置信度数值以及作为整体与集合有关的置信度数值两者。
语言模型34的额外的功能是检测临时集合54中的语法上完整的句子。也就是说,利用由ASR系统32对临时集合52的连续更新,语言模型根据其所应用的语法规则的集合来检测在单词的临时集合52中所识别出的单词序列中的至少一个何时已经变得足够完整以便形成语法上完整的句子。
响应于检测到语法上完整的句子,语言模型34对用户截止该时间点所讲出的单词的序列进行最终决策,并且输出该序列作为最终结果52F。例如,最终结果52F可以是临时集合52中所识别出的已经由语言模型34指定以最高概率的任一单词序列。
遵循图5B的示例,将单词“swallows”添加至集合52产生了至少一个语法上完整的句子,也就是“maybe the swallows flew south(可能燕子向南飞了)”。这被语言模型34检测到,并且语言模型34将根据语法规则的集合而具有最高概率的序列(即“maybe theswallows flew south”)输出为最终结果52F。在一些情况下,此时可以输出一个或多个最终结果(例如,具有高于阈值的概率的所有最终结果)的集合,以使得bot 36能够根据其所能访问的任何额外上下文来自行决定哪一个是最为可能的。
如果讲话者4在最终结果52F已经被输出之后继续说话,则新的部分结果52’将在存储器10中被生成并且在用户4继续讲话时以相同方式被更新,直到再次检测到语法上完整的句子为止——此时,是在部分结果52’的新的集合中。作为响应,根据相同的过程,第二最终结果52F’是基于新的部分结果而被输出的。
这在图6B的示例中被示出,其示出了用户如何经反复考虑而意识到燕子不可能已经从欧洲飞往南方,由于在一年中为时过早,他们将此表达为口语陈述“though it isstill June(但现在仍然是六月)”。
换句话说,话音识别服务30在两个粒度等级上循环操作。ASR系统32持续操作以在用户2讲出个体单词时将它们反复识别出来,即以每单词为基础生成并更新部分结果52。当这些单词被识别时,语言模型34持续操作而以每句子为基础反复地识别出用户所讲出的整个句子,即最终结果52F。如在下文中所描述的,这两种机制都被用来控制对话代理36,由此bot 36展现出每单词和每句子的行为两者。
响应生成器40表示代理36的智能的一个方面。响应生成器40在存储器10中生成在本文中被称为部分响应54的内容。这是基于来自ASR系统32的部分结果52生成的,并且当部分结果54以每单词为基础被更新时进行更新(但是可能不一定每次检测到新单词时都被更新)。部分响应54是临时的,这在于其不一定是准备好用于向用户输出的形式。仅在最终结果52F被语言模型34输出时(即,响应于检测到语法上完整的句子),部分响应54才被响应生成器40完成,由此生成最终响应54F。响应54F是“最终”的在于其是对如语言模型34所检测到的语法上完整的句子的完整响应,其大体上准备好用于输出给用户4,其信息内容是稳定的(尽管在一些情况下,可能仍然需要诸如文本至话音转换之类的某一格式化)。
这在图5B中被示出。如能够看到的,响应于为句子“maybe the swallows flewsouth”的最终结果52F,响应生成器40基于bot 36对句子52F的解译以及编码在其人工智能过程中的对北半球鸟类迁徙模式的理解两者而生成最终响应54F,其是句子“but it’sstill June”。
然而,要注意的是,该最终响应54F实际上可能根本不被输出给用户2,或者可能仅被部分输出给用户2——它是否被输出(或者其输出是否被中止)由话音检测器44所控制。最终响应54F被输出至响应传递模块42,其在话音检测器44的控制下选择性地将最终响应54F作为对外的通话音频传送给用户。这在下文中被详细描述。就目前而言,概言之,如果他们此时已经完成了讲话,则最终响应52由响应传递模块54输出给用户——该场景在图6A中被示出,其中响应传递模块42被示为在用户4不再讲话时开始将最终结果54F输出给用户4。
作为对比,如上文所提及的,图6B示出了可替代的场景,其中用户4很快自己意识到燕子在欧洲的迁徙习惯,这在他们的陈述“though it is still June”中被表达(其中暗示了他们先前的陈述“perhaps the swallows flew south”不太可能)。
在图6B的场景中,继续的语言输入19被ASR系统32解译为以单词54’的第二临时集合为形式的新的部分结果。尽管图6B中没有明确示出,但将意识到的是,单词以它们被说出的顺序被添加至新集合52’,以上文所描述的方式。单词“June”最后被添加至新集合52’,由此使得新集合52’也形成语法上完整的句子,这是由语言模型34检测到的,者使得其将句子“though it is still June”作为新的最终结果54F’输出给响应生成器54。
如考虑到上文显而易见的,响应生成模块40的操作是循环的,由语言模型34的循环操作所驱动并且与之处于相同的时间尺度之上,即以每句子为基础:每次语言模型34输出新的最终结果(即,新的完整句子)时,响应生成器40就生成新的最终响应。
然而,应当注意的是,通过以每单词为基础基于部分结果52(而不仅是最终结果52F’)来生成并更新部分响应54,响应生成器40能够在最终结果51F最终由语言模型34输出时与其在单独依赖最终结果52F的情况下所能够的相比更快地生成最终响应54F。
在生成部分响应54时,响应生成模块40能够将部分结果52的集合中的一个或多个所识别的单词传送至关键词查找服务38,以便取回与所述一个或多个单词相关联的信息。关键词查找服务38例如可以是独立的(例如,第三方)搜索引擎,例如微软(R)Bing(R)或Google,或者是通信系统1的基础结构的一部分。任何证明相关的所取回的信息都能够相应地从部分响应54并入到最终响应54F中。该预先查找能够在用户仍然在讲话时(即在话音活动的间隔期间(当话音检测器42仍然指示讲话状态——参见下文))被执行,并且随后被并入到最终响应54F中以便在话音活动间隔结束且下一个话音不活动开始(当话音检测器44转换至非讲话状态时)时进行输出。这允许bot对用户进行更多响应,因此提供了更为自然的对话流。
由响应传递模块42对用户4的最终响应的选择性输出是由话音检测器44驱动的。
注意到,话音检测器44使用话音识别服务30的输出来检测话音(不)活动,即在当前讲话和当前非讲话状态之间切换时。正是话音检测器44的这些状态改变对响应传递模块42进行驱动。特别地,其根据以下规则使用部分和最终结果52、52F两者来检测语音输入19中用户4被确定为正在讲话的话音活动的间隔(话音间隔)以及用户4被确定为没有在讲话的话音不活动的间隔(非话音间隔)。
在话音不活动的间隔之后,话音活动的间隔响应于检测到ASR系统32开始输出部分结果52而开始;也就是说,当并且响应于ASR系统32在话音不活动的间隔期间识别出语音输入19中的至少一个个体单词,所检测的话音不活动的间隔结束并且所检测的话音活动的间隔开始。
在话音活动的间隔之后,话音不活动的间隔在以下情况下开始:
响应于最终结果52F被语言模型34输出,由检测到指示话音不活动的条件(例如语言模型67检测到语法上完整的句子)所触发,
仅在自所检测到的触发对最终结果52F的输出的话音不活动条件起已经过去了一时间间隔(例如,1至3秒)之后,以及
仅在在该时间间隔中没有检测到新的部分的情况下,即仅在ASR系统32在该时间间隔中没有在语音输入19中识别出任何更多单词的情况下。
注意到,与常规的语音活动检测器相比,该话音检测是基于话音识别服务30的输出的,并且因此将语音输入19的语义内容考虑在内。这与仅考虑了语音输入19中的声音水平(即,信号能量)的已知语音活动检测器形成对比。特别地,将会注意到,根据以上过程,直到语言模型34已经检测到语法上完整的句子之后,话音不活动间隔才会开始。在某些实施例中,即使在句子中间的所讲出个体单词之间存在长的暂停,话音不活动间隔也不会开始(作为对比,常规的VAD将这些长暂停解译为话音不活动),即话音检测器44将无期限地等待语法上完整的句子。
然而,在其他实施例中,提供了一种故障安全机制,由此话音不活动条件如下:
语言模型34已经检测到语法上完整的句子;或者
在预先确定的时段内ASR系统32没有识别出新的单词,即使单词的集合根据语言模型34尚未形成语法上完整的句子。
任一种事件的发生都将触发最终响应54F。
此外,在可替代实施例中,可以使用更加简单的规则集合,由此,话音不活动条件在ASR系统32在预先确定的时段内没有输出新单词时被触发(而根本不考虑集合的语法上完整性)。
在任何事件中,应当注意的是,话音不活动的间隔无论如何都不随着检测到话音不活动的条件而开始。相反地,话音不活动的间隔仅在从检测到该条件起已经过了以上所提的时间间隔(其可以是检测到语法上完整的句子,或者是预先确定的时段到期)时开始,或者仅在ASR系统32在该间隔期间没有识别出额外的单词的情况下开始。作为结果,bot不在检测到话音不活动条件时开始讲话,而是仅在从该检测起已经过了随后的间隔时(参见下文)以及仅在ASR系统32在该间隔中没有识别出额外的单词的情况下开始讲话(参见下文)。
响应传递模块42在话音检测器44的控制下选择性地将最终响应54F以可听见的形式输出给用户2,以便给出bot以两个真实用户之间对话的方式响应于用户2的语音输入而在通话中向用户2讲出响应54F的印象。例如,最终响应54F可以以文本形式被生成,并且使用文本至话音转换算法而被转换为音频数据。最终响应54F在响应时段上以可听见的形式被输出给用户2。这通过音频编码器50将最终响应54F编码为实时通话音频来实现的,所述实施通话音频作为对外的音频流经由网络2被传输至用户设备2,以用于在那里实时地播出(以与常规通话视频相同的方式)。
最终响应54F向用户2的输出仅在由话音检测器44根据以上协议所检测到的用户2的所检测到的话音不活动间隔期间进行。因此,最终响应54F的输出仅在由话音检测器44所检测到的话音不活动间隔的开始时才开始。如果话音检测器在最终响应的输出完成之前的响应时段期间检测到话音不活动间隔的开始,则该响应的输出被停止——因此用户2能够简单地通过讲话来“打断”bot 36(引起新的部分结果由ASR系统32输出),并且bot36将相应地自行沉默。
如果用户在最终结果52F已经被语言模型34输出之后继续讲话(即,足够快而避免了话音检测器44切换至非话音间隔),则基于该最终结果52F所生成的最终响应54F不被输出给用户2。然而,该最终结果52F和/或该最终响应54F和/或与其一者有关的信息被留存在存储器10中,以提供针对bot 36的未来响应的上下文。
换句话说,无论何时检测到指示话音不活动的任何条件,该系统都生成最终响应,所述最终响应的内容使其能够在用户目前确实完成了讲话的情况下被输出给所述用户;然而,该最终响应仅在用户在所检测的条件之后的一间隔内没有再讲出更多单词的情况下才被实际传达给所述用户。换句话说,在仍然不确定用户目前是否已经实际上完成了讲话(并且将因此预期bot现在进行响应)时,最终响应被先发性地生成。这确保了bot能够以执行某一数量的冗余处理为代价而保持对用户的响应性。
图6B的场景是这样的一个示例。作为用户4继续讲话的结果,bot的原始最终响应54F(“but it’s still June”)在该场景中不被输出。新的最终响应54F’是响应于并且基于新的最终结果52F’(“though it is still June”)而被生成的,并且还是基于先前的最终结果52F(“maybe the swallows flew south”)而被生成的。通过对两个句子52F、52F’进行解译,bot 36能够辨识出用户2隐含地意识到由于一年中的时间所以燕子不太可能已经飞往南方(这将无法单独地由任一句子52F、52F’所证明),并且相应地生成新的最终响应54F’,其是句子“I agree,it’s unlikely they have yet(我同意,这不太可能)”。
在适当情况下,bot 36还能够在以下意义上“打断”用户4。
响应生成模块40具有受限的处理能力,这表现为在用户继续在长间隔内讲话的情况下,响应生成模块40无法保持无期限地生成新的响应同时仍然使用用户的先前句子的所有上下文。例如,bot 36的操作可以由所谓的“AI树”来控制,其实质上是一种决策树。响应于检测到部分/最终结果52/52F满足某一预先确定的标准,bot 36遵循AI树的相关联的分支由此沿着它前进。当到达AI树的末端时,bot 36无法继续前进,因此无法将用户的语音输入19中的任何额外信息考虑在内。因此,用户继续讲话就几乎没有意义,因为这对于bot 36的随后的行为将没有影响,其可能给用户4在一定程度上被bot 36忽略的印象。如果用户4继续讲话,则由于用户用现在无法被解译的信息使bot过载,这构成了过载条件。
在该情况下,在每个所检测到的话音活动的间隔期间,过载检测器46对自从最近一次最终响应被实际上输出给用户起已经被ASR系统32识别出的单词的数量和/或已经由语言模型34所输出的最终结果的次数(即,已经被语言模型34检测到的语法上完整的句子的数量)进行计数。如果单词和/或句子的数量在该话音间隔期间达到(相应)阈值,则过载检测器向用户输出关于过载条件的通知,以请求他们停止讲话并且允许bot 36进行响应。可替代地,过载检测器46可以跟踪AI树的状态以及通过检测何时已经到达AI树的末端而检测到的过载条件。
另一种类型的过载条件是由于用户讲话过快而导致的。例如,ASR系统就其在单词被过快讲出的情况下无法对它们进行正确地解析的意义而言可能具有受限的处理能力。过载检测器46测量个体单词在每个所检测到的话音活动的间隔期间被用户识别的速率,并且响应于该速率达到阈值(例如,对应于ASR系统能够正确地操作的最大速率,或者稍低于该最大速率),过载检测器向用户2输出关于过载条件的通知,以要求他们较缓慢地讲话。
与响应相比,所述通知是在用户的话音活动的间隔期间被输出的,即在用户仍然在讲话时被输出以便打断用户。它们以可听见的请求(例如,合成话音)的形式被输出,作为通话音频在对外的音频流56中被发送。也就是说,所述通知实际上是针对用户2的请求,它们由bot 36以讲出其响应的相同方式被讲出。
化身生成器生成“化身”的运动图像,即由要被快速连续播出的帧序列所形成的视频。这是表示bot 36的图形动画,其例如可以具有类似于人类或动物的形式(但其可以采用多种其他形式)。该化身在运动图像中执行各种视觉动作(例如,手臂或手部移动、面部表情、或者其他身体语言),以作为向用户2传送辅助信息的手段。这些视觉动作是至少部分由响应传递模块48和过载检测器46控制的,以便将它们与bot“话音”进行关联。例如,bot可以执行视觉动作以伴随话音、以指示bot将要开始讲话、以在用户的每个话音活动间隔期间传达收听状态、或者伴随bot 36所讲出的用于中断用户2的请求。化身的运动图像以常规通话视频的方式被编码为对外的视频流57,其经由网络2被实时地传输至用户设备6。
为了进一步说明软件代理36的操作,现在将描述多种示例性场景。
示例1:
用户2开始讲话,以使得ASR系统开始输出部分结果52。代理36检测到部分结果52并且因此得知用户正在讲话。该代理使用部分结果52触发用于计算(即,构建)响应54的关键词搜索。代理36看到来自话音识别服务30的最终结果(即,完整句子)并且进行有关响应的最终决策。没有接收到更多部分,并且代理能够生成准备要讲话的视觉提示,例如化身抬起手指,或者类似人类的一些其他先发性手势。该代理接着讲出经完成的响应54F。
如所讨论的,图5A、5B和6A共同示出了这样的示例。
示例2:
用户2开始讲话。代理36检测到所产生的部分结果52并且因此得出用户2在讲话。代理36使用部分结果52触发用于计算/构建响应54的关键词搜索。代理36看到来自话音识别服务30的最终结果52F(第一个完整句子),并且进行有关响应的最终决策,如在示例1以及图5A和5B中。
然而,这一次,再次接收到向代理指示用户仍然在讲话的额外的部分。因此,代理36不开始响应,而是替代地等待新的(第二个)句子结束。第一个句子的上下文被保留,并且在第二个句子完成(由来自语言模型34的新的最终结果表示)时与第二个句子组合以构建响应。图6B的可替代的场景是这样的示例。
示例3:
用户2开始讲话。代理36看到所产生的部分响应54并且因此得知用户2正在讲话。代理使用部分响应54触发用于计算/构建响应54的关键词搜索。该代理看到最终结果52F并且进行有关响应的最终决策。没有接收到更多部分,并且代理能够生成准备要讲话的视觉提示,例如抬起手指,或者类似人类的一些其他先发性手势。代理36开始讲话。在代理的讲话开始之后,检测到更多部分,这指示用户在通过代理讲话。因此,代理36采取动作来停止讲话并且等待来自话音识别服务30的下一个最终结果。
示例4:
代理36使用指示对话的流的部分结果52就如何与代理36进行最高效的对话来对用户2进行引导。例如,代理可以请求用户“请说慢一点并且让我有机会进行响应”。代理36还可以基于话音识别结果52/52F来使用(由化身所执行的)视觉提示以引导对话。
如所提及的,远程系统8的功能可以跨多个设备分布。例如,在一个实现中,话音识别服务30和bot 36可以被实现为云平台上的分别的云服务,它们经由经定义的一组协议来通信。这允许服务被独立地管理(例如,更新和缩放)。关键词查找服务例如可以是第三方服务或者是由代理36所采用的其他独立服务。
此外,尽管bot 36在上文中是远程地实现的,但可替代地,bot可以在用户设备6的处理器22上被本地地实现。例如,用户设备2可以是游戏控制台或类似设备,而bot 36被实现为该游戏控制台向用户2传递的游戏体验的部分。
应当注意,当在本文中被使用时,在权利要求中所包括的术语“集合”不一定表示严格数学意义上的集合,即在一些情况下,相同的单词可以在单词的集合中出现超过一次。
该主题的第一方面针对于一种计算机系统,包括:输入端,其被配置为从用户接收语音输入;ASR系统,其用于识别该语音输入中的个体单词,其中,该ASR系统被配置为在该语音输入中的至少一个话音活动的间隔期间、在存储器中生成它已经在该语音输入中识别出的一个或多个单词的集合,并且在它每次在该语音输入中识别出新单词时更新该存储器中的集合以将该新单词添加至该集合;话音检测模块,其被配置为检测指示该语音输入中话音不活动的条件;以及响应模块,其被配置为响应于检测到话音不活动的条件而基于所识别单词的集合生成用于输出给用户的响应;其中,该话音检测模块被配置为确定该ASR系统在以检测到该话音无活动条件而开始的时间间隔期间是否已经识别出该语音输入中的任何更多单词;并且其中,该响应模块被配置为在所述时间间隔已经结束之后并且仅在该ASR系统在该时间间隔期间没有识别出该语音输入中的任何更多单词的情况下将所生成的响应输出给用户,由此当该ASR系统在该时间间隔中识别出语音输入中的一个或多个单词的情况下,所生成的响应不被输出给用户。
在实施例中,该话音检测模块可以被配置为当存储器中的所识别的单词的集合被ASR系统更新时对它进行监视,并且基于对所识别的单词集合的所述监视来检测所述话音不活动条件。
例如,该计算机系统还可以包括语言模型,其中,检测该话音不活动条件可以包括由该话音检测模块检测根据该语言模型,所识别的单词的集合何时形成语法上完整的句子。
可替代地或另外地,检测该话音不活动条件可以包括由该话音检测模块检测该ASR系统在预先确定的时段内没有识别出新的单词,其中,该时间间隔以该预先确定的时段的到期而开始。
该响应可以是用于以可听见的形式向用户播出的音频响应。
该计算机系统可以包括视频生成模块,其被配置为响应于该响应模块确定该ASR系统在该时间间隔内没有识别出任何更多单词而向用户输出该响应的输出即将开始的视觉指示。
该视频生成模块可以被配置为生成并且向用户输出化身的运动图像,其中,该视觉指示可以是由该化身所执行的视觉动作。
该集合中的每个单词可以作为一个或多个字符的串而被存储在存储器中。
该计算机系统还可以包括查找模块,其被配置为在该ASR系统对该集合的更新仍在进行时在第一时间从该存储器中的集合接收至少一个单词,并且执行查找以预先取回与该至少一个单词相关联的信息。该响应生成模块可以被配置为在稍后的时间访问该存储器中的集合,该集合在该第一时间与稍后的时间之间至少被所述ASR系统更新了一次,该响应由该响应模块当在稍后的时间被访问时基于该集合生成,其中,该响应可以并入由该查找模块预先取回的信息。
该计算机系统还可以包括:响应传递模块,其被配置为在该时间间隔已经结束时开始向用户输出音频响应,其中,该音频响应的输出在它完成之前可以响应于该话音检测模块检测到语音输入中的后续话音间隔的开始而终止。
该话音检测模块可以被配置为通过检测该ASR系统对语音输入中的另一单词的识别来检测后续话音间隔的开始,该话音间隔以对该另一单词的检测作为开始。
该计算机系统还可以包括:话音过载检测模块,其被配置为在该语音输入的话音间隔期间的时间检测话音过载条件;以及通知模块,其被配置为响应于所述检测而向用户输出关于该话音过载条件的通知。
该话音过载条件可以基于以下项而被检测:
该ASR系统在该话音间隔中目前已经识别的单词的数量,和/或
该ASR系统在该话音间隔中识别的单词的速度;和/或
由该语音输入所驱动的AI树的状态。
该主题的另一个方面针对于一种在用户与在计算机上执行的人工智能软件代理之间实行通信的计算机实现的方法,该方法包括:在ASR系统处从所述用户接收语音输入;由该ASR系统标识该语音输入中的个体单词,其中,该ASR系统在存储器中生成它已经在该语音输入中识别出的一个或多个单词的集合,并且在它每次在该语音输入中识别出新单词时更新该存储器中的集合以将该新单词添加至该集合;由该软件代理检测指示该语音输入中话音不活动的条件;由该软件代理响应于所检测到的话音不活动条件而基于所识别的单词的集合生成用于输出给用户的响应;确定该ASR系统在以检测到该话音不活动条件而开始的时间间隔期间是否已经识别出该语音输入中的任何更多单词;并且由该软件代理在所述时间间隔已经结束之后并且仅在该ASR系统在该时间间隔期间没有识别出该语音输入中的任何更多单词的情况下将所生成的响应输出给用户,由此当该ASR系统在该时间间隔中识别出语音输入中的一个或多个单词的情况下,所生成的响应不被输出给用户。
该语音输入可以经由通信网络从用户设备接收,其中,该输出步骤是通过以下操作执行的:该软件代理经由网络向该用户设备发送该响应以便使得该用户设备向该用户输出该响应。
该语音输入从该用户被实时地接收并且该响应被实时地输出给该用户,由此经由网络在该用户与软件代理之间实行实时通信事件。
该方法可以在通信系统中被实现,其中,该通信系统包括为该通信系统的多个用户中的每一个存储用户标识符的用户账户数据库,该用户标识符唯一地标识通信系统内的用户。该软件代理的用户标识符也被存储在该用户账户数据库中,以使得该软件代理表现为该通信系统的另一个用户。
该方法还可以包括当存储器中的所识别的单词的集合被ASR系统更新时对它进行监视,其中,可以基于对所识别的单词集合的所述监视来检测话音不活动条件。
该响应可以是用于以可听见的形式向用户播出的音频响应。
该方法还可以包括响应于该ASR系统在该时间间隔内没有识别出任何更多单词的所述确定而向用户输出该响应的输出即将开始的视觉指示。
该视觉指示可以是化身在运动图像中所执行的视觉动作。
另一个方面针对于一种包括存储在计算机可读存储介质上的人工智能软件代理的计算机程序产品,该软件代理用于基于ASR系统的输出与用户进行通信,该ASR系统用于从用户接收语音输入并且识别该语音输入中的个体单词,该软件代理被配置为在被执行时执行以下操作:检测指示该语音输入中话音不活动的条件;响应于所检测到的话音不活动条件而基于所识别的单词的集合生成用于输出给用户的响应;确定该ASR系统在以检测到该话音不活动条件而开始的时间间隔期间是否已经识别出该语音输入中的任何更多单词;并且在所述时间间隔已经结束之后并且仅在该ASR系统在该时间间隔期间没有识别出该语音输入中的任何更多单词的情况下将所生成的响应输出给用户,其中当在该时间间隔中识别出语音输入中的一个或多个单词的情况下,所生成的响应不被输出给用户。
在实施例中,该响应可以通过以下操作被输出给该用户:经由网络将其发送至用户可用的用户设备以便使得该用户设备能够向该用户输出该响应。
该响应模块可以被配置为从使得该集合形成语法上完整的句子的更新起等待一时间间隔,并且接着确定该ASR系统在该时间间隔期间是否已经在该语音输入中识别出任何更多单词,其中该响应由该响应模块向用户进行的所述输出可以仅在该ASR系统在该时间间隔期间没有在该语音输入中识别出任何更多单词的情况下被执行。
该主题的第四方面针对于一种计算机系统,包括:输入端,其被配置为从用户接收语音输入,该语音输入具有被非话音间隔分开的话音间隔;ASR系统,其被配置为在该语音输入的话音间隔期间识别其中的个体单词,并且将所识别的单词存储在存储器中;响应生成模块,其被配置为基于该存储器中所存储的单词生成用于输出给用户的音频响应;以及响应传递模块,其被配置为在该话音输入的非话音间隔期间向用户输出该音频响应,其中,该音频响应的输出在它完成之前可以响应于该话音检测模块检测到语音输入中的后续话音间隔的开始而终止。
提供一种用户能够通过其“中断”系统的机制提供了更加自然且吸引人的对话流。特别地,如果该系统错误解译了语音输入以使得响应不是用户所预期的,则用户能够简单地通过讲话来中断该系统。例如,用户还可以详细描述他们先前的语音输入,并且系统可以使用该语音输入中较为新近的部分的上下文并且与较早部分(被错误解释)一起来生成并输出更为合适的响应。
该主题的第五方面针对于一种计算机系统,包括:输入端,其被配置为从用户接收语音输入,该语音输入具有被非话音间隔分开的话音间隔;ASR系统,其被配置为在该语音输入的话音间隔期间识别其中的个体单词,并且将所识别的单词存储在存储器中;话音过载检测模块,被配置为在该语音输入的话音间隔期间的时间检测话音过载条件;以及通知模块,其被配置为响应于该检测而向用户输出关于该话音过载条件的通知。该话音过载条件可以基于以下项而被检测:
该ASR系统在该话音间隔中目前已经识别的单词的数量,和/或
该ASR系统在该话音间隔中识别的单词的速度;和/或
由该语音输入所驱动的AI树的状态。
这提供了一种更为高效的系统,因为用户在他的语音输入变得无法被系统解译时得到通知(与即使系统无法解译他们随后的讲话也允许用户继续讲话形成对比)。
该主题的第六方面针对于一种计算机系统,包括:输入端,其被配置为从用户接收语音输入;ASR系统,其用于识别该语音输入中的个体单词,其中,该ASR系统被配置为在存储器中生成它已经在该语音输入中识别出的单词的集合,并且被配置为它每次在该语音输入中识别出新单词时更新该集合以将该新单词添加至该集合;语言模型,其被配置为检测该ASR系统对该存储器中的所识别的单词的集合的更新何时使得该集合形成语法上完整的句子;以及响应模块,被配置为基于所识别的单词的集合生成用于输出给用户的响应,并且响应于该语言模型对语法上完整的句子的所述检测而将该响应输出给用户。
通常而言,在本文中所描述的任何功能都可以使用软件、固件、硬件(例如,固定逻辑电路)或者这些实施方式的组合来实施。如本文(例如在图4的功能模块)中所使用的术语“模块”、“功能”、“组件”和“逻辑”一般表示软件、固件、硬件、或其组合。在软件实现的情况下,所述模块、功能、逻辑或应用表示当在处理器(例如,一个或多个CPU)上执行时执行指定任务的程序代码。程序代码可以存储在一个或多个计算机可读存储器设备中。以下所描述的技术的特征是与平台无关的,这意味着该技术可以在具有多种处理配置的多种商业计算平台上实现。
例如,远程系统8或用户设备6还可以包括使得该用户终端的硬件执行操作的实体(例如,软件),例如处理器功能模块等。例如,所述设备或系统可以包括计算机可读介质,其可以被配置为保存使得该设备——更具体地是该设备的操作系统和相关联硬件——执行操作的指令。因此,该指令用来配置操作系统和相关联硬件执行操作并且以这种方式引起操作系统和相关联硬件转换从而执行功能。该指令可以由计算机可读介质通过各种不同配置提供至显示设备。
计算机可读介质的一种这样的配置是信号承载介质,并且因此其被配置为例如经由网络将指令(例如,作为载波)发送至计算设备。计算机可读介质还可以被配置为计算机可读存储介质,并且因此不是信号承载介质。
计算机可读存储介质的示例包括随机访问存储器(RAM)、只读存储器(ROM)、光盘、闪速存储器、硬盘存储器,以及可以使用磁性、光学和其他技术来存储指令和其他数据的其他存储器设备。
尽管已经用特定于结构特征和/或方法动作的语言对主题进行了描述,但是所要理解的是,所附权利要求中所限定的主题不一定限于以上所描述的具体特征或动作。相反,以上所描述的具体特征和动作是作为实现权利要求的示例形式而公开的。
Claims (15)
1.一种在用户与人工智能软件代理之间实行通信的计算机系统,包括:
输入端,其被配置为从用户接收语音输入;
ASR系统,其用于识别所述语音输入中的个体单词,其中,所述ASR系统被配置为在所述语音输入中的至少一个话音活动的间隔期间、在存储器中生成其已经在所述语音输入中识别出的一个或多个单词的集合,并且被配置为其每次在所述语音输入中识别出新单词时更新所述存储器中的所述集合以将所述新单词添加至所述集合;
查找模块,其被配置为在所述语音输入中的所述话音活动的间隔期间、在所述话音活动间隔仍在进行时的第一时间从所述存储器中的所述集合中取回至少一个单词,并且被配置为在所述话音活动间隔仍在进行时执行查找以预先取回与所述至少一个单词相关联的信息,所预先取回的信息包括与所述集合中的所述至少一个单词上下文相关且不同的一个或多个相关单词;以及
响应生成模块,其被配置为检测所述话音活动间隔在稍后时间的结束,所述集合在所述第一时间与所述稍后时间之间至少被所述ASR系统更新了一次,并且被配置为生成用于输出给所述用户的响应,其中,所述响应传达由所述查找模块预先取回的信息。
2.根据权利要求1所述的计算机系统,其中,所述响应是基于由所述ASR系统向所述个体单词中的至少一个个体单词分配的置信度数值和/或由所述计算机系统的语言模型向单词的所述集合分配的置信度数值而生成的。
3.根据权利要求1所述的计算机系统,其中,所述信息是从互联网搜索引擎预先取回的。
4.根据权利要求1所述的计算机系统,其中,所述用户是通信系统的用户,而所预先取回的信息是关于所述通信系统中的另一用户的信息。
5.根据权利要求4所述的计算机系统,其中,所预先取回的信息包括针对所述另一用户的联系人细节。
6.根据权利要求1所述的计算机系统,包括话音检测模块,其被配置为当所述存储器中的所识别的单词的所述集合被所述ASR系统更新时对所述集合进行监视,其中,所述响应生成模块被配置为基于对所识别的单词的所述集合的所述监视来检测所述话音活动间隔的所述结束。
7.根据权利要求6所述的计算机系统,还包括语言模型,其中,检测所述话音活动间隔的所述结束包括由所述话音检测模块检测根据所述语言模型,所识别的单词的所述集合何时形成语法上完整的句子。
8.根据权利要求6所述的计算机系统,其中,检测所述话音活动间隔的所述结束包括由所述话音检测模块检测在预先确定的时段内没有新单词被所述ASR系统识别。
9.根据权利要求1所述的计算机系统,其中,所述响应是用于以可听见的形式向所述用户播出的音频响应。
10.根据权利要求1所述的计算机系统,包括视频生成模块,其被配置为生成并向所述用户输出化身的运动图像,所述化身的运动图像通过执行视觉动作来传达对所述响应的输出何时将开始。
11.一种在用户与在计算机上执行的人工智能软件代理之间实行通信的计算机实现的方法,所述方法包括:
在ASR系统处从所述用户接收语音输入;
由所述ASR系统识别所述语音输入中的个体单词;
在所述语音输入中的至少一个话音活动的间隔期间、在存储器中生成识别出的一个或多个单词的集合;
基于在所述语音输入中识别出新单词,更新所述存储器中的所述集合以将所述新单词添加至所述集合;
在所述语音输入中的所述话音活动的间隔期间、在所述话音活动间隔仍在进行时的第一时间从所述存储器中的所述集合中取回至少一个单词;
在所述话音活动间隔仍在进行时执行查找以预先取回与所述至少一个单词相关联的信息,所预先取回的信息包括与所述集合中的所述至少一个单词上下文相关且不同的一个或多个相关单词;
检测所述话音活动间隔在稍后时间的结束,所述集合在所述第一时间与所述稍后时间之间至少被所述ASR系统更新了一次;并且
由所述软件代理生成用于输出给所述用户的响应,其中,所述响应传达所预先取回的信息。
12.根据权利要求11所述的方法,其中,所述语音输入是经由通信网络从用户设备接收的,其中,所述输出步骤是通过以下操作执行的:所述软件代理经由所述网络向所述用户设备发送所述响应以便使得所述用户设备向所述用户输出所述响应。
13.根据权利要求12所述的方法,其中,所述语音输入从所述用户被实时地接收并且所述响应被实时地输出给所述用户,由此经由所述网络在所述用户与所述软件代理之间实行实时通信事件。
14.根据权利要求12所述的方法,包括当所述存储器中的所识别的单词的所述集合被所述ASR系统更新时对所述集合进行监视,所述话音活动间隔的所述结束是基于对所识别的单词的所述集合的所述监视而被检测的。
15.一种存储人工智能软件代理的计算机可读存储介质,所述软件代理被配置为当被执行时实现包括以下项的操作:
从用户接收语音输入;
在所述语音输入中的至少一个话音活动的间隔期间识别所述语音输入中的个体单词,以生成包括所述个体单词的集合;
在所述语音输入中的所述话音活动的间隔期间在所述话音活动间隔仍在进行时的第一时间从所述集合中取回至少一个单词;
在所述话音活动间隔仍在进行时执行查找以预先取回与所述至少一个单词相关联的信息,所预先取回的信息包括与所述集合中的所述至少一个单词上下文相关且不同的一个或多个相关单词;
检测所述话音活动间隔在稍后时间的结束,所述集合在所述第一时间与所述稍后时间之间至少被更新了一次;以及
由所述软件代理生成用于输出给所述用户的响应,其中,所述响应传达所预先取回的信息。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/057,682 | 2016-03-01 | ||
US15/057,682 US10192550B2 (en) | 2016-03-01 | 2016-03-01 | Conversational software agent |
US15/229,854 | 2016-08-05 | ||
US15/229,854 US10140986B2 (en) | 2016-03-01 | 2016-08-05 | Speech recognition |
PCT/US2017/019255 WO2017151413A1 (en) | 2016-03-01 | 2017-02-24 | Speech recognition |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108701458A CN108701458A (zh) | 2018-10-23 |
CN108701458B true CN108701458B (zh) | 2023-01-31 |
Family
ID=58261763
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780014607.7A Active CN108701458B (zh) | 2016-03-01 | 2017-02-24 | 话音识别 |
Country Status (4)
Country | Link |
---|---|
US (2) | US10140986B2 (zh) |
EP (1) | EP3400597A1 (zh) |
CN (1) | CN108701458B (zh) |
WO (1) | WO2017151413A1 (zh) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9634855B2 (en) | 2010-05-13 | 2017-04-25 | Alexander Poltorak | Electronic personal interactive device that determines topics of interest using a conversational agent |
US9460713B1 (en) | 2015-03-30 | 2016-10-04 | Google Inc. | Language model biasing modulation |
US10140988B2 (en) | 2016-03-01 | 2018-11-27 | Microsoft Technology Licensing, Llc | Speech recognition |
US10192550B2 (en) | 2016-03-01 | 2019-01-29 | Microsoft Technology Licensing, Llc | Conversational software agent |
KR102412523B1 (ko) * | 2017-07-18 | 2022-06-24 | 삼성전자주식회사 | 음성 인식 서비스 운용 방법, 이를 지원하는 전자 장치 및 서버 |
CN107919130B (zh) * | 2017-11-06 | 2021-12-17 | 百度在线网络技术(北京)有限公司 | 基于云端的语音处理方法和装置 |
JP7192208B2 (ja) * | 2017-12-01 | 2022-12-20 | ヤマハ株式会社 | 機器制御システム、デバイス、プログラム、及び機器制御方法 |
JP7173049B2 (ja) * | 2018-01-10 | 2022-11-16 | ソニーグループ株式会社 | 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム |
CN108986808A (zh) * | 2018-08-20 | 2018-12-11 | 威创集团股份有限公司 | 拼接墙语音控制方法、系统、可读存储介质和设备 |
CN110875060A (zh) | 2018-08-31 | 2020-03-10 | 阿里巴巴集团控股有限公司 | 语音信号处理方法、装置、系统、设备和存储介质 |
US11508378B2 (en) | 2018-10-23 | 2022-11-22 | Samsung Electronics Co., Ltd. | Electronic device and method for controlling the same |
KR20200052804A (ko) | 2018-10-23 | 2020-05-15 | 삼성전자주식회사 | 전자 장치 및 전자 장치의 제어 방법 |
CN111566727B (zh) * | 2018-10-25 | 2023-09-01 | 微软技术许可有限责任公司 | 全双工语音对话中的多阶段响应 |
CN110070870B (zh) * | 2019-05-06 | 2022-02-08 | 阿波罗智联(北京)科技有限公司 | 车载系统的信号处理方法和系统 |
US11996098B2 (en) | 2019-06-05 | 2024-05-28 | Hewlett-Packard Development Company, L.P. | Missed utterance resolutions |
WO2021057499A1 (zh) * | 2019-09-27 | 2021-04-01 | 华为技术有限公司 | 一种识别具有相同语义的问题的方法及电子设备 |
CN111028830B (zh) * | 2019-12-26 | 2022-07-15 | 大众问问(北京)信息科技有限公司 | 一种本地热词库更新方法、装置及设备 |
KR20220010259A (ko) | 2020-07-17 | 2022-01-25 | 삼성전자주식회사 | 음성 신호 처리 방법 및 장치 |
US11770268B2 (en) * | 2022-02-14 | 2023-09-26 | Intel Corporation | Enhanced notifications for online collaboration applications |
CN114999493A (zh) * | 2022-05-07 | 2022-09-02 | 国网河北省电力有限公司建设公司 | 一种智能语音质检方法及电子设备 |
CN118173103B (zh) * | 2024-05-15 | 2024-07-05 | 百鸟数据科技(北京)有限责任公司 | 基于边缘计算的野外鸟类自动监测方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2409087A (en) * | 2003-12-12 | 2005-06-15 | Ibm | Computer generated prompting |
CN101682673A (zh) * | 2007-05-03 | 2010-03-24 | 微软公司 | 自动话务员语法调整 |
US20130060570A1 (en) * | 2011-09-01 | 2013-03-07 | At&T Intellectual Property I, L.P. | System and method for advanced turn-taking for interactive spoken dialog systems |
CN105070290A (zh) * | 2015-07-08 | 2015-11-18 | 苏州思必驰信息科技有限公司 | 人机语音交互方法及系统 |
Family Cites Families (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4870686A (en) | 1987-10-19 | 1989-09-26 | Motorola, Inc. | Method for entering digit sequences by voice command |
JP3284832B2 (ja) | 1995-06-22 | 2002-05-20 | セイコーエプソン株式会社 | 音声認識対話処理方法および音声認識対話装置 |
US6009382A (en) * | 1996-08-19 | 1999-12-28 | International Business Machines Corporation | Word storage table for natural language determination |
US6002998A (en) * | 1996-09-30 | 1999-12-14 | International Business Machines Corporation | Fast, efficient hardware mechanism for natural language determination |
US6377965B1 (en) * | 1997-11-07 | 2002-04-23 | Microsoft Corporation | Automatic word completion system for partially entered data |
US6219643B1 (en) | 1998-06-26 | 2001-04-17 | Nuance Communications, Inc. | Method of analyzing dialogs in a natural language speech recognition system |
JP4023033B2 (ja) | 1999-06-17 | 2007-12-19 | コニカミノルタビジネステクノロジーズ株式会社 | 自動翻訳装置 |
US7401023B1 (en) | 2000-09-06 | 2008-07-15 | Verizon Corporate Services Group Inc. | Systems and methods for providing automated directory assistance using transcripts |
EP1262954A1 (en) | 2001-05-30 | 2002-12-04 | Telefonaktiebolaget L M Ericsson (Publ) | Method and apparatus for verbal entry of digits or commands |
US7324947B2 (en) | 2001-10-03 | 2008-01-29 | Promptu Systems Corporation | Global speech user interface |
US6700393B2 (en) | 2001-10-17 | 2004-03-02 | Delphi Technologies, Inc. | Capacitive sensor assembly for use in a non-contact obstacle detection system |
US7610556B2 (en) | 2001-12-28 | 2009-10-27 | Microsoft Corporation | Dialog manager for interactive dialog with computer user |
US8126713B2 (en) | 2002-04-11 | 2012-02-28 | Shengyang Huang | Conversation control system and conversation control method |
KR100580619B1 (ko) * | 2002-12-11 | 2006-05-16 | 삼성전자주식회사 | 사용자와 에이전트 간의 대화 관리방법 및 장치 |
US7606714B2 (en) | 2003-02-11 | 2009-10-20 | Microsoft Corporation | Natural language classification within an automated response system |
JP4849662B2 (ja) | 2005-10-21 | 2012-01-11 | 株式会社ユニバーサルエンターテインメント | 会話制御装置 |
US7881832B2 (en) | 2006-06-09 | 2011-02-01 | Garmin International, Inc. | Automatic speech recognition system and method for aircraft |
US7890333B2 (en) | 2007-06-20 | 2011-02-15 | International Business Machines Corporation | Using a WIKI editor to create speech-enabled applications |
US20110276329A1 (en) | 2009-01-20 | 2011-11-10 | Masaaki Ayabe | Speech dialogue apparatus, dialogue control method, and dialogue control program |
KR101960835B1 (ko) | 2009-11-24 | 2019-03-21 | 삼성전자주식회사 | 대화 로봇을 이용한 일정 관리 시스템 및 그 방법 |
US8386929B2 (en) | 2010-06-22 | 2013-02-26 | Microsoft Corporation | Personal assistant for task utilization |
US8359020B2 (en) * | 2010-08-06 | 2013-01-22 | Google Inc. | Automatically monitoring for voice input based on context |
US8700392B1 (en) | 2010-09-10 | 2014-04-15 | Amazon Technologies, Inc. | Speech-inclusive device interfaces |
US8762150B2 (en) | 2010-09-16 | 2014-06-24 | Nuance Communications, Inc. | Using codec parameters for endpoint detection in speech recognition |
US9009041B2 (en) * | 2011-07-26 | 2015-04-14 | Nuance Communications, Inc. | Systems and methods for improving the accuracy of a transcription using auxiliary data such as personal data |
US8571859B1 (en) * | 2012-05-31 | 2013-10-29 | Google Inc. | Multi-stage speaker adaptation |
US20150088523A1 (en) | 2012-09-10 | 2015-03-26 | Google Inc. | Systems and Methods for Designing Voice Applications |
US9112984B2 (en) | 2013-03-12 | 2015-08-18 | Nuance Communications, Inc. | Methods and apparatus for detecting a voice command |
US9361885B2 (en) * | 2013-03-12 | 2016-06-07 | Nuance Communications, Inc. | Methods and apparatus for detecting a voice command |
US20150314454A1 (en) * | 2013-03-15 | 2015-11-05 | JIBO, Inc. | Apparatus and methods for providing a persistent companion device |
US9110635B2 (en) * | 2013-12-03 | 2015-08-18 | Lenova (Singapore) Pte. Ltd. | Initiating personal assistant application based on eye tracking and gestures |
US10088972B2 (en) | 2013-12-31 | 2018-10-02 | Verint Americas Inc. | Virtual assistant conversations |
US20150347399A1 (en) * | 2014-05-27 | 2015-12-03 | Microsoft Technology Licensing, Llc | In-Call Translation |
US10140988B2 (en) | 2016-03-01 | 2018-11-27 | Microsoft Technology Licensing, Llc | Speech recognition |
US20170256259A1 (en) | 2016-03-01 | 2017-09-07 | Microsoft Technology Licensing, Llc | Speech Recognition |
-
2016
- 2016-08-05 US US15/229,854 patent/US10140986B2/en active Active
-
2017
- 2017-02-24 EP EP17709557.7A patent/EP3400597A1/en not_active Withdrawn
- 2017-02-24 CN CN201780014607.7A patent/CN108701458B/zh active Active
- 2017-02-24 WO PCT/US2017/019255 patent/WO2017151413A1/en active Application Filing
-
2018
- 2018-11-13 US US16/189,887 patent/US10891952B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2409087A (en) * | 2003-12-12 | 2005-06-15 | Ibm | Computer generated prompting |
CN101682673A (zh) * | 2007-05-03 | 2010-03-24 | 微软公司 | 自动话务员语法调整 |
US20130060570A1 (en) * | 2011-09-01 | 2013-03-07 | At&T Intellectual Property I, L.P. | System and method for advanced turn-taking for interactive spoken dialog systems |
CN105070290A (zh) * | 2015-07-08 | 2015-11-18 | 苏州思必驰信息科技有限公司 | 人机语音交互方法及系统 |
Non-Patent Citations (1)
Title |
---|
《Flexible Turn-Taking for Spoken Dialog Systems》;Antoine Raux;《CiteSeerx 2008》;20081231;第1-117页 * |
Also Published As
Publication number | Publication date |
---|---|
US20190080694A1 (en) | 2019-03-14 |
US20170256258A1 (en) | 2017-09-07 |
US10891952B2 (en) | 2021-01-12 |
CN108701458A (zh) | 2018-10-23 |
WO2017151413A1 (en) | 2017-09-08 |
EP3400597A1 (en) | 2018-11-14 |
US10140986B2 (en) | 2018-11-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108701458B (zh) | 话音识别 | |
US10192550B2 (en) | Conversational software agent | |
US10140988B2 (en) | Speech recognition | |
US20170256259A1 (en) | Speech Recognition | |
US11749265B2 (en) | Techniques for incremental computer-based natural language understanding | |
JP6688227B2 (ja) | 通話中翻訳 | |
US9697828B1 (en) | Keyword detection modeling using contextual and environmental information | |
US20150347399A1 (en) | In-Call Translation | |
JP6084654B2 (ja) | 音声認識装置、音声認識システム、当該音声認識システムで使用される端末、および、話者識別モデルを生成するための方法 | |
WO2017200072A1 (ja) | 対話方法、対話システム、対話装置、およびプログラム | |
WO2017200080A1 (ja) | 対話方法、対話装置、及びプログラム | |
KR102628211B1 (ko) | 전자 장치 및 그 제어 방법 | |
JP7568851B2 (ja) | 通話およびオーディオメッセージからのその他の話者の音声フィルタリング | |
CN110493123B (zh) | 即时通讯方法、装置、设备及存储介质 | |
WO2018163645A1 (ja) | 対話方法、対話システム、対話装置、およびプログラム | |
JP6682104B2 (ja) | 対話方法、対話システム、対話装置、およびプログラム | |
WO2017200076A1 (ja) | 対話方法、対話システム、対話装置、およびプログラム | |
JP7167357B2 (ja) | 自動通話システム | |
CN112466302A (zh) | 语音交互的方法、装置、电子设备和存储介质 | |
WO2017172655A1 (en) | Analysis of a facial image to extract physical and emotional characteristics of a user | |
KR20230062612A (ko) | 자동화된 어시스턴트를 위한 자연스러운 대화 활성화 | |
KR102448733B1 (ko) | 문맥 내 턴 구성을 고려하여 응답을 선택하는 대화 시스템 및 그 방법 | |
JPWO2017200077A1 (ja) | 対話方法、対話システム、対話装置、及びプログラム | |
CN117121100A (zh) | 为自动化助理启用具有软端点的自然对话 | |
JP2022133188A (ja) | ユーザから発話された名詞を忘却する対話プログラム、装置及び方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |