CN108604449A - 说话者识别 - Google Patents
说话者识别 Download PDFInfo
- Publication number
- CN108604449A CN108604449A CN201680049825.XA CN201680049825A CN108604449A CN 108604449 A CN108604449 A CN 108604449A CN 201680049825 A CN201680049825 A CN 201680049825A CN 108604449 A CN108604449 A CN 108604449A
- Authority
- CN
- China
- Prior art keywords
- user
- natural language
- language speech
- group
- speech input
- 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.)
- Granted
Links
- 238000003860 storage Methods 0.000 claims abstract description 153
- 230000001052 transient effect Effects 0.000 claims abstract description 71
- 238000012545 processing Methods 0.000 claims description 147
- 238000000034 method Methods 0.000 claims description 74
- 230000015654 memory Effects 0.000 claims description 63
- 230000004044 response Effects 0.000 claims description 59
- 239000013598 vector Substances 0.000 claims description 54
- 230000008859 change Effects 0.000 claims description 19
- 230000018199 S phase Effects 0.000 claims description 14
- 230000001960 triggered effect Effects 0.000 claims description 11
- 210000004209 hair Anatomy 0.000 claims description 10
- 230000005540 biological transmission Effects 0.000 claims description 9
- 230000005611 electricity Effects 0.000 claims description 7
- 238000004891 communication Methods 0.000 description 51
- 230000033001 locomotion Effects 0.000 description 47
- 238000003825 pressing Methods 0.000 description 41
- 238000001514 detection method Methods 0.000 description 31
- 238000005516 engineering process Methods 0.000 description 31
- 238000003058 natural language processing Methods 0.000 description 27
- 230000006870 function Effects 0.000 description 25
- 230000003287 optical effect Effects 0.000 description 22
- 230000008569 process Effects 0.000 description 22
- 230000002093 peripheral effect Effects 0.000 description 21
- 238000010586 diagram Methods 0.000 description 15
- 238000005111 flow chemistry technique Methods 0.000 description 14
- 230000015572 biosynthetic process Effects 0.000 description 13
- 238000003786 synthesis reaction Methods 0.000 description 13
- 230000000007 visual effect Effects 0.000 description 13
- 238000007726 management method Methods 0.000 description 11
- 230000007246 mechanism Effects 0.000 description 11
- 230000003247 decreasing effect Effects 0.000 description 9
- 230000009471 action Effects 0.000 description 7
- 238000009499 grossing Methods 0.000 description 7
- 238000012384 transportation and delivery Methods 0.000 description 7
- 230000004048 modification Effects 0.000 description 6
- 238000012986 modification Methods 0.000 description 6
- 238000010411 cooking Methods 0.000 description 5
- 238000006073 displacement reaction Methods 0.000 description 5
- 230000003993 interaction Effects 0.000 description 5
- 238000001228 spectrum Methods 0.000 description 5
- 230000001413 cellular effect Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 238000005259 measurement Methods 0.000 description 4
- 230000033764 rhythmic process Effects 0.000 description 4
- 239000007787 solid Substances 0.000 description 4
- 239000013589 supplement Substances 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 241000238558 Eucarida Species 0.000 description 3
- 241000227653 Lycopersicon Species 0.000 description 3
- 235000007688 Lycopersicon esculentum Nutrition 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 3
- 230000003213 activating effect Effects 0.000 description 3
- 238000003490 calendering Methods 0.000 description 3
- 230000001143 conditioned effect Effects 0.000 description 3
- 230000000977 initiatory effect Effects 0.000 description 3
- 230000014759 maintenance of location Effects 0.000 description 3
- 239000000047 product Substances 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 239000000654 additive Substances 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000001149 cognitive effect Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 230000000881 depressing effect Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000005286 illumination Methods 0.000 description 2
- 206010022000 influenza Diseases 0.000 description 2
- 238000007689 inspection Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 238000005096 rolling process Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 210000000697 sensory organ Anatomy 0.000 description 2
- 230000021317 sensory perception Effects 0.000 description 2
- 238000012163 sequencing technique Methods 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 238000010408 sweeping Methods 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 241000196324 Embryophyta Species 0.000 description 1
- 206010020751 Hypersensitivity Diseases 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 208000026935 allergic disease Diseases 0.000 description 1
- 230000007815 allergy Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 210000005252 bulbus oculi Anatomy 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 235000005911 diet Nutrition 0.000 description 1
- 230000037213 diet Effects 0.000 description 1
- 229920001746 electroactive polymer Polymers 0.000 description 1
- 230000005662 electromechanics Effects 0.000 description 1
- 210000001508 eye Anatomy 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000003862 health status Effects 0.000 description 1
- 235000003642 hunger Nutrition 0.000 description 1
- 230000001976 improved effect Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000005304 joining Methods 0.000 description 1
- 210000003127 knee Anatomy 0.000 description 1
- 230000002045 lasting effect Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 235000012054 meals Nutrition 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
- 235000013550 pizza Nutrition 0.000 description 1
- 238000013439 planning Methods 0.000 description 1
- 229920000642 polymer Polymers 0.000 description 1
- 238000006116 polymerization reaction Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000007670 refining Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 230000037351 starvation Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
- 230000008093 supporting effect Effects 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 239000011800 void material Substances 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
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
- G10L17/00—Speaker identification or verification techniques
- G10L17/22—Interactive procedures; Man-machine interfaces
- G10L17/24—Interactive procedures; Man-machine interfaces the user being prompted to utter a password or a predefined phrase
-
- 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
- G10L17/00—Speaker identification or verification techniques
- G10L17/06—Decision making techniques; Pattern matching strategies
- G10L17/08—Use of distortion metrics or a particular distance between probe pattern and reference templates
-
- 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
- G10L17/00—Speaker identification or verification techniques
- G10L17/04—Training, enrolment or model building
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Game Theory and Decision Science (AREA)
- Business, Economics & Management (AREA)
- Computational Linguistics (AREA)
- Machine Translation (AREA)
- User Interface Of Digital Computer (AREA)
- Artificial Intelligence (AREA)
Abstract
本发明题为“说话者识别”。一种非暂态计算机可读存储介质存储一个或多个程序,所述一个或多个程序包括指令,所述指令在由电子设备执行时使得所述电子设备从多个用户中的一个用户接收自然语言语音输入,所述自然语言语音输入具有一组声学特性;并且确定所述自然语言语音输入是否对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者;其中根据确定所述自然语言语音输入对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者,调用虚拟助理;并且根据确定所述自然语言语音输入不对应于用户可定制的词汇触发,或所述自然语言语音输入不具有与所述用户相关联的一组声学特性,放弃调用虚拟助理。
Description
相关专利申请的交叉引用
本专利申请要求于2015年9月30日提交的标题为“SPEAKER RECOGNITION”的美国临时专利申请序列号62/235,511和于2016年5月24日提交的标题为“SPEAKERRECOGNITION”的美国专利申请序列号15/163,392的优先权。这些专利申请的内容据此以引用方式并入以用于所有目的。
技术领域
本公开整体涉及虚拟助理,并且更具体地涉及识别说话者以调用虚拟助理。
背景技术
智能自动化助理(或数字助理/虚拟助理)在人类用户与电子设备之间提供有利界面。此类助理允许用户使用自然语言以语音形式和/或文本形式与设备或***进行交互。例如,用户可通过向与电子设备相关联的数字助理提供语音用户请求来访问电子设备的服务。数字助理可根据该语音用户请求解译用户的意图并且将用户意图操作化成任务。随后可通过执行电子设备的一项或多项服务来执行这些任务,并且可将相关输出以自然语言形式返回给用户。
就过去用语音命令调用数字助理而言,数字助理对语音本身作出响应,而不是响应于说话者。因此,电子设备拥有者以外的用户能够使用数字助理,这并非在所有情况下都是期望的。此外,由于电子设备和数字助理的普及,在一些情况下,用户可能向与他或她的电子设备相关联的数字助理提供语音用户请求,而房间(诸如在会议中)中的多台电子设备将作出响应。
发明内容
然而,如上所述,使用电子设备通过识别说话者来调用虚拟助理的一些技术通常是麻烦而低效的。例如,由于电子设备之间缺乏特定性,现有技术可能需要比所需更多的时间,从而浪费用户时间和设备能量。这后一考虑在电池驱动的设备中是特别重要的。又如,由于数字助理接受任何用户的语音输入,而不是只响应设备拥有者的语音输入,因此现有技术可能是不安全的。
因此,本技术为电子设备提供了更快、更有效的方法和界面,以用于识别说话者以调用虚拟助理。此类方法和界面任选地补充或替换用于识别说话者以调用虚拟助理的其他方法。此类方法和界面减少对用户所造成的认知负担,并且产生更有效的人机界面。对于电池驱动的计算设备,此类方法和界面节省了功率并且增加了电池两次充电之间的间隔,并且减少了多余和外部的接收输入的数量。
在一些实施方案中,非暂态计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令在由电子设备执行时使电子设备从多个用户中的一个用户接收自然语言语音输入,该自然语言语音输入具有一组声学特性;并且确定该自然语言语音输入是否对应于用户可定制的词汇触发和与用户相关联的一组声学特性二者;其中根据确定该自然语言语音输入对应于用户可定制的词汇触发和与用户相关联的一组声学特性二者,调用虚拟助理;并且根据确定该自然语言语音输入不对应于用户可定制的词汇触发,或该自然语言语音输入不具有一组与用户相关联的声学特性,放弃调用虚拟助理。
在一些实施方案中,暂态计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令在由电子设备执行时使电子设备从多个用户中的一个用户接收自然语言语音输入,该自然语言语音输入具有一组声学特性;并且确定该自然语言语音输入是否对应于用户可定制的词汇触发和与用户相关联的一组声学特性二者;其中根据确定该自然语言语音输入对应于用户可定制的词汇触发和与用户相关联的一组声学特性二者,调用虚拟助理;并且根据确定该自然语言语音输入不对应于用户可定制的词汇触发,或该自然语言语音输入不具有一组与用户相关联的声学特性,放弃调用虚拟助理。
在一些实施方案中,电子设备包括存储器;麦克风;以及耦合到存储器和麦克风的处理器,该处理器被配置为接收来自多个用户中的一个用户的自然语言语音输入,该自然语言语音输入具有一组声学特性;并且确定该自然语言语音输入是否对应于用户可定制的词汇触发和与用户相关联的一组声学特性二者;其中根据确定该自然语言语音输入对应于用户可定制的词汇触发和与用户相关联的一组声学特性二者,调用虚拟助理;并且根据确定该自然语言语音输入不对应于用户可定制的词汇触发,或该自然语言语音输入不具有一组与用户相关联的声学特性,放弃调用虚拟助理。
在一些实施方案中,使用虚拟助理的方法包括,在被配置为发射和接收数据的电子设备处,接收来自多个用户中的一个用户的自然语言语音输入,该自然语言语音输入具有一组声学特性;并且确定该自然语言语音输入是否对应于用户可定制的词汇触发和与用户相关联的一组声学特性二者;其中根据确定该自然语言语音输入对应于用户可定制的词汇触发和与用户相关联的一组声学特性二者,调用虚拟助理;并且根据确定该自然语言语音输入不对应于用户可定制的词汇触发,或该自然语言语音输入不具有一组与用户相关联的声学特性,放弃调用虚拟助理。
在一些实施方案中,利用该电子设备的***包括,用于接收来自多个用户中的一个用户的自然语言语音输入的装置,该自然语言语音输入具有一组声学特性;以及用于确定该自然语言语音输入是否对应于用户可定制的词汇触发和与用户相关联的一组声学特性二者的装置;其中根据确定该自然语言语音输入对应于用户可定制的词汇触发和与用户相关联的一组声学特性二者,用于调用虚拟助理的装置;以及根据确定该自然语言语音输入不对应于用户可定制的词汇触发,或该自然语言语音输入不具有一组与用户相关联的声学特性,用于放弃调用虚拟助理的装置。
在一些实施方案中,电子设备包括处理单元,该处理单元包括接收单元、确定单元和调用单元;该处理单元被配置为使用接收单元接收来自多个用户中的一个用户的自然语言语音输入,该自然语言语音输入具有一组声学特性;并且使用确定单元确定该自然语言语音输入是否对应于用户可定制的词汇触发和与用户相关联的一组声学特性二者;其中根据确定该自然语言语音输入对应于用户可定制的词汇触发和与用户相关联的一组声学特性二者,使用调用单元调用虚拟助理;并且根据确定该自然语言语音输入不对应于用户可定制的词汇触发,或该自然语言语音输入不具有一组与用户相关联的声学特性,使用调用单元放弃调用虚拟助理。
用于执行这些功能的可执行指令任选地被包括在被配置用于由一个或多个处理器执行的非暂态计算机可读存储介质或其他计算机程序产品中。用于执行这些功能的可执行指令任选地被包括在被配置用于由一个或多个处理器执行的暂态计算机可读存储介质或其他计算机程序产品中。
因此,为设备提供更快更高效的方法和界面用于识别说话者以调用虚拟助理,由此提高此类设备的有效性、效率和用户满意度。此类方法和界面可补充或替换用于识别说话者以调用虚拟助理的其他方法。
附图说明
为了更好地理解各种所述实施方案,应结合以下附图参考下面的具体实施方式,其中在整个附图中类似的附图标记是指对应的部件。
图1是示出根据各种示例的用于实现数字助理的***和环境的框图。
图2A是示出根据各种示例的实现数字助理的客户端侧部分的便携式多功能设备的框图。
图2B是示出根据各种示例的用于事件处理的示例性部件的框图。
图3示出了根据各种示例的实现数字助理的客户端侧部分的便携式多功能设备。
图4是根据各种示例的具有显示器和触敏表面的示例性多功能设备的框图。
图5A示出了根据各种示例的便携式多功能设备上的应用程序菜单的示例性用户界面。
图5B示出了根据各种示例的具有与显示器分开的触敏表面的多功能设备的示例性用户界面。
图6A示出了根据各种示例的个人电子设备。
图6B是示出根据各种示例的个人电子设备的框图。
图7A是示出根据各种示例的数字助理***或其服务器部分的框图。
图7B示出了根据各种示例的图7A所示的数字助理的功能。
图7C示出了根据各种示例的知识本体的一部分。
图8A至图8G示出了根据各种示例的用于识别说话者以调用虚拟助理的过程。
图9示出了根据各种示例的电子设备的功能框图。
具体实施方式
以下描述阐述了示例性方法、参数等。然而,应当认识到,此类描述并非旨在限制本公开的范围,而是作为对示例性实施方案的描述来提供。
需要提供用于识别说话者以调用虚拟助理的高效的方法和界面的电子设备。如上所述,由于其对语音而非说话者进行识别,因此使用已知的方法来识别说话者以调用虚拟助理可能效果并不能达到预期。改进的虚拟助理调用可以减轻用户的认知负担,从而提高效率。此外,此类技术可减少本来浪费在冗余用户输入上的处理器功率和电池功率。
下面,图1、图2A至图2B、图3、图4、图5A至图5B和图6A至图6B提供了对用于执行用于基于非特定非结构化的自然语言请求来发现媒体的技术的示例性设备的描述。图7A至图7C是示出数字助理***或其服务器部分以及与数字助理***相关联的知识本体的一部分的框图。图8A至图8G是示出了根据一些实施方案的利用虚拟助理执行任务的方法的流程图。图9是根据各种示例的电子设备的功能框图。
尽管以下描述使用术语第一、第二等来描述各种元素,但这些元素不应受术语的限制。这些术语只是用于将一个元素与另一元素区分开。例如,第一触摸可被命名为第二触摸并且类似地第二触摸可被命名为第一触摸,而不脱离各种所述实施方案的范围。第一触摸和第二触摸两者都是触摸,但是它们不是同一触摸。
在本文中对各种所述实施方案的描述中所使用的术语只是为了描述特定实施方案的目的而并非旨在进行限制。如在对各种所述实施方案中的描述和所附权利要求书中所使用的那样,单数形式“一个”(“a”、“an”)和“该”旨在也包括复数形式,除非上下文另外明确地指示。还应当理解,本文中所使用的术语“和/或”是指并且涵盖相关联地列出的项目中的一个或多个项目的任何和全部可能的组合。还将理解的是,术语“包括”(“includes”、“including”、“comprises”和/或“comprising”)当在本说明书中使用时指定存在所陈述的特征、整数、步骤、操作、元素、和/或部件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元素、部件、和/或其分组。
根据上下文,术语“如果”可被解释为意指“当...时”或“在...时”或“响应于确定...”或“响应于检测到...”。类似地,根据上下文,短语“如果确定...”或“如果检测到[所陈述的条件或事件]”可以、被解释为意指“在确定...时”或“响应于确定...”或“在检测到[所陈述的条件或事件]时”或“响应于检测到[所陈述的条件或事件]”。
本文描述了电子设备、此类设备的用户界面和使用此类设备的相关联的过程的实施方案。在一些实施方案中,该设备为还包含其他功能诸如PDA和/或音乐播放器功能的便携式通信设备,诸如移动电话。便携式多功能设备的示例性实施方案包括但不限于来自Apple Inc.(Cupertino,California)的设备、iPod设备、和设备。任选地使用其他便携式电子设备,诸如具有触敏表面(例如,触摸屏显示器和/或触摸板)的膝上型电脑或平板电脑。还应当理解,在一些实施方案中,该设备并非便携式通信设备,而是具有触敏表面(例如,触摸屏显示器和/或触摸板)的台式计算机。
在下面的讨论中,描述了一种包括显示器和触敏表面的电子设备。然而,应当理解,该电子设备任选地包括一个或多个其他物理用户接口设备,诸如物理键盘、鼠标和/或操纵杆。
设备可支持多种应用程序,诸如以下应用程序中的一个或多个应用程序:绘图应用程序、呈现应用程序、文字处理应用程序、网站创建应用程序、盘编辑应用程序、电子表格应用程序、游戏应用程序、电话应用程序、视频会议应用程序、电子邮件应用程序、即时消息应用程序、健身支持应用程序、照片管理应用程序、数字相机应用程序、数字视频相机应用程序、web浏览应用程序、数字音乐播放器应用程序、和/或数字视频播放器应用程序。
在设备上执行的各种应用程序任选地使用至少一个共用的物理用户界面设备,诸如触敏表面。触敏表面的一种或多种功能以及被显示在设备上的对应信息任选地从一种应用程序调整和/或变化至下一种应用程序和/或在相应应用程序内被调整和/或变化。这样,设备的共用物理架构(诸如触敏表面)任选地利用对于用户而言直观且清楚的用户界面来支持各种应用程序。
图1示出了根据各种示例的***100的框图。在一些示例中,***100可实现数字助理。术语“数字助理”、“虚拟助理”、“智能自动化助理”或“自动数字助理”可指解译语音形式和/或文本形式的自然语言输入以推断用户意图并且基于推断出的用户意图来执行动作的任何信息处理***。例如,为了作用于推断出的用户意图,***可以执行下述步骤中的一个或多个:识别具有设计用于实现推断出的用户意图的步骤和参数的任务流,根据推断出的用户意图将特定要求输入到任务流中;通过调用程序、方法、服务、API等来执行任务流;以及以可听(例如,言语)和/或可视形式来生成对用户的输出响应。
具体地,数字助理可能够接受至少部分地为自然语言命令、请求、声明、讲述和/或询问的形式的用户请求。通常,用户请求可寻求数字助理作出信息性回答,或寻求数字助理执行任务。针对用户请求的令人满意的响应可以是提供所请求的信息性回答、执行所请求的任务,或这两者的组合。例如,用户可向数字助理提出问题,诸如“我现在在哪里?”基于用户的当前位置,数字助理可回答“您在中央公园西门附近。”用户还可请求执行任务,例如“请邀请我的朋友下周来参加我女朋友的生日聚会。”作为响应,数字助理可通过讲出“好的,马上”来确认请求,并然后代表用户将合适的日历邀请发送至用户的电子通讯录中列出的用户朋友中的每个朋友。在执行所请求的任务期间,数字助理有时可在很长时间段内在涉及多次信息交换的持续对话中与用户进行交互。存在与数字助理进行交互以请求信息或执行各种任务的许多其他方法。除提供言语响应并采取经编程的动作之外,数字助理还可提供其他视觉形式或音频形式的响应,例如作为文本、警报、音乐、视频、动画等。
如图1中所示,在一些示例中,数字助理可根据客户端-服务器模型来实现。数字助理可包括在用户设备104上执行的客户端侧部分102(后文称作“DA客户端102”),以及在服务器***108上执行的服务器侧部分106(后文称作“DA服务器106”)。DA客户端102可通过一个或多个网络110来与DA服务器106进行通信。DA客户端102可提供客户端侧功能,诸如面向用户的输入和输出处理,以及与DA服务器106进行通信。DA服务器106可为任意数量的DA客户端102提供服务器侧功能,该任意数量的DA客户端102各自位于相应的用户设备104上。
在一些示例中,DA服务器106可包括面向客户端的I/O接口112、一个或多个处理模块114、数据和模型116,以及至外部服务的I/O接口118。面向客户端的I/O接口112可促进针对DA服务器106的面向客户端的输入和输出处理。一个或多个处理模块114可利用数据和模型116来处理语音输入,并基于自然语言输入来确定用户的意图。此外,一个或多个处理模块114基于推断出的用户意图来进行任务执行。在一些示例中,DA服务器106可通过一个或多个网络110来与外部服务120进行通信,以完成任务或采集信息。至外部服务的I/O接口118可促进此类通信。
用户设备104可以是任何合适的电子设备。例如,用户设备可以是便携式多功能设备(例如下面参考图2A描述的设备200)、多功能设备(例如下面参考图4描述的设备400)、或个人电子设备(例如下面参考图6A-B描述的设备600)。便携式多功能设备可以是例如还包含诸如PDA和/或音乐播放器功能的其他功能的移动电话。便携式多功能设备的特定示例可包括来自Apple Inc.(Cupertino,California)的设备、iPod设备、和设备。便携式多功能设备的其他示例可包括但不限于膝上型电脑或平板电脑。此外,在一些示例中,用户设备104可以是非便携式多功能设备。具体地,用户设备104可以是台式计算机、游戏机、电视、或电视机顶盒。在一些示例中,用户设备104可包括触敏表面(例如,触摸屏显示器和/或触摸板)。此外,用户设备104可任选地包括一个或多个其他物理用户接口设备,诸如物理键盘、鼠标、和/或操纵杆。下文更详细地描述了电子设备诸如多功能设备的各种示例。
一个或多个通信网络110的示例可包括局域网(LAN)和广域网(WAN),例如互联网。一个或多个通信网络110可使用任何已知的网络协议来实现,包括各种有线或无线协议,诸如例如以太网、通用串行总线(USB)、火线、全球移动通信***(GSM)、增强型数据GSM环境(EDGE)、码分多址(CDMA)、时分多址(TDMA)、蓝牙、Wi-Fi、互联网协议语音(VoIP)、Wi-MAX、或任何其他合适的通信协议。
服务器***108可在计算机的一个或多个独立式数据处理设备或分布式网络上实施。在一些示例中,服务器***108还可采用第三方服务提供方(例如,第三方云服务提供方)的各种虚拟设备和/或服务来提供服务器***108的潜在计算资源和/或基础结构资源。
在一些示例中,用户设备104可经由第二用户设备122来与DA服务器106进行通信。第二用户设备122可与用户设备104相似或相同。例如,第二用户设备122可类似于下文参考图2A、图4和图6A至图6B描述的设备200、设备400或设备600。用户设备104可被配置为经由直接通信连接诸如蓝牙、NFC、BTLE等或者经由有线或无线网络诸如局域Wi-Fi网络而通信耦接至第二用户设备122。在一些示例中,第二用户设备122可被配置为充当用户设备104与DA服务器106之间的代理。例如,用户设备104的DA客户端102可被配置为经由第二用户设备122来向DA服务器106传输信息(例如,在用户设备104处接收的用户请求)。DA服务器106可处理该信息并经由第二用户设备122来将相关的数据(例如,响应于用户请求的数据内容)返回到用户设备104。
在一些示例中,用户设备104可被配置为将针对数据的缩略请求发送至第二用户设备122,以减少从用户设备104传输的信息量。第二用户设备122可被配置为确定添加到缩略请求的补充信息,以生成完整的请求,从而传输到DA服务器106。该***架构可有利地通过使用具有较强通信能力和/或电池电力的第二用户设备122(例如,移动电话、膝上型计算机、平板电脑等)作为至DA服务器106的代理而允许具有有限通信能力和/或有限电池电力的用户设备104(例如,手表或类似的紧凑型电子设备)访问由DA服务器106所提供的服务。虽然图1中仅示出两个用户设备104和122,应当理解,***100可包括在此代理配置中被配置为与DA服务器***106进行通信的任意数量和类型的用户设备。
虽然图1中所示的数字助理可包括客户端侧部分(例如,DA客户端102)和服务器侧部分(例如,DA服务器106)两者,但在一些示例中,数字助理的功能可被实现为被安装在用户设备上的独立式应用程序。此外,数字助理的客户端部分与服务器部分之间的功能划分在不同的具体实施中可变化。例如,在一些示例中,DA客户端可以是仅提供面向用户的输入和输出处理功能并将数字助理的所有其他功能委派给后端服务器的瘦客户端。
1.电子设备
现在将注意力转至用于实现数字助理的客户端侧部分的电子设备的实施方案。图2A是示出了根据一些实施方案的具有触敏显示***212的便携式多功能设备200的框图。触敏显示器212有时为了方便被叫做“触摸屏”,并且有时可被称为或被叫做“触敏显示器***”。设备200包括存储器202(其任选地包括一个或多个计算机可读存储介质)、存储器控制器222、一个或多个处理单元(CPU)220、***设备接口218、RF电路208、音频电路210、扬声器211、麦克风213、输入/输出(PO)子***206、其他输入控制设备216和外部端口224。设备200任选地包括一个或多个光学传感器264。设备200任选地包括用于检测设备200(例如,触敏表面,诸如设备200的触敏显示器***212)上的接触的强度的一个或多个接触强度传感器265。设备200任选地包括用于在设备200上生成触觉输出的一个或多个触觉输出发生器267(例如,在触敏表面诸如设备200的触敏显示器***212或设备400的触摸板455上生成触觉输出)。这些部件任选地通过一个或多个通信总线或信号线203进行通信。
如在本说明书和权利要求书中所使用的那样,触敏表面上的接触的术语“强度”是指触敏表面上的接触(例如,手指接触)的力或压力(每单位面积的力),或是指触敏表面上的接触的力或压力的替代物(代用物)。接触的强度具有值范围,该值范围包括至少四个不同的值并且更典型地包括上百个不同的值(例如至少256个)。接触的强度任选地使用各种方法和各种传感器或传感器的组合来确定(或测量)。例如,在触敏表面下方或相邻于触敏表面的一个或多个力传感器任选地用于测量触敏表面上的不同点处的力。在一些具体实施中,来自多个力传感器的力测量被合并(例如,加权平均),以确定估计的接触力。类似地,触笔的压敏顶端任选地用于确定触笔在触敏表面上的压力。另选地,在触敏表面上检测到的接触区域的尺寸和/或其变化、接触附近的触敏表面的电容和/或其变化、和/或接触附近的触敏表面的电阻和/或其变化任选地被用作触敏表面上的接触的力或压力的替代物。在一些具体实施中,接触力或压力的替代测量直接用于确定是否已超过强度阈值(例如,强度阈值以与替代物测量对应的单位来描述)。在一些具体实施中,接触力或压力的替代测量被转换成估计的力或压力,并且估计的力或压力用于确定是否已超过强度阈值(例如,强度阈值是以压力的单位进行测量的压力阈值)。使用接触强度作为用户输入的属性,从而允许用户访问用户在尺寸更小的设备上可能本来不能访问的附加设备功能,该尺寸更小的设备具有有限的实地面积以用于(例如,在触敏显示器上)显示示能表示和/或接收用户输入(例如,经由触敏显示器、触敏表面或物理控件/机械控件,诸如旋钮或按钮)。
如本说明书和权利要求书中所使用的,术语“触觉输出”是指将由用户利用用户的触感检测到的设备相对于设备的先前位置的物理位移、设备的部件(例如,触敏表面)相对于设备的另一个部件(例如,外壳)的物理位移、或部件相对于设备的质心的位移。例如,在设备或设备的部件与用户的对触摸敏感的表面(例如,手指、手掌或用户手部的其他部分)接触的情况下,通过物理位移生成的触觉输出将由用户解释为触感,该触感对应于设备或设备部件的物理特征所感知的变化。例如,触敏表面(例如,触敏显示器或触控板)的移动任选地由用户解释为对物理致动按钮的“按下点击”或“松开点击”。在一些情况下,用户将感觉到触感,诸如“按下点击”或“松开点击”,即使在通过用户的移动而物理地被按压(例如,被移位)的与触敏表面相关联的物理致动按钮没有移动时。作为另一个示例,即使在触敏表面的光滑度无变化时,触敏表面的移动也将任选地由用户解释为或感测为触敏表面的“粗糙度”。虽然由用户对触摸的此类解释将受到用户的个体化感官知觉的限制,但是有许多触摸的感官知觉是大多数用户所共有的。因此,当触觉输出被描述为对应于用户的特定感官知觉(例如,“按下点击”、“松开点击”、“粗糙度”)时,除非另外陈述,否则所生成的触觉输出对应于设备或其部件的物理位移,该物理位移将会生成典型(或普通)用户的所述感官知觉。
应当理解,设备200仅是便携式多功能设备的一个实施方案,并且设备200任选地具有比所示出的更多或更少的部件,任选地组合两个或更多个部件,或者任选地具有这些部件的不同配置或布置。图2A中所示的各种部件以硬件、软件、或硬件与软件两者的组合来实现,包括一个或多个信号处理电路和/或专用集成电路。
存储器202可包括一个或多个计算机可读存储介质。该计算机可读存储介质可以是有形的和非暂态的。存储器202可包括高速随机存取存储器,并且还可包括非易失性存储器,诸如一个或多个磁盘存储设备、闪存存储器设备或其他非易失性固态存储器设备。存储器控制器222可控制设备200的其他部件访问存储器202。
在一些示例中,存储器202的非暂态计算机可读存储介质可用于存储指令(例如,用于执行下文描述的方法900的各方面)以供指令执行***、装置或设备诸如基于计算机的***、包含处理器的***或可从指令执行***、装置或设备获取指令并执行指令的其他***使用或与其结合。在其他示例中,指令(例如,用于执行下文描述的方法900的各方面)可被存储在服务器***108的非暂态计算机可读存储介质(未示出)上,或者可在存储器202的非暂态计算机可读存储介质与服务器***108的非暂态计算机可读存储介质之间划分。在本文档的上下文中,“非暂态计算机可读存储介质”可以是可包括或存储程序以供指令执行***、装置和设备使用或与其结合的任何介质。
***设备接口218可被用于将设备的输入***设备和输出***设备耦接到CPU220和存储器202。所述一个或多个处理器220运行或执行存储在存储器202中的各种软件程序和/或指令集以执行设备200的各种功能并处理数据。在一些实施方案中,***设备接口218、CPU 220和存储器控制器222可在单个芯片诸如芯片204上实现。在一些其他实施方案中,它们可在单独的芯片上实现。
RF(射频)电路208接收并发送也被叫做电磁信号的RF信号。RF电路208将电信号转换为电磁信号/将电磁信号转换为电信号,并且经由电磁信号与通信网络以及其他通信设备进行通信。RF电路208任选地包括用于执行这些功能的熟知的电路,包括但不限于天线***、RF收发器、一个或多个放大器、调谐器、一个或多个振荡器、数字信号处理器、编解码芯片组、用户身份模块(SIM)卡、存储器等等。RF电路208任选地通过无线通信来与网络以及其他设备进行通信,该网络为诸如互联网(也被称为万维网(WWW))、内联网和/或无线网络(诸如蜂窝电话网络、无线局域网(LAN)和/或城域网(MAN))。RF电路208任选地包括用于诸如通过近程通信无线电部件来检测近场通信(NFC)场的熟知的电路。无线通信任选地使用多种通信标准、协议和技术中的任一种,包括但不限于全球移动通信***(GSM)、增强型数据GSM环境(EDGE)、高速下行链路分组接入(HSDPA)、高速上行链路分组接入(HSUPA)、演进、纯数据(EV-DO)、HSPA、HSPA+、双小区HSPA(DC-HSPDA)、长期演进(LTE)、近场通信(NFC)、宽带码分多址(W-CDMA)、码分多址(CDMA)、时分多址(TDMA)、蓝牙、蓝牙低功耗(BTLE)、无线保真(Wi-Fi)(例如,IEEE 802.11a、IEEE 802.11b、IEEE 802.11g、IEEE 802.11n和/或IEEE802.11ac)、互联网协议语音(VoIP)、Wi-MAX、电子邮件协议(例如,互联网消息访问协议(IMAP)和/或邮局协议(POP))、即时消息(例如,可扩展消息处理和存在协议(XMPP)、用于即时消息和存在利用扩展的会话发起协议(SIMPLE)、即时消息和存在服务(IMPS))和/或短消息服务(SMS),或者任何其他适当的通信协议,包括在本文档提交日期时尚未开发出的通信协议。
音频电路210、扬声器211和麦克风213提供用户和设备200之间的音频接口。音频电路210从***设备接口218接收音频数据,将音频数据转换为电信号,并将电信号传输到扬声器211。扬声器211将电信号转换为人类可听到的声波。音频电路210还接收由麦克风213根据声波转换的电信号。音频电路210将电信号转换为音频数据,并将音频数据传输到***设备接口218,以用于处理。音频数据可由***设备接口218从存储器202和/或RF电路208进行检索和/或被传输至所述存储器和/或所述RF电路。在一些实施方案中,音频电路210还包括耳麦插孔(例如,图3中的312)。耳麦插孔提供音频电路210和可移除的音频输入/输出***设备之间的接口,该可移除的音频输入/输出***设备诸如仅输出的耳机或者具有输出(例如,单耳耳机或双耳耳机)和输入(例如,麦克风)两者的头戴式耳机。
I/O子***206将设备200上的输入/输出***设备诸如触摸屏212和其他输入控制设备216耦接到***设备接口218。I/O子***206任选地包括显示控制器256、光学传感器控制器258、强度传感器控制器259、触觉反馈控制器261,以及用于其他输入或控制设备的一个或多个输入控制器260。该一个或多个输入控制器260从其他输入控制设备216接收电信号/将电信号发送到其他输入控制设备216。其他输入控制设备216任选地包括物理按钮(例如,下压按钮、摇臂按钮等)、拨号盘、滑动开关、操纵杆、点击轮等等。在一些另选的实施方案中,一个或多个输入控制器260任选地耦接到以下各项中的任一者(或不耦接到以下各项中的任一者):键盘、红外线端口、USB端口以及指针设备诸如鼠标。一个或多个按钮(例如,图3中的308)任选地包括用于扬声器211和/或麦克风213的音量控制的增大/减小按钮。一个或多个按钮任选地包括下压按钮(例如,图3中的306)。
快速按下下压按钮可解除对触摸屏212的锁定或者开始使用触摸屏上的手势来对设备进行解锁的过程,如于2005年12月23日提交的标题为“Unlocking a Device byPerforming Gestures on an Unlock Image”的美国专利申请11/322,549以及美国专利申请No.7,657,849中所述的,上述美国专利申请全文以引用方式并入本文。更长地按下下压按钮(例如,306)可使设备200开机或关机。用户能够对一个或多个按钮的功能进行自定义。触摸屏212用于实现虚拟按钮或软按钮以及一个或多个软键盘。
触敏显示器212提供设备和用户之间的输入接口和输出接口。显示控制器256从触摸屏212接收电信号和/或将电信号发送至触摸屏212。触摸屏212向用户显示视觉输出。该视觉输出可包括图形、文本、图标、视频、以及它们的任意组合(统称为“图形”)。在一些实施方案中,一些视觉输出或全部的视觉输出可对应于用户界面对象。
触摸屏212具有基于触觉和/或触感接触来接受来自用户的输入的触敏表面、传感器或传感器组。触摸屏212和显示控制器256(与存储器202中的任何相关联的模块和/或指令集一起)检测触摸屏212上的接触(和该接触的任何移动或中断),并且将所检测到的接触转换为与显示在触摸屏212上的用户界面对象(例如,一个或多个软键、图标、网页或图像)的交互。在一个示例性实施方案中,触摸屏212和用户之间的接触点与用户的手指对应。
触摸屏212可使用LCD(液晶显示器)技术、LPD(发光聚合物显示器)技术或LED(发光二极管)技术,但是在其他实施方案中可使用其他显示技术。触摸屏212和显示控制器256可使用现在已知或以后将开发的多种触摸感测技术中的任何技术以及其他接近传感器阵列或用于确定与触摸屏212的一个或多个接触点的其他元件来检测接触及其任何移动或中断,该多种触摸感测技术包括但不限于电容式技术、电阻式技术、红外技术和表面声波技术。在一个示例性实施方案中,使用投射式互电容感测技术,诸如在Apple Inc.(Cupertino,California)的和iPod中发现的技术。
在一些实施方案中,触摸屏212的触敏显示器可类似于下文美国专利:6,323,846(Westerman等人)、6,570,557(Westerman等人)和/或6,677,932(Westerman)和/或美国专利公告2002/0015024A1中所述的多触敏触摸板,这些专利申请均据此全文以引用方式并入本文。然而,触摸屏212显示来自设备200的视觉输出,而触敏触摸板不提供视觉输出。
在一些实施方案中,触摸屏212的触敏显示器可如以下专利申请所述:(1)提交于2006年5月2日的名称为“Multipoint Touch Surface Controller”的美国专利申请11/381,313;(2)提交于2004年5月6日的名称为“Multipoint Touchscreen”的美国专利申请10/840,862;(3)提交于2004年7月30日的名称为“Gestures For Touch Sensitive InputDevices”的美国专利申请10/903,964;(4)提交于2005年1月31日的名称为“Gestures ForTouch Sensitive Input Devices”的美国专利申请11/048,264;(5)提交于2005年1月18日的名称为“Mode-Based Graphical User Interfaces For Touch Sensitive InputDevices”的美国专利申请11/038,590;(6)提交于2005年9月16日的名称为“Virtual InputDevice Placement On A Touch Screen User Interface”的美国专利申请11/228,758;(7)提交于2005年9月16日的名称为“Operation Of A Computer With A Touch ScreenInterface”的美国专利申请11/228,700;(8)提交于2005年9月16日的名称为“ActivatingVirtual Keys Of A Touch-Screen Virtual Keyboard”的美国专利申请11/228,737;和(9)提交于2006年3月3日2006的名称为“Multi-Functional Hand-Held Device”的美国专利申请11/367,749。所有这些专利申请全文以引用方式并入本文。
触摸屏212可具有超过100dpi的视频分辨率。在一些实施方案中,触摸屏具有约160dpi的视频分辨率。用户可使用任何合适的对象或附加物诸如触笔、手指等来与触摸屏212接触。在一些实施方案中,将用户界面设计用来主要与基于手指的接触和手势一起工作,由于手指在触摸屏上的接触面积较大,因此这可能不如基于触笔的输入那样精确。在一些实施方案中,设备将基于手指的粗略输入转化为精确的指针/光标位置或命令,以用于执行用户所期望的动作。
在一些实施方案中,除了触摸屏之外,设备200还可包括用于激活或去激活特定功能的触控板(未示出)。在一些实施方案中,触摸板为设备的触敏区域,该触敏区域与触摸屏不同,其不显示视觉输出。触摸板可为与触摸屏212分开的触敏表面,或者是由触摸屏形成的触敏表面的延伸部分。
设备200还包括用于为各种部件供电的电力***262。电力***262可包括功率管理***、一个或多个电源(例如,电池、交流电(AC))、再充电***、电力故障检测电路、功率转换器或逆变器、电源状态指示器(例如,发光二极管(LED))和与便携式设备中的电力的生成、管理和分配相关联的任何其他部件。
设备200还可包括一个或多个光学传感器264。图2A示出了耦接至I/O子***206中的光学传感器控制器258的光学传感器。光学传感器264可包括电荷耦合器件(CCD)或互补金属氧化物半导体(CMOS)光电晶体管。光学传感器264从环境接收通过一个或多个透镜而投射的光,并且将光转换为表示图像的数据。结合成像模块243(也被叫做相机模块),光学传感器264可捕获静态图像或视频。在一些实施方案中,光学传感器位于与设备前部上的触摸屏显示器212相背对的设备200的后部上,使得触摸屏显示器可被用作用于静态图像和/或视频图像采集的取景器。在一些实施方案中,光学传感器位于设备前部上,使得在用户在触摸屏显示器上查看其他视频会议参与者时可获得该用户的图像以用于该视频会议。在一些实施方案中,光学传感器264的位置可由用户改变(例如,通过旋转设备外壳中的透镜和传感器),使得单个光学传感器264可与触摸屏显示器一起使用,以用于视频会议和静态图像和/或视频图像采集两者。
设备200任选地还包括一个或多个接触强度传感器265。图2A示出了耦接至I/O子***206中的强度传感器控制器259的接触强度传感器。接触强度传感器265任选地包括一个或多个压阻应变仪、电容式力传感器、电力传感器、压电力传感器、光学力传感器、电容式触敏表面或其他强度传感器(例如,用于测量触敏表面上的接触的力(或压力)的传感器)。接触强度传感器265从环境接收接触强度信息(例如,压力信息或压力信息的代理)。在一些实施方案中,至少一个接触强度传感器与触敏表面(例如,触敏显示***212)并置排列或邻近。在一些实施方案中,至少一个接触强度传感器位于设备200的后部上,与位于设备200的前部上的触摸屏显示器212相背对。
设备200还可包括一个或多个接近传感器266。图2A示出了耦接至***设备接口218的接近传感器266。另选地,接近传感器266可耦接到I/O子***206中的输入控制器260。接近传感器266可如名称为“Proximity Detector In Handheld Device”的美国专利申请11/241,839中所述的那样执行;名称为“Proximity Detector In Handheld Device”的美国专利申请11/240,788;名称为“Using Ambient Light Sensor To Augment ProximitySensor Output”的美国专利申请11/620,702;名称为“Automated Response To AndSensing Of User Activity In Portable Devices”的美国专利申请11/586,862;和名称为“Methods And Systems For Automatic Configuration Of Peripherals”的美国专利申请11/638,251中所述的那样执行,这些专利申请据此全文以引用方式并入。在一些实施方案中,当多功能设备被置于用户的耳朵附近时(例如,当用户正在进行电话呼叫时),接近传感器关闭并且禁用触摸屏212。
设备200任选地还包括一个或多个触觉输出发生器267。图2A示出了耦接至I/O子***206中的触觉反馈控制器261的触觉输出发生器。触觉输出发生器267任选地包括一个或多个电声设备诸如扬声器或其他音频部件;和/或用于将能量转换成线性运动的机电设备诸如电机、螺线管、电活性聚合物、压电致动器、静电致动器或其他触觉输出生成部件(例如,用于将电信号转换成设备上的触觉输出的部件)。接触强度传感器265从触觉反馈模块233接收触觉反馈生成指令,并且在设备200上生成能够由设备200的用户感觉到的触觉输出。在一些实施方案中,至少一个触觉输出发生器与触敏表面(例如,触敏显示***212)并置排列或邻近,并且任选地通过竖直地(例如,向设备200的表面内/外)或侧向地(例如,在与设备200的表面相同的平面中向后和向前)移动触敏表面来生成触觉输出。在一些实施方案中,至少一个触觉输出发生器传感器位于设备200的后部上,与位于设备200的前部上的触摸屏显示器212相背对。
设备200还可包括一个或多个加速度计268。图2A示出耦接到***设备接口218的加速度计268。另选地,加速度计268可耦接到I/O子***206中的输入控制器260。加速度计268可如标题为“Acceleration-based Theft Detection System for PortableElectronic Devices”的美国专利公开20050190059和标题为“Methods And ApparatusesFor Operating A Portable Device Based On An Accelerometer”的美国专利公开20060017692中所述的那样执行,这两个美国专利公开均全文以引用方式并入本文。在一些实施方案中,信息基于对从一个或多个加速度计所接收的数据的分析而在触摸屏显示器上以纵向视图或横向视图被显示。设备200任选地除了加速度计268之外还包括磁力仪(未示出)和GPS(或GLONASS或其他全球导航***)接收器(未示出),用于获得关于设备200的位置和取向(例如,纵向或横向)的信息。
在一些实施方案中,存储于存储器202中的软件部件包括操作***226、通信模块(或指令集)228、接触/运动模块(或指令集)230、图形模块(或指令集)232、文本输入模块(或指令集)234、全球定位***(GPS)模块(或指令集)235、数字助理客户端模块229以及应用程序(或指令集)236。此外,存储器202可存储数据和模型,诸如用户数据和模型231。此外,在一些实施方案中,存储器202(图2A)或470(图4)存储设备/全局内部状态257,如图2A和图4中所示。设备/全局内部状态257包括以下中的一者或多者:活动应用程序状态,该活动应用程序状态指示哪些应用程序(如果有的话)当前是活动的;显示状态,用于指示什么应用程序、视图或其它信息占据触摸屏显示器212的各个区域;传感器状态,包括从设备的各个传感器和输入控制设备216获得的信息;以及关于设备的位置和/或姿态的位置信息。
操作***226(例如,Darwin、RTXC、LINUX、UNIX、OS X、iOS、WINDOWS、或嵌入式操作***诸如VxWorks)包括用于控制和管理一般***任务(例如,存储器管理、存储设备控制、功率管理等)的各种软件部件和/或驱动程序,并且促进各种硬件部件和软件部件之间的通信。
通信模块228促进通过一个或多个外部端口224来与其他设备进行通信,并且还包括用于处理由RF电路208和/或外部端口224所接收的数据的各种软件部件。外部端口224(例如,通用串行总线(USB)、火线等)适于直接耦接到其他设备或者间接地通过网络(例如,互联网、无线LAN等)耦接。在一些实施方案中,外部端口是与(Apple Inc.的商标)设备上所使用的30针连接器相同的或类似的和/或与其兼容的多针(例如,30针)连接器。
接触/运动模块230任选地检测与触摸屏212(结合显示控制器256)和其他触敏设备(例如,触摸板或物理点击轮)的接触。接触/运动模块230包括各种软件部件以用于执行与接触检测相关的各种操作,诸如确定是否已发生接触(例如,检测手指按下事件)、确定接触的强度(例如,接触的力或压力,或者接触的力或压力的替代物)、确定是否存在接触的移动并跟踪在触敏表面上的移动(例如,检测一个或多个手指拖动事件),以及确定接触是否已停止(例如,检测手指抬起事件或者接触断开)。接触/运动模块230从触敏表面接收接触数据。确定接触点的移动任选地包括确定接触点的速率(量值)、速度(量值和方向)和/或加速度(量值和/或方向的改变),接触点的移动由一系列接触数据来表示。这些操作任选地被应用于单点接触(例如,单指接触)或者多点同时接触(例如,“多点触摸”/多个手指接触)。在一些实施方案中,接触/运动模块230和显示器控制器256检测触控板上的接触。
在一些实施方案中,接触/运动模块230使用一组一个或多个强度阈值来确定操作是否已由用户执行(例如,确定用户是否已“点击”图标)。在一些实施方案中,根据软件参数来确定强度阈值的至少一个子集(例如,强度阈值不是由特定物理致动器的激活阈值来确定的,并且可在不改变设备200的物理硬件的情况下被调节)。例如,在不改变触控板或触摸屏显示器硬件的情况下,触控板或触摸屏显示器的鼠标“点击”阈值可被设定成预定义的阈值的大范围中的任一个阈值。另外,在一些具体实施中,向设备的用户提供用于调节一组强度阈值中的一个或多个强度阈值(例如,通过调节各个强度阈值和/或通过利用对“强度”参数的***级点击来一次调节多个强度阈值)的软件设置。
接触/运动模块230任选地检测用户的手势输入。触敏表面上的不同手势具有不同的接触图案(例如,所检测到的接触的不同运动、定时、和/或强度)。因此,任选地通过检测特定接触模式来检测手势。例如,检测手指轻击手势包括检测手指按下事件,然后在与手指按下事件相同的位置(或基本上相同的位置)处(例如,在图标的位置处)检测手指抬起(抬离)事件。作为另一个示例,在触敏表面上检测手指轻扫手势包括检测手指按下事件,然后检测一个或多个手指拖动事件,并且随后检测手指抬起(抬离)事件。
图形模块232包括用于在触摸屏212或其他显示器上呈现和显示图形的各种已知的软件部件,包括用于改变所显示的图形的视觉冲击(例如,亮度、透明度、饱和度、对比度或其他视觉特征)的部件。如本文所用,术语“图形”包括可被显示给用户的任何对象,非限制性地包括文本、网页、图标(诸如,包括软键的用户界面对象)、数字图像、视频、动画等。
在一些实施方案中,图形模块232存储待使用的用于表示图形的数据。每个图形任选地被分配有对应的代码。图形模块232从应用程序等接收用于指定待显示的图形的一个或多个代码,在必要的情况下还一起接收坐标数据和其他图形属性数据,然后生成屏幕图像数据,以输出至显示控制器256。
触觉反馈模块233包括用于生成指令的各种软件部件,该指令由一个或多个触觉输出发生器267使用,以便响应于用户与设备200的交互而在设备200上的一个或多个位置处生成触觉输出。
可以是图形模块232的部件的文本输入模块234提供用于在多种应用程序(例如,联系人237、电子邮件240、即时消息241、浏览器247和需要文本输入的任何其他应用程序)中输入文本的软键盘。
GPS模块235确定设备的位置并将该信息提供用于各种应用程序中(例如,提供给电话238以用于基于位置的拨号;提供给相机243用作图片/视频元数据;以及提供给提供基于位置的服务的应用程序,诸如天气桌面小程序、本地黄页桌面小程序和地图/导航桌面小程序)。
数字助理客户端模块229可包括各种客户端侧数字助理指令,以提供数字助理的客户端侧功能。例如,数字助理客户端模块229可能够通过便携式多功能设备200的各种用户接口(例如,麦克风213、加速度计268、触敏显示器***212、光学传感器229、其他输入控制设备216等)来接受声音输入(例如,语音输入)、文本输入、触摸输入和/或手势输入。数字助理客户端模块229也可能够通过便携式多功能设备200的各种输出界面(例如,扬声器211、触敏显示器***212、一个或多个触觉输出发生器267等)来提供音频形式输出(例如,语音输出)、视觉形式输出、和/或触觉形式输出。例如,可将输出提供为语音、声音、提示、文本消息、菜单、图形、视频、动画、振动和/或以上两者或更多者的组合。在操作期间,数字助理客户端模块229可使用RF电路208来与DA服务器106进行通信。在本文档中,术语“数字助理”、“虚拟助理”和“个人助理”被用作同义词,使得全部具有相同的含义。
用户数据与模型231可包括与用户相关联的各种数据(例如,特定于用户的词汇数据、用户偏好数据、用户指定名称发音、来自用户电子通讯录的数据、待办事项、购物清单等),以提供数字助理的客户端侧功能。此外,用户数据和模型231可包括用于处理用户输入并确定用户意图的各种模型(例如,语音识别模型、统计语言模型、自然语言处理模型、知识本体、任务流模型、服务模型等)。
在一些示例中,数字助理客户端模块229可利用便携式多功能设备200的各种传感器、子***和***设备来从便携式多功能设备200的周围环境采样附加信息,以建立与用户、当前用户交互和/或当前用户输入相关联的上下文。在一些示例中,数字助理客户端模块229可将上下文信息或其子集与用户输入一起提供至DA服务器106,以帮助推断用户意图。在一些示例中,数字助理还可使用上下文信息来确定如何准备输出并将其递送给用户。上下文信息可被称为上下文数据。
在一些示例中,伴随用户输入的上下文信息可包括传感器信息,例如照明、环境噪声、环境温度、周围环境的图像或视频等。在一些示例中,上下文信息还可包括设备的物理状态,例如设备取向、设备位置、设备温度、功率电平、速度、加速度、运动模式、蜂窝信号强度等。在一些示例中,可将与DA服务器106的软件状态相关的信息(例如运行过程、已安装程序、过去和当前的网络活动、后台服务、错误日志、资源使用等)和与便携式多功能设备200的软件状态相关的信息作为与用户输入相关联的上下文信息提供至DA服务器106。
在一些示例中,数字助理客户端模块229可响应于来自DA服务器106的请求而选择性地提供被存储在便携式多功能设备200上的信息(例如,用户数据231)。在一些示例中,数字助理客户端模块229还可在DA服务器106请求时引出来自用户经由自然语言对话或其他用户接口的附加输入。数字助理客户端模块229可将该附加输入传送至DA服务器106,以帮助DA服务器106进行意图推断和/或满足在用户请求中表达的用户意图。
下面参考图7A至图7C对数字助理进行更详细的描述。应当认识到,数字助理客户端模块229可包括下文所述的数字助理模块726的任何数量的子模块。
应用程序236可包括以下模块(或指令集),或者其子集或超集:
·联系人模块237(有时被叫做通讯录或联系人列表);
·电话模块238;
·视频会议模块239;
·电子邮件客户端模块240;
·即时消息(IM)模块241;
·健身支持模块242;
·用于静态图像和/或视频图像的相机模块243;
·图像管理模块244;
·视频播放器模块;
·音乐播放器模块;
·浏览器模块247;
·日历模块248;
·桌面小程序模块249,其可包括以下各项中的一者或多者:天气桌面小程序249-1、股市桌面小程序249-2、计算器桌面小程序249-3、闹钟桌面小程序249-4、词典桌面小程序249-5、和由用户获取的其他桌面小程序、以及用户创建的桌面小程序249-6;
·用于制作用户创建的桌面小程序249-6的桌面小程序创建器模块250;
·搜索模块251;
·视频和音乐播放器模块252,其合并视频播放器模块和音乐播放器模块;
·记事本模块253;
·地图模块254;和/或
·在线视频模块255。
可被存储在存储器202中的其他应用程序236的示例包括其他文字处理应用程序、其他图像编辑应用程序、绘图应用程序、呈现应用程序、支持JAVA的应用程序、加密、数字权益管理、语音识别和语音复制。
结合触摸屏212、显示控制器256、接触/运动模块230、图形模块232、和文本输入模块234,联系人模块237可用于管理通讯录或联系人列表(例如,存储在存储器202或存储器470中的联系人模块237的应用程序内部状态292中),包括:将一个或多个姓名添加到通讯录;从通讯录删除一个或多个姓名;使一个或多个电话号码、一个或多个电子邮件地址、一个或多个物理地址或其他信息与姓名相关联;使图像与姓名相关联;对姓名进行分类和归类;提供电话号码或电子邮件地址来发起和/或促进通过电话238、视频会议模块239、电子邮件240或即时消息241的通信;等等。
结合RF电路208、音频电路210、扬声器211、麦克风213、触摸屏212、显示控制器256、接触/运动模块230、图形模块232和文本输入模块234,电话模块238可用于输入对应于电话号码的字符序列、访问联系人模块237中的一个或多个电话号码、修改已输入的电话号码、拨打相应的电话号码、进行会话以及当会话完成时断开或挂断。如上所述,无线通信可使用多个通信标准、协议和技术中的任一者。
结合RF电路208、音频电路210、扬声器211、麦克风213、触摸屏212、显示控制器256、光学传感器264、光学传感器控制器258、接触/运动模块230、图形模块232、文本输入模块234、联系人模块237和电话模块238,视频会议模块239包括根据用户指令来发起、进行和终止用户与一个或多个其他参与方之间的视频会议的可执行指令。
结合RF电路208、触摸屏212、显示控制器256、接触/运动模块230、图形模块232和文本输入模块234,电子邮件客户端模块240包括响应于用户指令来创建、发送、接收和管理电子邮件的可执行指令。结合图像管理模块244,电子邮件客户端模块240使得非常容易创建和发送具有由相机模块243拍摄的静态图像或视频图像的电子邮件。
结合RF电路208、触摸屏212、显示控制器256、接触/运动模块230、图形模块232和文本输入模块234,即时消息模块241包括用于以下操作的可执行指令:输入与即时消息对应的字符序列、修改先前输入的字符、传输相应即时消息(例如,使用短消息服务(SMS)或多媒体消息服务(MMS)协议以用于基于电话的即时消息或者使用XMPP、SIMPLE或IMPS以用于基于互联网的即时消息)、接收即时消息以及查看所接收的即时消息。在一些实施方案中,所传输的和/或所接收的即时消息可包括图形、照片、音频文件、视频文件和/或在MMS和/或增强型消息服务(EMS)中支持的其他附件。如本文所用,“即时消息”是指基于电话的消息(例如,使用SMS或MMS发送的消息)和基于互联网的消息(例如,使用XMPP、SIMPLE、或IMPS发送的消息)两者。
结合射频电路208、触摸屏212、显示器控制器256、接触模块230、图形模块232、文本输入模块234、GPS模块235、地图模块254和音乐播放器模块146,健身支持模块242包括用于以下各项的可执行指令:创建健身(例如,具有时间、距离和/或卡路里燃烧目标);与健身传感器(运动设备)进行通信;接收健身传感器数据;校准用于监视健身的传感器;选择和播放用于健身的音乐;以及显示、存储和传输健身数据。
结合触摸屏212、显示控制器256、一个或多个光学传感器264、光学传感器控制器258、接触/运动模块230、图形模块232和图像管理模块244,相机模块243包括用于以下操作的可执行指令:捕获静态图像或视频(包括视频流)并且将它们存储到存储器202中、修改静态图像或视频的特征,或从存储器202删除静态图像或视频。
结合触摸屏212、显示控制器256、接触/运动模块230、图形模块232、文本输入模块234和相机模块243,图像管理模块244包括用于以下操作的可执行指令:排列、修改(例如,编辑),或以其他方式操控、加标签、删除、呈现(例如,在数字幻灯片或相册中),以及存储静态图像和/或视频图像。
结合RF电路208、触摸屏212、显示控制器256、接触/运动模块230、图形模块232和文本输入模块234,浏览器模块247包括根据用户指令来浏览互联网(包括搜索、链接至、接收和显示网页或其部分,以及链接至网页的附件和其他文件)的可执行指令。
结合RF电路208、触摸屏212、显示控制器256、接触/运动模块230、图形模块232、文本输入模块234、电子邮件客户端模块240和浏览器模块247,日历模块248包括根据用户指令来创建、显示、修改和存储日历以及与日历相关联的数据(例如,日历条目、待办事项等)的可执行指令。
结合RF电路208、触摸屏212、显示控制器256、接触/运动模块230、图形模块232、文本输入模块234和浏览器模块247,桌面小程序模块249是可由用户下载并使用的微型应用程序(例如,天气桌面小程序249-1、股市桌面小程序249-2、计算器桌面小程序249-3、闹钟桌面小程序249-4和词典桌面小程序249-5)、或由用户创建的微型应用程序(例如,用户创建的桌面小程序249-6)。在一些实施方案中,桌面小程序包括HTML(超文本标记语言)文件、CSS(层叠样式表)文件和JavaScript文件。在一些实施方案中,桌面小程序包括XML(可扩展标记语言)文件和、JavaScript文件(例如,Yahoo!桌面小程序)。
结合RF电路208、触摸屏212、显示控制器256、接触/运动模块230、图形模块232、文本输入模块234和浏览器模块247,桌面小程序创建器模块250可被用户用于创建桌面小程序(例如,将网页的用户指定部分转到桌面小程序中)。
结合触摸屏212、显示控制器256、接触/运动模块230、图形模块232和文本输入模块234,搜索模块251包括用于根据用户指令来搜索存储器202中的匹配一个或多个搜索条件(例如,一个或多个用户指定的搜索词)的文本、音乐、声音、图像、视频和/或其他文件的可执行指令。
结合触摸屏212、显示控制器256、接触/运动模块230、图形模块232、音频电路***210、扬声器211、RF电路***208和浏览器模块247,视频和音乐播放器模块252包括允许用户下载和回放以一种或多种文件格式(诸如MP3或AAC文件)存储的所记录的音乐和其他声音文件的可执行指令,以及用于显示、呈现或以其他方式回放视频(例如,在触摸屏212上或在经由外部端口224连接的外部显示器上)的可执行指令。在一些实施方案中,设备200任选地包括MP3播放器诸如iPod(Apple Inc.的商标)的功能。
结合触摸屏212、显示控制器256、接触/运动模块230、图形模块232和文本输入模块234,记事本模块253包括根据用户指令来创建和管理记事本、待办事项等的可执行指令。
结合RF电路208、触摸屏212、显示控制器256、接触/运动模块230、图形模块232、文本输入模块234、GPS模块235和浏览器模块247,地图模块254可用于根据用户指令来接收、显示、修改和存储地图以及与地图相关联的数据(例如,驾驶方向、与特定位置处或其附近的商店及其他兴趣点相关的数据,以及其他基于位置的数据)。
结合触摸屏212、显示控制器256、接触/运动模块230、图形模块232、音频电路210、扬声器211、RF电路208、文本输入模块234、电子邮件客户端模块240和浏览器模块247,在线视频模块255包括允许用户访问、浏览、接收(例如,通过流式传输和/或下载)、回放(例如,在触摸屏上或经由外部端口224在所连接的外部显示器上)、发送具有至特定在线视频的链接的电子邮件,以及以其他方式管理一种或多种文件格式(诸如,H.264)的在线视频的指令。在一些实施方案中,即时消息模块241而不是电子邮件客户端模块240用于发送至特定在线视频的链接。在线视频应用程序的附加描述可在于2007年6月20日提交的标题为“Portable Multifunction Device,Method,and Graphical User Interface forPlaying Online Videos”的美国临时专利申请60/936,562、和于2007年12月31日提交的标题为“Portable Multifunction Device,Method,and Graphical User Interface forPlaying Online Videos”的美国专利申请11/968,067中找到,这两个专利申请的内容据此全文以引用方式并入本文。
上述模块和应用程序中的每个模块和应用程序对应于用于执行上述一种或多种功能以及在该专利申请中所述的方法(例如,本文所述的计算机实现的方法和其他信息处理方法)的可执行指令集。这些模块(例如,指令集)不必被实现为独立的软件程序、过程或模块,并因此在各种实施方案中可组合或以其他方式重新布置这些模块的各种子集。例如,视频播放器模块可与音乐播放器模块组合成单个模块(例如,图2A中的视频和音乐播放器模块252)。在一些实施方案中,存储器202可存储上文识别的模块和数据结构的子集。此外,存储器202可存储上文没有描述的附加模块和数据结构。
在一些实施方案中,设备200是唯一地通过触摸屏和/或触摸板来执行设备上的预定义的一组功能的操作的设备。通过使用触摸屏和/或触摸板作为用于设备200的操作的主要输入控制设备,可减少设备200上的物理输入控制设备(诸如下压按钮、拨号盘等等)的数量。
唯一地通过触摸屏和/或触摸板执行的该预定义的一组功能任选地包括在用户界面之间进行导航。在一些实施方案中,触摸板在被用户触摸时将设备200从被显示在设备200上的任何用户界面导航到主菜单、home菜单或根菜单。在此类实施方案中,使用触摸板来实现“菜单按钮”。在一些其他实施方案中,菜单按钮是物理下压按钮或者其他物理输入控制设备,而不是触摸板。
图2B是示出了根据一些实施方案的用于事件处理的示例性部件的框图。在一些实施方案中,存储器202(图2A)或存储器470(图4)包括事件分类器270(例如,在操作***226中)以及相应的应用程序236-1(例如,前述应用程序237至251、255、480至490中的任一个应用程序)。
事件分类器270接收事件信息并确定要将事件信息递送到的应用程序236-1和应用程序236-1的应用程序视图291。事件分类器270包括事件监视器271和事件分配器模块274。在一些实施方案中,应用程序236-1包括应用程序内部状态292,该应用程序内部状态指示当应用程序是活动的或正在执行时被显示在触敏显示器212上的一个或多个当前应用程序视图。在一些实施方案中,设备/全局内部状态257被事件分类器270用于确定哪个(哪些)应用程序当前是活动的,并且应用程序内部状态292被事件分类器270用于确定要将事件信息递送到的应用程序视图291。
在一些实施方案中,应用程序内部状态292包括附加信息,诸如以下各项中的一者或多者:当应用程序236-1恢复执行时将被使用的恢复信息、指示正被应用程序236-1显示的信息或准备好用于被该应用程序显示的信息的用户界面状态信息、用于使得用户能够返回到应用程序236-1的前一状态或视图的状态队列以及用户采取的先前动作的重复/撤销队列。
事件监视器271从***设备接口218接收事件信息。事件信息包括关于子事件(例如,作为多点触摸手势一部分的触敏显示器212上的用户触摸)的信息。***设备接口218传输其从I/O子***206或传感器诸如接近传感器266、加速度计268和/或麦克风213(通过音频电路210)接收的信息。***设备接口218从I/O子***206接收的信息包括来自触敏显示器212或触敏表面的信息。
在一些实施方案中,事件监视器271以预定的间隔将请求发送至***设备接口218。作为响应,***设备接口218传输事件信息。在其他实施方案中,***设备接口218仅当存在显著事件(例如,接收到高于预先确定的噪声阈值和/或接收到超过预先确定的持续时间的输入)时才传输事件信息。
在一些实施方案中,事件分类器270还包括命中视图确定模块272和/或活动事件识别器确定模块273。
当触敏显示器212显示多于一个视图时,命中视图确定模块272提供用于确定子事件已在一个或多个视图内的何处发生的软件过程。视图由用户可在显示器上看到的控件和其他元素构成。
与应用程序相关联的用户界面的另一方面为一组视图,在本文中有时也被称为应用程序视图或用户界面窗口,在其中显示信息并且发生基于触摸的手势。在其中检测到触摸的(相应应用程序的)应用程序视图可对应于应用程序的程序化或视图分级结构内的程序化水平。例如,在其中检测到触摸的最低层级视图可被叫做命中视图,并且被识别为正确输入的那组事件可至少部分地基于开始基于触摸的手势的初始触摸的命中视图来确定。
点击视图确定模块272接收与基于接触的手势的子事件相关的信息。当应用程序具有在分级结构中组织的多个视图时,命中视图确定模块272将命中视图识别为应对子事件进行处理的分级结构中的最低视图。在大多数情况下,命中视图是发起子事件(例如,形成事件或潜在事件的子事件序列中的第一子事件)在其中发生的最低水平视图。一旦命中视图被命中视图确定模块272识别,命中视图便通常接收与其被识别为命中视图所针对的同一触摸或输入源相关的所有子事件。
活动事件识别器确定模块273确定视图分级结构内的哪个或哪些视图应接收特定子事件序列。在一些实施方案中,活动事件识别器确定模块273确定仅命中视图才应接收特定子事件序列。在其他实施方案中,活动事件识别器确定模块273确定包括子事件的物理位置的所有视图都是活跃参与的视图,因此确定所有活跃参与的视图都应接收特定子事件序列。在其他实施方案中,即使触摸子事件完全被局限到与一个特定视图相关联的区域,但在分级结构中较高的视图将仍然保持为活跃参与的视图。
事件分配器模块274将事件信息分配到事件识别器(例如,事件识别器280)。在包括活动事件识别器确定模块273的实施例中,事件分配器模块274将事件信息递送到由活动事件识别器确定模块273确定的事件识别器。在一些实施方案中,事件分配器模块274在事件队列中存储事件信息,该事件信息由相应事件接收器282进行检索。
在一些实施方案中,操作***226包括事件分类器270。另选地,应用程序236-1包括事件分类器270。在另一个实施方案中,事件分类器270是独立的模块,或者是被存储在存储器202中的另一模块(诸如接触/运动模块230)的一部分。
在一些实施方案中,应用程序236-1包括多个事件处理程序290和一个或多个应用程序视图291,其中每个应用程序视图包括用于处理发生在应用程序的用户界面的相应视图内的触摸事件的指令。应用程序236-1的每个应用程序视图291包括一个或多个事件识别器280。通常,相应应用程序视图291包括多个事件识别器280。在其他实施方案中,事件识别器280中的一个或多个是独立模块的一部分,该独立模块诸如是用户界面工具包(未示出)或应用程序236-1从中继承方法和其他属性的更高水平的对象。在一些实施方案中,相应事件处理程序290包括以下各项中的一者或多者:数据更新器276、对象更新器277、GUI更新器278、和/或从事件分类器270接收的事件数据279。事件处理程序290可利用或调用数据更新器276、对象更新器277或GUI更新器278,以更新应用程序内部状态292。作为另外一种选择,应用程序视图291中的一个或多个应用程序视图包括一个或多个相应事件处理程序290。另外,在一些实施方案中,数据更新器276、对象更新器277和GUI更新器278中的一者或多者被包括在相应应用程序视图291中。
相应的事件识别器280从事件分类器270接收事件信息(例如,事件数据279),并且从事件信息识别事件。事件识别器280包括事件接收器282和事件比较器284。在一些实施方案中,事件识别器280还至少包括元数据283和事件递送指令288(其可包括子事件递送指令)的子集。
事件接收器282接收来自事件分类器270的事件信息。该事件信息包括关于子事件例如触摸或触摸移动的信息。根据子事件,该事件信息还包括附加信息,诸如子事件的位置。当子事件涉及触摸的运动时,事件信息还可包括子事件的速率和方向。在一些实施方案中,事件包括设备从一个取向旋转到另一取向(例如,从纵向取向到横向取向,或反之亦然)的旋转,并且事件信息包括关于设备的当前取向(也被称为设备姿态)的对应信息。
事件比较器284将事件信息与预定义的事件或子事件定义进行比较,并且基于该比较,确定事件或子事件,或者确定或更新事件或子事件的状态。在一些实施方案中,事件比较器284包括事件定义286。事件定义286包含事件的定义(例如,预定义的子事件序列),例如事件1(287-1)、事件2(287-2)以及其他事件。在一些实施方案中,事件(287)中的子事件例如包括触摸开始、触摸结束、触摸移动、触摸取消和多点触摸。在一个实施例中,事件1(287-1)的定义是在被显示对象上的双击。例如,双击包括被显示对象上的预先确定时长的第一次触摸(触摸开始)、预先确定时长的第一次抬离(触摸结束)、被显示对象上的预先确定时长的第二次触摸(触摸开始)、以及预先确定时长的第二次抬离(触摸结束)。在另一个实施例中,事件2(287-2)的定义是在所显示对象上的拖动。例如,拖动包括所显示对象上的预定时长的触摸(或接触)、触摸在触敏显示器212上的移动以及触摸的抬起(触摸结束)。在一些实施方案中,事件还包括用于一个或多个相关联的事件处理程序290的信息。
在一些实施方案中,事件定义287包括对用于相应用户界面对象的事件的定义。在一些实施方案中,事件比较器284执行命中测试,以确定哪个用户界面对象与子事件相关联。例如,在触敏显示器212上显示三个用户界面对象的应用程序视图中,当在触敏显示器212上检测到触摸时,事件比较器284执行命中测试以确定这三个用户界面对象中的哪一个用户界面对象与该触摸(子事件)相关联。如果每个所显示的对象与相应的事件处理程序290相关联,则事件比较器使用该命中测试的结果,以确定哪个事件处理程序290应当被激活。例如,事件比较器284选择与子事件和触发该命中测试的对象相关联的事件处理程序。
在一些实施方案中,相应事件(287)的定义还包括延迟动作,该延迟动作延迟事件信息的递送,直到已确定子事件序列是否确实对应于或不对应于事件识别器的事件类型。
当相应事件识别器280确定子事件序列不与事件定义286中的任何事件匹配时,该相应事件识别器280进入事件不可能、事件失败或事件结束状态,在此之后忽略基于触摸的手势的后续子事件。在这种情况下,对于命中视图保持活动的其他事件识别器(如果有的话)继续跟踪并处理持续进行的基于触摸的手势的子事件。
在一些实施方案中,相应事件识别器280包括具有指示事件递送***应该如何执行对活跃参与的事件识别器的子事件递送的可配置属性、标志、和/或列表的元数据283。在一些实施方案中,元数据283包括用于指示事件识别器可如何彼此进行交互或者如何被启用以彼此进行交互的可配置属性、标志和/或列表。在一些实施方案中,元数据283包括用于指示子事件是否被递送到视图或程序化分级结构中的不同层级的可配置属性、标记和/或列表。
在一些实施方案中,当事件的一个或多个特定子事件被识别时,相应事件识别器280激活与事件相关联的事件处理程序290。在一些实施方案中,相应事件识别器280将与该事件相关联的事件信息递送到事件处理程序290。激活事件处理程序290不同于将子事件发送(和延期发送)到相应命中视图。在一些实施方案中,事件识别器280抛出与所识别的事件相关联的标记,并且与该标记相关联的事件处理程序290获取该标记并执行预定义的过程。
在一些实施方案中,事件递送指令288包括递送关于子事件的事件信息而无需激活事件处理程序的子事件递送指令。相反,子事件递送指令将事件信息递送到与子事件系列相关联的事件处理程序或递送到活跃参与的视图。与子事件系列或与活跃参与的视图相关联的事件处理程序接收事件信息并执行预先确定的过程。
在一些实施方案中,数据更新器276创建并更新在应用程序236-1中使用的数据。例如,数据更新器276对联系人模块237中所使用的电话号码进行更新,或者对视频播放器模块中所使用的视频文件进行存储。在一些实施方案中,对象更新器277创建和更新在应用程序236-1中使用的对象。例如,对象更新器277创建新用户界面对象或更新用户界面对象的位置。GUI更新器278更新GUI。例如,GUI更新器278准备显示信息并将其发送到图形模块232以用于在触敏显示器上显示。
在一些实施方案中,一个或多个事件处理程序290包括数据更新器276、对象更新器277和GUI更新器278或者具有对该数据更新器、该对象更新器和该GUI更新器的访问权限。在一些实施方案中,数据更新器276、对象更新器277和GUI更新器278被包括在相应应用程序236-1或应用程序视图291的单个模块中。在其他实施方案中,它们被包括在两个或更多个软件模块中。
应当理解,关于触敏显示器上的用户触摸的事件处理的上述论述还适用于利用输入设备来操作多功能设备200的其他形式的用户输入,并不是所有用户输入都是在触摸屏上发起的。例如,任选地与单次或多次键盘按压或保持协作的鼠标移动和鼠标按钮按压;触控板上的接触移动,诸如轻击、拖拽、滚动等;触笔输入;设备的移动;口头指令;检测到的眼睛移动;生物特征输入;和/或它们的任何组合任选地被用作与限定要识别的事件的子事件对应的输入。
图3示出了根据一些实施方案的具有触摸屏212的便携式多功能设备200。触摸屏任选地在用户界面(UI)300内显示一个或多个图形。在本实施方案中以及在下文中描述的其他实施方案中,用户能够通过例如利用一个或多个手指302(在附图中没有按比例绘制)或者一个或多个触笔303(在附图中没有按比例绘制)在图形上作出手势来选择这些图形中的一个或多个图形。在一些实施方案中,当用户中断与一个或多个图形的接触时,将发生对一个或多个图形的选择。在一些实施方案中,手势任选地包括一次或多次轻击、一次或多次轻扫(从左向右、从右向左、向上和/或向下)和/或已与设备200发生接触的手指的滚动(从右向左、从左向右、向上和/或向下)。在一些具体实施中或在一些情况下,不经意地与图形接触不会选择图形。例如,当与选择对应的手势为轻击时,在应用程序图标上方扫动的轻扫手势任选地不会选择对应应用程序。
设备200还可包括一个或多个物理按钮,诸如“home”或菜单按钮304。如前所述,菜单按钮304可用于导航到可在设备200上执行的一组应用程序中的任何应用程序236。作为另外一种选择,在一些实施例中,菜单按钮被实现为被显示在触摸屏212上的GUI中的软键。
在一个实施方案中,设备200包括触摸屏212、菜单按钮304、用于使设备通电/断电和用于锁定设备的下压按钮306、一个或多个音量调节按钮308、用户身份模块(SIM)卡槽310、耳麦插孔312、和对接/充电外部端口224。下压按钮306任选地用于通过压下该按钮并且将该按钮保持在压下状态预定义的时间间隔来对设备进行开/关机;通过压下该按钮并在该预定义的时间间隔过去之前释放该按钮来锁定设备;和/或对设备进行解锁或发起解锁过程。在另选的实施方案中,设备200还通过麦克风213来接受用于激活或去激活某些功能的口头输入。设备200还任选地包括用于检测触摸屏212上的接触的强度的一个或多个接触强度传感器265,和/或用于为设备200的用户生成触觉输出的一个或多个触觉输出发生器267。
图4是根据一些实施方案的具有显示器和触敏表面的示例性多功能设备的框图。设备400不必是便携式的。在一些实施方案中,设备400是膝上型计算机、台式计算机、平板电脑、多媒体播放器设备、导航设备、教育设备(诸如儿童学习玩具)、游戏***、或控制设备(例如,家用控制器或工业用控制器)。设备400通常包括一个或多个处理单元(CPU)410、一个或多个网络或其他通信接口460、存储器470和用于使这些部件互连的一个或多个通信总线420。通信总线420任选地包括使***部件互连并且控制***部件之间的通信的电路(有时称为芯片组)。设备400包括具有显示器440的输入/输出(I/O)接口430,该显示器通常是触摸屏显示器。I/O接口430还任选地包括键盘和/或鼠标(或其他指向设备)450和触摸板455、用于在设备400上生成触觉输出的触觉输出发生器457(例如,类似于以上参考图2A所述的触觉输出发生器267)、传感器459(例如,光学传感器、加速度传感器、接近传感器、触敏传感器和/或一个或多个接触强度传感器(类似于以上参考图2A所述的接触强度传感器265))。存储器470包括高速随机存取存储器,诸如DRAM、SRAM、DDR RAM或其它随机存取固态存储器设备;并且任选地包括非易失性存储器,诸如一个或多个磁盘存储设备、光盘存储设备、闪存设备、或其他非易失性固态存储设备。存储器470任选地包括远离一个或多个CPU410定位的一个或多个存储设备。在一些实施方案中,存储器470存储与在便携式多功能设备200(图2A)的存储器202中所存储的程序、模块和数据结构类似的程序、模块和数据结构,或它们的子集。此外,存储器470任选地存储在便携式多功能设备200的存储器202中不存在的附加程序、模块和数据结构。例如,设备400的存储器470任选地存储绘图模块480、呈现模块482、文字处理模块484、网站创建模块486、盘编辑模块488和/或电子表格模块490,而便携式多功能设备200(图2A)的存储器202任选地不存储这些模块。
图4中的上述元素中的每个元素可存储在一个或多个前面提及的存储器设备中。上述模块中的每个模块与用于执行上述功能的指令集对应。上述模块或程序(例如,指令集)不必被实现为单独的软件程序、过程或模块,并且因此这些模块的各种子集可在各种实施方案中被组合或以其他方式重新布置。在一些实施方案中,存储器470可存储上文识别的模块和数据结构的子集。此外,存储器470可存储上文没有描述的附加模块和数据结构。
现在将注意力转向可在例如便携式多功能设备200上实现的用户界面的实施方案。
图5A示出了根据一些实施方案的便携式多功能设备200上的应用程序菜单的示例性用户界面。类似的用户界面可在设备400上实现。在一些实施方案中,用户界面500包括以下元素或者其子集或超集:
一种或多种无线通信诸如蜂窝信号和Wi-Fi信号的一个或多个信号强度指示器502;
·时间504;
·蓝牙指示器505;
·电池状态指示器506;
·具有常用应用程序图标的托盘508,图标诸如:
○电话模块238的被标记为“电话”的图标516,该图标任选地包括未接来电或语音留言的数量的指示符514;
○电子邮件客户端模块240的被标记为“邮件”的图标518,该图标任选地包括未读电子邮件的数量的指示符510;
○浏览器模块247的被标记为“浏览器”的图标520;和
○视频和音乐播放器模块252(也被称为iPod(Apple Inc.的商标)模块252)的被标记为“iPod”的图标522;和
·其他应用程序的图标,诸如:
○IM模块241的被标记为“消息”的图标524;
○日历模块248的被标记为“日历”的图标526;
○图像管理模块244的被标记为“照片”的图标528;
○相机模块243的被标记为“相机”的图标530;
○在线视频模块255的被标记为“在线视频”的图标532;
○股市桌面小程序249-2的被标记为“股市”的图标534;
○地图模块254的被标记为“地图”的图标536;
○天气桌面小程序249-1的被标记为“天气”的图标538;
○闹钟桌面小程序249-4的被标记为“时钟”的图标540;
○健身支持模块242的被标记为“健身支持”的图标542;
○记事本模块253的被标记为“记事本”的图标544;和
○用于设置应用程序或模块的被标记为“设置”的图标546,该图标提供对设备200及其各种应用程序236的设置的访问。
应当指示的是,图5A中示出的图标标签仅是示例性的。例如,视频和音乐播放器模块252的图标522可任选地被标记为“音乐”或“音乐播放器”。其他标签任选地用于各种应用图标。在一些实施方案中,相应应用图标的标签包括与该相应应用图标对应的应用程序的名称。在一些实施方案中,特定应用程序图标的标签不同于与该特定应用程序图标对应的应用程序的名称。
图5B示出了具有与显示器550(例如,触摸屏显示器212)分开的触敏表面551(例如,图4的平板电脑或触摸板455)的设备(例如,图4的设备400)上的示例性用户界面。设备400还任选地包括用于检测触敏表面551上的接触的强度的一个或多个接触强度传感器(例如,传感器457中的一个或多个),和/或用于为设备400的用户生成触觉输出的一个或多个触觉输出发生器459。
尽管将参考触摸屏显示器212(其中组合了触敏表面和显示器)上的输入给出随后的示例中的一些示例,但是在一些实施方案中,设备检测与显示器分开的触敏表面上的输入,如图5B所示。在一些实施方案中,触敏表面(例如,图5B中的551)具有与显示器(例如,550)上的主轴(例如,图5B中的553)对应的主轴(例如,图5B中的552)。根据这些实施方案,设备检测在与显示器上的相应位置对应的位置(例如,在图5B中,560对应于568并且562对应于570)处的与触敏表面551的接触(例如,图5B中的560和562)。这样,在触敏表面(例如,图5B中的551)与多功能设备的显示器(图5B中的550)分开时,由设备在触敏表面上检测到的用户输入(例如,接触560和562以及它们的移动)被该设备用于操纵显示器上的用户界面。应当理解,类似的方法任选地用于本文所述的其他用户界面。
另外,虽然主要是参考手指输入(例如,手指接触、单指轻击手势、手指轻扫手势)来给出下面的示例,但是应当理解,在一些实施方案中,这些手指输入中的一个或多个手指输入由来自另一输入设备的输入(例如,基于鼠标的输入或触笔输入)替代。例如,轻扫手势任选地由鼠标点击(例如,而不是接触),之后是光标沿轻扫的路径的移动(例如,而不是接触的移动)来代替。又如,轻击手势任选地由在光标位于轻击手势的位置上方时的鼠标点击(例如,而不是对接触的检测,以及之后的停止检测接触)来代替。类似地,当同时检测到多个用户输入时,应当理解,多个计算机鼠标任选地被同时使用,或鼠标和手指接触任选地被同时使用。
图6A示出了示例性个人电子设备600。设备600包括主体602。在一些实施方案中,设备600可包括针对设备200和400(例如,图2A至图4B)所述的特征中的一些或全部特征。在一些实施方案中,设备600具有在下文中称为触摸屏604的触敏显示屏604。另选地,或作为触摸屏604的补充,设备600具有显示器和触敏表面。与设备200和设备400的情况一样,在一些实施方案中,触摸屏604(或触敏表面)可具有用于检测正施加的接触(例如,触摸)强度的一个或多个强度传感器。触摸屏604(或触敏表面)的一个或多个强度传感器可提供表示触摸的强度的输出数据。设备600的用户界面可基于触摸强度来对触摸作出响应,这意味着不同强度的触摸可调用设备600上的不同用户界面操作。
用于检测和处理触摸强度的技术可存在于相关申请中:例如于2013年5月8日提交的标题为“Device,Method,and Graphical User Interface for Displaying UserInterface Objects Corresponding to an Application”的国际专利申请序列PCT/US2013/040061,以及于2013年11月11日提交的标题为“Device,Method,and GraphicalUser Interface for Transitioning Between Touch Input to Display OutputRelationships”的国际专利申请序列PCT/US2013/069483,这两个专利申请中的每个专利申请据此全文以引用方式并入本文。
在一些实施方案中,设备600具有一个或多个输入机构606和608。输入机构606和608(如果包括的话)可以是物理形式的。物理输入机构的示例包括下压按钮和可旋转机构。在一些实施方案中,设备600具有一个或多个附接机构。此类附接机构(如果包括的话)可允许将设备600与例如帽子、眼镜、耳环、项链、衬衣、夹克、手镯、表带、手链、裤子、腰带、鞋子、钱包、背包等附接。这些附接机构可允许用户穿戴设备600。
图6B示出了示例性个人电子设备600。在一些实施方案中,设备600可包括参考图2A、图2B和图4所述的部件中的一些或全部部件。设备600具有总线612,该总线将I/O部分614与一个或多个计算机处理器616和存储器618操作性地耦接。I/O部分614可连接到显示器604,该显示器可具有触敏部件622并且任选地具有触摸强度敏感部件624。此外,I/O部分614可连接到通信单元630,以用于使用Wi-Fi、蓝牙、近场通信(NFC)、蜂窝和/或其他无线通信技术来接收应用程序和操作***数据。设备600可包括输入机构606和/或608。例如,输入机构606可以是可旋转输入设备或者可按压且可旋转输入设备。在一些示例中,输入机构608可以是按钮。
在一些示例中,输入机构608可以是麦克风。个人电子设备600可包括各种传感器,诸如GPS传感器632、加速度计634、定向传感器640(例如,罗盘)、陀螺仪636、运动传感器638和/或其组合,所有这些设备均可操作地连接到I/O部分614。
个人电子设备600的存储器618可以是用于存储计算机可执行指令的非暂态计算机可读存储介质,该计算机可执行指令当由一个或多个计算机处理器616执行时,例如可使得计算机处理器执行下文描述的包括过程900(图8A至图8G)的技术。该计算机可执行指令还可以在任何非暂态计算机可读存储介质内进行存储和/或传输,以供指令执行***、装置或设备诸如基于计算机的***、包括处理器的***或可从指令执行***、装置或设备获取指令并执行指令的其他***使用或与其结合。对于本文的目的而言,“非暂态计算机可读存储介质”可以是可有形地包含或存储计算机可执行指令以供指令执行***、装置和设备使用或与其结合的任何介质。非暂态计算机可读存储介质可包括但不限于磁存储装置、光学存储装置、和/或半导体存储装置。此类存储装置的示例包括磁盘、基于CD、DVD或Blu-ray技术的光盘、以及持久性固态存储器(诸如闪存、固态驱动器)等。个人电子设备600不限于图6B的部件和配置,而是可包括多种配置的其他部件或附加部件。
如本文所用,术语“示能表示”是指可在设备200,400和/或600(图2、图4和图6)的显示屏上显示的用户交互式图形用户界面对象。例如,图像(例如,图标)、按钮和文本(例如,超链接)可各自构成示能表示。
如本文所用,术语“焦点选择器”是指用于指示用户正与其进行交互的用户界面的当前部分的输入元素。在包括光标或其他位置标记的一些具体实施中,光标充当“焦点选择器”,使得在光标在特定用户界面元素(例如,按钮、窗口、滑块或其他用户界面元素)上方时在触敏表面(例如,图4中的触控板455或图5B中的触敏表面551)上检测到输入(例如,按压输入)的情况下,该特定用户界面元素根据所检测到的输入而被调节。在包括能够实现与触摸屏显示器上的用户界面元素的直接交互的触摸屏显示器(例如,图2A中的触敏显示***212或图5A中的触摸屏212)的一些具体实施中,触摸屏上所检测到的接触充当“焦点选择器”,使得当在触摸屏显示器上在特定用户界面元素(例如,按钮、窗口、滑块或其他用户界面元素)的位置处检测到输入(例如,由接触进行的按压输入)时,该特定用户界面元素根据所检测到的输入而被调节。在一些具体实施中,焦点从用户界面的一个区域移动到用户界面的另一个区域,而无需光标的对应移动或触摸屏显示器上的接触的移动(例如,通过使用制表键或箭头键将焦点从一个按钮移动到另一个按钮);在这些具体实施中,焦点选择器根据焦点在用户界面的不同区域之间的移动而移动。不考虑焦点选择器所采取的具体形式,焦点选择器通常是由用户控制的以便递送与用户界面的用户预期的交互(例如,通过向设备指示用户界面的用户期望与其进行交互的元素)的用户界面元素(或触摸屏显示器上的接触)。例如,在触敏表面(例如,触摸板或触摸屏)上检测到按压输入时,焦点选择器(例如,光标、接触或选择框)在相应按钮上方的位置将指示用户意图激活相应按钮(而不是设备的显示器上示出的其他用户界面元素)。
如说明书和权利要求书中所使用的,接触的“特征强度”这一术语是指基于接触的一个或多个强度的接触的特征。在一些实施方案中,该特征强度基于多个强度样本。特征强度任选地基于相对于预定义事件(例如,在检测到接触之后,在检测到接触抬离之前,在检测到接触开始移动之前或之后,在检测到接触结束之前,在检测到接触强度增大之前或之后和/或在检测到接触强度减小之前或之后)而言在预先确定的时间段(例如,0.05秒、0.1秒、0.2秒、0.5秒、1秒、2秒、5秒、10秒)期间采集的预定义数量的强度样本或一组强度样本。接触的特性强度任选地基于以下各项中的一者或多者:接触的强度的最大值、接触的强度的均值、接触的强度的平均值、接触的强度的前10%处的值、接触的强度的半最大值、接触的强度的90%最大值等。在一些实施方案中,在确定特征强度时使用接触的持续时间(例如,在特征强度为接触的强度在时间上的平均值时)。在一些实施方案中,将特征强度与一组一个或多个强度阈值进行比较,以确定用户是否已执行操作。例如,该组一个或多个强度阈值可包括第一强度阈值和第二强度阈值。在该示例中,特征强度未超过第一阈值的接触导致第一操作,特征强度超过第一强度阈值但未超过第二强度阈值的接触导致第二操作,并且特征强度超过第二阈值的接触导致第三操作。在一些实施方案中,使用特征强度与一个或多个阈值之间的比较来确定是否要执行一个或多个操作(例如,是执行相应操作还是放弃执行相应操作),而不是用于确定执行第一操作还是第二操作。
在一些实施方案中,识别手势的一部分,以用于确定特征强度。例如,触敏表面可接收连续的轻扫接触,该连续的轻扫接触从起始位置过渡并到达结束位置,在该结束位置处,接触的强度增加。在该示例中,接触在结束位置处的特征强度可仅基于连续轻扫接触的一部分,而不是整个轻扫接触(例如,仅结束位置处的轻扫接触的一部分)。在一些实施方案中,可在确定接触的特征强度之前向轻扫手势的强度应用平滑化算法。例如,该平滑化算法任选地包括以下各项中的一者或多者:不加权滑动平均平滑化算法、三角平滑化算法、中值滤波器平滑化算法、和/或指数平滑化算法。在一些情况下,这些平滑化算法消除了轻扫接触的强度中的窄的尖峰或凹陷,以用于确定特征强度。
可相对于一个或多个强度阈值诸如接触检测强度阈值、轻按压强度阈值、深按压强度阈值、和/或一个或多个其他强度阈值来表征触敏表面上的接触的强度。在一些实施方案中,轻按压强度阈值对应于这样的强度:在该强度下设备将执行通常与点击物理鼠标的按钮或触控板相关联的操作。在一些实施方案中,深按压强度阈值对应于这样的强度:在该强度下设备将执行与通常与点击物理鼠标或触控板的按钮相关联的操作不同的操作。在一些实施方案中,当检测到特征强度低于轻按压强度阈值(例如,并且高于标称接触检测强度阈值,比该标称接触检测强度阈值低的接触不再被检测到)的接触时,设备将根据接触在触敏表面上的移动来移动焦点选择器,而不执行与轻按压强度阈值或深按压强度阈值相关联的操作。一般来讲,除非另有陈述,否则这些强度阈值在不同组的用户界面附图之间为一致的。
接触的特征强度从低于轻按压强度阈值的强度增大到介于轻按压强度阈值与深按压强度阈值之间的强度有时被称为“轻按压”输入。接触特征强度从低于深按压强度阈值的强度增大到高于深按压强度阈值的强度有时被称为“深按压”输入。接触的特征强度从低于接触检测强度阈值的强度增大到介于接触检测强度阈值与轻按压强度阈值之间的强度有时被称为检测到触摸表面上的接触。接触的特征强度从高于接触检测强度阈值的强度减小到低于接触检测强度阈值的强度有时被称为检测到接触从触摸表面抬离。在一些实施方案中,接触检测强度阈值为零。在一些实施方案中,接触检测强度阈值大于零。
在本文中所述的一些实施方案中,响应于检测到包括相应按压输入的手势或响应于检测到利用相应接触(或多个接触)执行的相应按压输入来执行一个或多个操作,其中至少部分地基于检测到该接触(或多个接触)的强度增大到高于按压输入强度阈值而检测到相应按压输入。在一些实施方案中,响应于检测到相应接触强度增大到高于按压输入强度阈值(例如,相应按压输入的“向下冲程”)而执行相应操作。在一些实施方案中,按压输入包括相应接触强度增大到高于按压输入强度阈值以及该接触强度随后减小到低于按压输入强度阈值,并且响应于检测到相应接触强度随后减小到低于按压输入阈值(例如,相应按压输入的“向上冲程”)而执行相应操作。
在一些实施方案中,设备采用强度滞后以避免有时被称为“抖动”的意外输入,其中设备限定或选择与按压输入强度阈值具有预定义关系的滞后强度阈值(例如,滞后强度阈值比按压输入强度阈值低X个强度单位,或滞后强度阈值是按压输入强度阈值的75%、90%或某个合理比例)。因此,在一些实施方案中,按压输入包括相应接触强度增大到高于按压输入强度阈值以及该接触强度随后减小到低于与按压输入强度阈值对应的滞后强度阈值,并且响应于检测到相应接触强度随后减小到低于滞后强度阈值(例如,相应按压输入的“向上冲程”)而执行相应操作。类似地,在一些实施方案中,仅在设备检测到接触的强度从等于或低于滞后强度阈值的强度增大到等于或高于按压输入强度阈值的强度并且任选地接触的强度随后减小到等于或低于滞后强度的强度时才检测到按压输入,并且响应于检测到按压输入(例如,根据环境,接触的强度增大或接触的强度减小)来执行相应操作。
为了容易解释,任选地,响应于检测到以下各种情况中的任一种情况而触发对响应于与按压输入强度阈值相关联的按压输入或响应于包括按压输入的手势而执行的操作的描述:接触强度增大到高于按压输入强度阈值、接触强度从低于滞后强度阈值的强度增大到高于按压输入强度阈值的强度、接触强度减小到低于按压输入强度阈值、和/或接触强度减小到低于与按压输入强度阈值对应的滞后强度阈值。另外,在将操作描述为响应于检测到接触的强度减小到低于按压输入强度阈值而执行的示例中,任选地响应于检测到接触的强度减小到低于对应于并且小于按压输入强度阈值的滞后强度阈值来执行操作。
2.数字助理***
图7A示出根据各种示例的数字助理***700的框图。在一些示例中,数字助理***700可在独立式计算机***上实现。在一些示例中,数字助理***700可跨多个计算机分布。在一些示例中,数字助理的模块和功能中的一些模块和功能可被划分成服务器部分和客户端部分,其中客户端部分位于一个或多个用户设备(例如,设备104,122,200,400或600)上并通过一个或多个网络来与服务器部分(例如,服务器***108)进行通信,例如,如图1所示。在一些示例中,数字助理***700可以是图1中所示的服务器***108(和/或DA服务器106)的具体实施。应当指出的是,数字助理***700仅为数字助理***的一个示例,并且该数字助理***700可具有比所示更多或更少的部件、可组合两个或更多个部件,或者可具有部件的不同配置或布置。图7A中所示的各种部件可在硬件、用于由一个或多个处理器执行的软件指令、固件(包括一个或多个信号处理集成电路和/或专用集成电路)、或它们的组合中实现。
数字助理***700可包括存储器702、一个或多个处理器704、输入/输出(I/O)接口706、以及网络通信接口708。这些部件可通过一个或多个通信总线或信号线710彼此进行通信。
在一些示例中,存储器702可包括非暂态计算机可读介质,诸如高速随机存取存储器和/或非易失性计算机可读存储介质(例如,一个或多个磁盘存储设备、闪存存储器设备、或其他非易失性固态存储器设备)。
在一些示例中,I/O接口706可将数字助理***700的输入/输出设备716诸如显示器、键盘、触摸屏和麦克风耦接至用户界面模块722。与用户界面模块722结合的I/O接口706可接收用户输入(例如,声音输入、键盘输入、触摸输入等)并相应地对这些输入进行处理。在一些示例中,例如,当数字助理在独立式用户设备上实现时,数字助理***700可包括分别相对于图2A、图4、图6A-B中的设备200,400或600所描述的部件和I/O通信接口中的任一者。在一些示例中,数字助理***700可代表数字助理具体实施的服务器部分,并且可通过位于用户设备(例如,设备104,200,400或设备600)上的客户端侧部分来与用户进行交互。
在一些示例中,网络通信接口708可包括一个或多个有线通信端口712、和/或无线传输和接收电路714。一个或多个有线通信端口可经由一个或多个有线接口例如以太网、通用串行总线(USB)、火线等来接收和发送通信信号。无线电路714可从通信网络以及其他通信设备接收RF信号和/或光学信号,并且将RF信号和/或光学信号发送至通信网络以及其他通信设备。无线通信可使用多种通信标准、协议和技术中的任一者,诸如GSM、EDGE、CDMA、TDMA、蓝牙、Wi-Fi、VoIP、Wi-MAX、或任何其他合适的通信协议。网络通信接口708可使得数字助理***700通过网络诸如互联网、内联网和/或无线网络(诸如蜂窝电话网络、无线局域网(LAN)和/或城域网(MAN))与其他设备之间的通信成为可能。
在一些示例中,存储器702或存储器702的计算机可读存储介质可存储程序、模块、指令和数据结构,包括以下内容中的全部或其子集:操作***718、通信模块720、用户界面模块722、一个或多个应用程序724、和数字助理模块726。具体地,存储器702或存储器702的计算机可读存储介质可存储用于执行下文描述的方法900的指令。一个或多个处理器704可执行这些程序、模块和指令,并从数据结构读取数据或将数据写到数据结构。
操作***718(例如,Darwin、RTXC、LINUX、UNIX、OS X、WINDOWS,或嵌入式操作***诸如VxWorks)可包括用于控制和管理一般***任务(例如,存储器管理、存储设备控制、电源管理等)的各种软件部件和/或驱动器,并且促进各种硬件、固件和软件部件之间的通信。
通信模块720可促进数字助理***700与其他设备之间的通过网络通信接口708进行的通信。例如,通信模块720可与电子设备(诸如,分别在图2A、图4、图6A-B中示出的设备200,400和600)的RF电路208进行通信。通信模块720还可包括用于处理由无线电路714和/或有线通信端口712所接收的数据的各种部件。
用户界面模块722可经由I/O接口706来接收来自用户(例如,来自键盘、触摸屏、指向设备、控制器和/或麦克风)的命令和/或输入,并在显示器上生成用户界面对象。用户界面模块722还可准备输出(例如,语音、声音、动画、文本、图标、振动、触觉反馈、光照等)并将其经由I/O接口706(例如,通过显示器、音频通道、扬声器、触控板等)递送给用户。
应用程序724可包括被配置为由一个或多个处理器704执行的程序和/或模块。例如,如果数字助理***在独立式用户设备上实现,则应用程序724可包括用户应用程序,诸如游戏、日历应用程序、导航应用程序、或邮件应用程序。如果数字助理***700在服务器上实现,则应用程序724可包括例如资源管理应用程序、诊断应用程序、或调度应用程序。
存储器702还可存储数字助理模块726(或数字助理的服务器部分)。在一些示例中,数字助理模块726可包括以下子模块或者其子集或超集:输入/输出处理模块728、语音转文本(STT)处理模块730、自然语言处理模块732、对话流处理模块734、任务流处理模块736、服务处理模块738、和语音合成模块740。这些模块中的每个模块均可具有对以下数字助理模块726的***或数据与模型中的一者或多者或者其子集或超集的访问权限:知识本体760、词汇索引744、用户数据748、任务流模型754、服务模型756和ASR***。
在一些示例中,使用数字助理模块726中实现的处理模块、数据和模型,数字助理可执行下述各项的至少一部分:将言语输入转换为文本;识别在从用户接收的自然语言输入中表达的用户意图;主动引出并获得充分推断用户意图所需的信息(例如,通过消除词、名称、意图的歧义等);确定用于满足推断出的意图的任务流;以及执行该任务流以满足推断出的意图。
在一些示例中,如图7B中所示,I/O处理模块728可通过图7A中的I/O设备716与用户进行交互或通过图7A中的网络通信接口708与用户设备(例如,设备104、设备200、设备400或设备600)进行交互,以获取用户输入(例如,语音输入)并提供对用户输入的响应(例如,作为语音输出)。I/O处理模块728随同接收到用户输入一起或在接收到用户输入之后不久可任选地获取与来自用户设备的用户输入相关联的上下文信息。上下文信息可包括特定于用户的数据、词汇,和/或与用户输入相关的偏好。在一些示例中,该上下文信息还包括在接收到用户请求时的用户设备的软件状态和硬件状态,和/或与在接收到用户请求时的用户的周围环境相关的信息。在一些示例中,I/O处理模块728还可将与用户请求有关的跟进问题发送至用户,并从用户接收回答。在用户请求被I/O处理模块728接收并且用户请求可包括语音输入时,I/O处理模块728可将语音输入转发至STT处理模块730(或语音识别器),以用于语音文本转换。
STT处理模块730可包括一个或多个ASR***。该一个或多个ASR***可处理通过I/O处理模块728接收到的语音输入,以产生识别结果。每个ASR***可包括前端语音预处理器。前端语音预处理器可从语音输入提取代表性特征。
例如,前端语音预处理器可对语音输入执行傅里叶变换,以提取表征语音输入的光谱特征作为代表性多维向量的序列。此外,每个ASR***可包括一个或多个语音识别模型(例如,声音模型和/或语言模型),并且可实现一个或多个语音识别引擎。语音识别模型的示例可包括隐马尔可夫模型、高斯混合模型、深层神经网络模型、n元语言模型、以及其他统计模型。语音识别引擎的示例可包括基于动态时间规整的引擎和基于加权有限状态换能器(WFST)的引擎。一个或多个语音识别模型和一个或多个语音识别引擎可用于处理前端语音预处理器的所提取的代表性特征,以产生中间识别结果(例如,音素、音素串和子字),并且最终产生文本识别结果(例如,字词、字词串或符号的序列)。在一些示例中,语音输入可至少部分地由第三方服务处理或在用户的设备(例如,设备104,200,400或600)上处理,以产生识别结果。一旦STT处理模块730产生包含文本串(例如,字词,或字词的序列,或符号的序列)的识别结果,识别结果便可被传送至自然语言处理模块732以用于意图推断。
有关言语转文本处理的更多细节在提交于2011年9月20日的标题为“Consolidating Speech Recognition Results”的美国实用新型专利申请序列号13/236,942中有所描述,其全部公开内容以引用方式并入本文。
在一些示例中,STT处理模块730可包括可识别字词的词汇,和/或可经由语音字母转换模块731来访问该词汇。每个词汇字词可与以语音识别语音字母表来表示的字词的一个或多个候选发音相关联。具体地,可识别字词的词汇可包括与多个候选发音相关联的字词。例如,该词汇可包括与/和//的候选发音相关联的字词“tomato”。此外,词汇字词可与基于来自用户的先前语音输入的自定义候选发音相关联。此类自定义候选发音可被存储在STT处理模块730中,并且可经由设备上的用户配置文件而与特定用户相关联。在一些示例中,字词的候选发音可基于字词的拼写以及一个或多个语言学和/或语音学规则来确定。在一些示例中,候选发音可手动生成,例如基于已知的标准发音而手动生成。
在一些示例中,可基于候选发音的普遍性来对候选发音进行排名。例如,候选语音//的排名可高于/,因为前者是更常用的发音(例如,在所有用户中,对于特定地理区域的用户而言,或者对于任何其他合适的用户子集而言)。在一些示例中,可基于候选发音是否为与用户相关联的自定义候选发音来对候选发音进行排名。例如,自定义候选发音的排名可高于标准候选发音。这可用于识别具有偏离规范发音的独特发音的专有名词。在一些示例中,候选发音可与一个或多个语音特征(诸如地理起源、国家、或种族)相关联。例如,候选发音//可能与美国相关联,而候选发音//可能与英国相关联。此外,候选发音的排名可基于被存储在设备上的用户配置文件中的用户的一个或多个特征(例如,地理起源、国家、种族等)。例如,可从用户配置文件确定该用户与美国相关联。基于用户与美国相关联,可将候选发音//(与美国相关联)排得比候选发音//(与英国相关联)更高。在一些示例中,经排名的候选发音中的一个候选发音可被选作预测发音(例如,最可能的发音)。
当接收到语音输入时,STT处理模块730可用于(例如,使用声音模型)确定对应于该语音输入的音素,并且然后尝试(例如,使用语言模型)确定匹配该音素的字词。例如,如果STT处理模块730可首先识别与该语音输入的一部分对应的音素序列//,则其随后可基于词汇索引744来确定该序列对应于字词“tomato”。
在一些示例中,STT处理模块730可使用模糊匹配技术来确定话语中的字词。因此,例如,STT处理模块730可确定音素序列//对应于字词“tomato”,即使该特定音素序列不是该字词的候选音素序列。
在一些示例中,自然语言处理模块732可被配置为接收与语音输入相关联的元数据。元数据可指示是否对语音输入(或者对应于该语音输入的字词或符号的序列)执行自然语言处理。如果元数据指示将执行自然语言处理,则自然语言处理模块可从STT处理模块接收字词或符号的序列以执行自然语言处理。然而,如果元数据指示将不执行自然语言处理,则可禁用自然语言处理模块,并且可从数字助理输出来自STT处理模块的字词或符号的序列(例如,文本串)。在一些示例中,元数据可进一步识别对应于用户请求的一个或多个域。基于该一个或多个域,自然语言处理器可禁用知识本体760中该一个或多个域之外的域。这样,自然语言处理被约束为知识本体760中的该一个或多个域。具体地,可使用知识本体中的该一个或多个域而不是其他域来生成结构化查询(下文描述)。
数字助理的自然语言处理模块732(“自然语言处理器”)可获取由STT处理模块730生成的字词或符号的序列(“符号序列”),并尝试将该符号序列与由数字助理所识别的一个或多个“可执行意图”相关联。“可执行意图”可表示可由数字助理执行并且可具有在任务流模型754中实现的相关联的任务流的任务。相关联任务流可以是数字助理为了执行任务而采取的一系列经编程的动作和步骤。数字助理的能力范围可取决于已在任务流模型754中实施并存储的任务流的数量和种类,或换句话讲,取决于数字助理所识别的“可执行意图”的数量和种类。然而,数字助理的有效性还可取决于助理从以自然语言表达的用户请求中推断出正确的“一个或多个可执行意图”的能力。
在一些示例中,除从STT处理模块730获取的字词或符号的序列之外,自然语言处理模块732还可(例如,从I/O处理模块728)接收与用户请求相关联的上下文信息。自然语言处理模块732可任选地使用上下文信息来明确、补充和/或进一步限定被包含在从STT处理模块730接收的符号序列中的信息。上下文信息可包括例如:用户偏好、用户设备的硬件和/或软件状态、在用户请求之前、期间或之后不久收集的传感器信息、数字助理与用户之间的先前交互(例如,对话)等。如本文所述,上下文信息可以是动态的,并且可随对话的时间、位置、内容以及其他因素而变化。
在一些示例中,自然语言处理可基于例如知识本体760。知识本体760可以是包含许多节点的分级结构,每个节点表示“可执行意图”或与“可执行意图”或其他“属性”中的一者或多者相关的“属性”。如上所述,“可执行意图”可表示数字助理能够执行的任务,即该任务为“可执行的”或可被进行的。“属性”可表示与可执行意图或另一属性的子方面相关联的参数。知识本体760中的可执行意图节点与属性节点之间的链接可定义由属性节点表示的参数如何与由可执行意图节点表示的任务相关。
在一些示例中,知识本体760可由可执行意图节点和属性节点组成。在知识本体760内,每个可执行意图节点可直接链接至或通过一个或多个中间属性节点链接至一个或多个属性节点。类似地,每个属性节点可直接链接至或通过一个或多个中间属性节点链接至一个或多个可执行意图节点。例如,如图7C所示,知识本体760可包括“餐厅预订”节点(即,可执行意图节点)。属性节点“餐厅”、“日期/时间”(针对预订)和“同行人数”各自可直接链接至可执行意图节点(即,“餐厅预订”节点)。
此外,属性节点“菜系”、“价格区间”、“电话号码”和“位置”可以是属性节点“餐厅”的子节点,并且各自可通过中间属性节点“餐厅”而被链接至“餐厅预订”节点(即,可执行意图节点)。又如,如图7C所示,知识本体760还可包括“设定提醒”节点(即,另一可执行意图节点)。属性节点“日期/时间”(针对设定提醒)和“主题”(针对提醒)各自可链接至“设定提醒”节点。由于属性“日期/时间”可与进行餐厅预订的任务和设定提醒的任务两者相关,因此属性节点“日期/时间”可链接至知识本体760中的“餐厅预订”节点和“设定提醒”节点两者。
可执行意图节点连同其链接的概念节点一起可被描述为“域”。在本论述中,每个域可与相应的可执行意图相关联,并涉及与特定可执行意图相关联的一组节点(以及这些节点之间的关系)。例如,图7C中示出的知识本体760可包括知识本体760内的餐厅预订域762的示例以及提醒域764的示例。餐厅预订域包括可执行意图节点“餐厅预订”、属性节点“餐厅”、“日期/时间”和“同行人数”以及子属性节点“菜系”、“价格范围”、“电话号码”和“位置”。提醒域764可包括可执行意图节点“设置提醒”以及属性节点“主题”和“日期/时间”。在一些示例中,知识本体760可由多个域组成。每个域可与一个或多个其他域共享一个或多个属性节点。例如,除了餐厅预订域762和提醒域764之外,“日期/时间”属性节点还可与许多不同域(例如,行程安排域、旅行预订域、电影票域等)相关联。
尽管图7C示出了知识本体760内的两个示例域,但其他域可包括例如“查找电影”、“发起电话呼叫”、“查找方向”、“安排会议”、“发送消息”以及“提供问题的回答”、“阅读列表”、“提供导航指令”、“提供针对任务的指令”等。“发送消息”域可与“发送消息”可执行意图节点相关联,并且还可包括属性节点诸如“一个或多个接收人”、“消息类型”和“消息正文”。属性节点“接收人”可进一步例如由子属性节点诸如“接收人名称”和“消息地址”来限定。
在一些示例中,知识本体760可包括数字助理能够理解并对其起作用的所有域(以及因此可执行的意图)。在一些示例中,知识本体760可诸如通过添加或移除整个域或节点,或者通过修改知识本体760内的节点之间的关系来进行修改。
在一些示例中,可将与多个相关可执行意图相关联的节点群集在知识本体760中的“超级域”下。例如,“旅行”超级域可包括与旅行有关的属性节点和可执行意图节点的群集。与旅行有关的可执行意图节点可包括“航班预订”、“酒店预订”、“汽车租赁”、“路线规划”、“寻找兴趣点”等等。同一超级域(例如,“旅行”超级域)下的可执行意图节点可具有多个共用的属性节点。例如,针对“机票预订”、“酒店预订”、“汽车租赁”、“路线规划”和“寻找兴趣点”的可执行意图节点可共享属性节点“起始位置”、“目的地”、“出发日期/时间”、“到达日期/时间”和“同行人数”中的一者或多者。
在一些示例中,知识本体760中的每个节点可与和由节点代表的属性或可执行意图有关的一组字词和/或短语相关联。与每个节点相关联的相应组的字词和/或短语可是所谓的与节点相关联的“词汇”。可将与每个节点相关联的相应组的字词和/或短语存储在与由节点所表示的属性或可执行意图相关联的词汇索引744中。例如,返回图7B,与“餐厅”属性的节点相关联的词汇可包括字词诸如“美食”、“酒水”、“菜系”、“饥饿”、“吃”、“披萨”、“快餐”、“膳食”等。又如,与“发起电话呼叫”可执行意图的节点相关联的词汇可包括字词和短语,诸如“呼叫”、“打电话”、“拨打”、“与……通电话”、“呼叫该号码”、“打电话给”等。词汇索引744可任选地包括不同语言的字词和短语。
自然语言处理模块732可从STT处理模块730接收符号序列(例如,文本串),并确定符号序列中的字词牵涉哪些节点。在一些示例中,如果发现符号序列中的字词或短语(经由词汇索引744)与知识本体760中的一个或多个节点相关联,则该字词或短语可“触发”或“激活”这些节点。基于已激活节点的数量和/或相对重要性,自然语言处理模块732可选择可执行意图中的一个可执行意图作为用户意图使数字助理执行的任务。在一些示例中,可选择具有最多“已触发”节点的域。在一些示例中,可选择具有最高置信度(例如,基于其各个已触发节点的相对重要性)的域。在一些示例中,可基于已触发节点的数量和重要性的组合来选择域。在一些示例中,在选择节点的过程中还考虑附加因素,诸如数字助理先前是否已正确解译来自用户的类似请求。
用户数据748可包括特定于用户的信息,诸如特定于用户的词汇、用户偏好、用户地址、用户的默认语言和第二语言、用户的联系人列表、以及每位用户的其他短期或长期信息。自然语言处理模块732可使用特定于用户的信息来补充用户输入中所包含的信息,以进一步限定用户意图。例如,对于用户请求“邀请我的朋友参加我的生日聚会”,自然语言处理模块732可能够访问用户数据748以确定谁是“朋友”以及何时何地举行“生日聚会”,而非要求用户在他/她的请求中明确通过例如以下方式提供此类信息:使用用户联系人列表中的“朋友”列表,在用户的日历或用户的电子邮件中定位“生日聚会”的日历条目,然后将该信息发送给针对联系人列表中的每位联系人列出的相应联系人信息。
基于符号串搜索知识本体的其他细节在于2008年12月22日提交的标题为“Methodand Apparatus for Searching Using An Active Ontology”的美国实用新型专利申请序列号12/341,743中有所描述,其全部公开内容以引用方式并入本文。
在一些示例中,一旦自然语言处理模块732基于用户请求而识别出可执行意图(或域),自然语言处理模块732便可生成结构化查询,以表示所识别的可执行意图。在一些示例中,结构化查询可包括针对可执行意图的域内的一个或多个节点的参数,并且该参数中的至少一些参数填充有在用户请求中指定的特定信息和要求。例如,用户可以说“帮我在寿司店预订晚上7点的座位。”在这种情况下,自然语言处理模块732可能够基于用户输入将可执行意图正确地识别为“餐厅预订”。根据知识本体,“餐厅预订”域的结构化查询可包括参数诸如{菜系}、{时间}、{日期}、{同行人数}等。在一些示例中,基于语音输入和使用STT处理模块730从语音输入得出的文本,自然语言处理模块732可针对餐厅预订域生成部分结构化查询,其中部分结构化查询包括参数{菜系=“寿司类”}以及{时间=“晚上7点”}。然而,在该示例中,用户话语包含不足以完成与域相关联的结构化查询的信息。因此,基于当前可用的信息,在结构化查询中可能未指定其他必要的参数,诸如{同行人数}和{日期}。在一些示例中,自然语言处理模块732可利用所接收的上下文信息来填充结构化查询的一些参数。例如,在一些示例中,如果请求“附近的”寿司店,自然语言处理模块732可利用来自用户设备的GPS坐标来填充结构化查询中的{位置}参数。
在一些示例中,自然语言处理模块732可将所生成的结构化查询(包括任何已完成的参数)传送至任务流处理模块736(“任务流处理器”)。任务流处理模块736可被配置为接收来自自然语言处理模块732的结构化查询,(必要时)完成结构化查询,并且执行“完成”用户最终请求所需的动作。在一些示例中,完成这些任务所必需的各种过程可在任务流模型754中提供。在一些示例中,任务流模型754可包括用于获取来自用户的附加信息的过程,以及用于执行与可执行意图相关联的动作的任务流。
如上所述,为了完成结构化查询,任务流处理模块736可能需要发起与用户的附加对话,以便获得附加信息和/或弄清可能有歧义的话语。当有必要进行此类交互时,任务流处理模块736可调用对话流处理模块734以参与同用户的对话。在一些示例中,对话流处理模块734可确定如何(和/或何时)向用户请求附加信息,并且接收和处理用户响应。该问题可通过I/O处理模块728而被提供至用户并可从用户接收回答。在一些示例中,对话处理模块734可经由音频和/或视觉输出来向用户呈现对话输出,并接收经由口头或物理(例如,点击)响应的来自用户的输入。继续上述示例,当任务流处理模块736调用对话流处理模块734来确定针对与域“餐厅预订”相关联的结构化查询的“同行人数”和“日期”信息时,对话流处理模块734可生成问题诸如“一行几位?”和“预订哪天?”以传递给用户。一旦从用户接收到回答,对话流处理模块734便可利用缺失信息填充结构化查询,或将信息传递给任务流处理模块736以根据结构化查询来完成缺失信息。
一旦任务流处理模块736已针对可执行意图完成结构化查询,任务流处理模块736便可着手执行与可执行意图相关联的最终任务。因此,任务流处理模块736可根据包含在结构化查询中的特定参数来执行任务流模型中的步骤和指令。例如,针对可执行意图“餐厅预订”的任务流模型可包括用于联系餐厅并在特定时间实际上请求针对特定同行人数的预订的步骤和指令。例如,使用结构化查询诸如:餐厅预订、{餐厅=ABC咖啡馆、日期=3/12/2012、时间=7pm、同行人数=5,}任务流处理模块736可执行以下步骤:(1)登录ABC咖啡馆的服务器或诸如之类的餐厅预订***,(2)以网站上的形式输入日期、时间和同行人数信息,(3)提交表格,以及(4)在用户的日历上形成针对预订的日历条目。
在一些示例中,任务流处理模块736可在服务处理模块738(“服务处理模块”)的辅助下完成用户输入中所请求的任务或者提供用户输入中所请求的信息性回答。例如,服务处理模块738可代表任务流处理模块736来发起电话呼叫、设置日历条目、调用地图搜索、调用用户设备上安装的其他用户应用程序或与该其他应用程序进行交互、以及调用第三方服务(例如,餐厅预订门户网站、社交网站、银行门户网站等)、或与第三方服务进行交互。在一些示例中,可通过服务模型756中的相应服务模型来指定每项服务所需的协议和应用编程接口(API)。服务处理模块738可针对服务来访问适当的服务模型,并依据服务模型根据该服务所需的协议和API来生成针对该服务的请求。
例如,如果餐厅已启用在线预订服务,则餐厅可提交服务模型,该服务模型指定进行预订的必要参数以及将必要参数的值传送至在线预订服务的API。在被任务流处理模块736请求时,服务处理模块738可使用被存储在服务模型中的web地址来建立与在线预订服务的网络连接,并将预订的必要参数(例如,时间、日期、同行人数)以符合在线预订服务的API的格式发送至在线预订接口。
在一些示例中,自然语言处理模块732、对话处理模块734以及任务流处理模块736可被共同且反复地使用,以推断并限定用户的意图、获得信息,以进一步明确并细化用户意图并最终生成响应(即,输出至用户或完成任务)以满足用户的意图。所生成的响应可以是对语音输入的至少部分地满足用户的意图的对话响应。此外,在一些示例中,所生成的响应可被输出为语音输出。在这些示例中,所生成的响应可被发送到语音合成模块740(例如,语音合成器),在语音合成模块中,可处理所生成的响应以将对话响应以语音形式合成。在其他示例中,所生成的响应可以是与满足语音输入中的用户请求相关的数据内容。
语音合成模块740可被配置为合成语音输出以呈现给用户。言语合成模块740基于数字助理提供的文本来合成言语输出。例如,所生成的对话响应可为文本串的形式。语音合成模块740可将文本串转换成可听语音输出。语音合成模块740可使用任何合适的语音合成技术,以便从文本生成语音输出,包括但不限于:拼接合成、单位选择合成、双音素合成、特定于域的合成、共振峰合成、发音合成、基于隐马尔可夫模型(HMM)的合成、以及正弦波合成。在一些示例中,语音合成模块740可被配置为基于与这些字词对应的音素串来合成各个字词。例如,音素串可与所生成的对话响应中的字词相关联。音素串可被存储在与字词相关联的元数据中。语音合成模型740可被配置为直接处理元数据中的音素串,以合成语音形式的字词。
在一些示例中,替代使用语音合成模块740(或除此之外),可在远程设备(例如,服务器***108)上执行语音合成,并且可将合成的语音发送至用户设备以输出给用户。例如,这可发生在一些具体实施中,其中在服务器***处生成数字助理的输出。并且由于服务器***通常比用户设备具有更强的处理能力或更多的资源,有可能获得比客户端侧合成将实现的质量更高的语音输出。
有关数字助理的附加细节可在于2011年1月10日提交的标题为“IntelligentAutomated Assistant”的美国实用新型专利申请12/987,982和于2011年9月30日提交的标题为“Generating and Processing Task Items That Represent Tasks to Perform”的美国实用新型专利申请13/251,088中找到,其全部公开内容以引用方式并入本文。
现在将注意力转向在诸如用户设备104、便携式多功能设备200、多功能设备400或个人电子设备600(统称为“电子设备104,200,400,600”)的电子设备上实施的实施方案过程。本文档中对任何一个特定的电子设备104,200,400,600的引用应被理解为涵盖所有的电子设备104,200,400,600,除非这些电子设备104,200,400,600中的一个或多个被本文的明确含义排除在外。
图9A至图9H示出了根据各种示例的用于操作数字助理的方法900的流程图。更具体地讲,可实施方法900来执行说话者识别以调用虚拟助理。可使用实施了数字助理的一个或多个电子设备来执行方法900。在一些示例中,方法900可使用实现数字助理的客户端-服务器***(例如,***100)执行。方法900的各个框可以以任何合适的方式分布于一个或多个计算机、***或电子设备中。例如,在一些示例中,方法900可完全在电子设备(例如,设备104、200、400或600)上执行。例如,在若干个示例中使用的电子设备104,200,400,600是智能电话。然而,方法900并不限于与智能电话一起使用;方法900可在任何其他合适的电子设备(诸如平板电脑、台式计算机、膝上型电脑或智能手表)上实现。此外,虽然以下讨论将该方法描述为由数字助理***(例如,***100和/或数字助理***700)执行,但是应当认识到,该过程或过程的任何特定部分不限于任何特定设备、设备的组合或实施来执行。该过程的描述由图8A至图8G进一步示出和例证,并且上文的描述与这些附图有关。
在方法900的初始,在框902处,数字助理接收来自多个用户中的一个用户的自然语言语音输入,其中该自然语言语音输入具有一组声学特性。根据一些实施方案,自然语言语音输入的声学特性包括自然语言语音输入的频谱、音量和韵律中的至少一者。在一些示例中,频谱是指与自然语言语音输入相关联的频率和振幅频谱。自然语言语音输入的音量是指在电子设备104,200,400,600接收到的自然语言语音输入的声音的强度。在一些示例中,韵律包括语音的音调、声音的长度以及自然语言语音输入的音色。在一些实施方案中,频谱和韵律包括自然语言语音输入的相似属性,并且这些属性落入自然语言语音输入的声学属性的范围内。在一些实施方案中,用户输入包括具有一个或多个字词的非结构化自然语言语音。在电子设备104,200,400,600包括麦克风213或者与麦克风相关联的情况下,可通过麦克风213接收该用户输入。用户输入也可称为音频输入或音频流。在一些实施方案中,音频流可作为原始声波,作为音频文件或以代表性的音频信号(模拟或数字)的形式被接收。在其他实施方案中,可在远程***(诸如数字助理的服务器部件)处接收音频流。音频流可包括用户语音,诸如语音用户请求。在其他实施方案中,以文本形式而非语音接收用户输入。
根据一些实施方案,在框904处,电子设备104,200,400,600确定在框902中接收到的自然语言语音输入是否对应于用户可定制的词汇触发和与特定用户的语音相关联的一组声学特性二者。例如,特定用户是电子设备104,200,400,600的拥有者或主要用户。根据一些实施方案,由电子设备104,200,400,600处的DA客户端102并且/或者由服务器***108处的DA服务器106执行该确定。在此类实施方案中,除了框904的单个任务之外,该任务由数字助理作为独立的阈值任务来执行,而不以整体方式调用数字助理,或者向说话者提供对数字助理的访问。根据其他实施方案,不利用数字助理执行框904所述的确定,而是由电子设备104,200,400,600独立于数字助理执行框904,以增强安全性并推迟数字助理的调用。用户可定制的词汇触发是用户的自然语言语音输入的内容;用户语音的声学特性是用户说出内容的方式。如上所述,根据一些实施方案,与特定用户的语音相关联的声学特性包括频谱、音量和韵律。根据一些实施方案,词汇触发是声音,诸如但不限于当用户说话时发信号通知数字助理服务请求在后面的字词、字词或短语。根据其他实施方案,词汇触发是不同于语音的声音,诸如口哨、唱出来的一个或多个音符,或是由用户或用户操作的设备产生的其他非语音话语或声音。词汇触发的一个示例是结合Apple Inc.(Cupertino,California)的移动数字设备所使用的“嘿,Siri”。“Siri”或“嘿,Siri”词汇触发由制造商设置。相比之下,用户可定制的词汇触发是由用户设置为词汇触发的字词、字词或短语,如下面更详细描述的。
在框904处,如果自然语言语音输入对应于用户可定制的词汇触发和与用户相关联的一组声学特性二者,方法900前进至框910。例如,用户可定制的词汇触发可以是“嗨,大佬”,并且当用户以一组声学特性说出“嗨,大佬”并且该组声学特性对应于与用户相关联的声学特性时,方法900前进至框910。在框910处,数字助理被调用,并准备好接收用户的服务请求。DA客户端102、DA服务器106或二者准备好供用户使用。在框904处,如果自然语言语音输入仅对应于用户可定制的词汇触发和与用户相关联的该组声学特性中的一者,或者既不对应于用户可定制的词汇触发,也不对应于与用户相关联的该组声学特性,在框912处,放弃调用虚拟助理。如果电子设备104,200,400,600被锁定,或者虚拟助理以其他方式不可用,则电子设备104,200,400,600保持锁定并且/或者虚拟助理保持不可用。
可选地,根据一些实施方案,在框904和框910之间提供附加的安全措施。在框904中,如果自然语言语音输入对应于用户可定制词汇触发和与用户相关联的该组声学特性二者,在框906处,数字助理接收至少一个附加安全标识符。根据一些实施方案,附加安全标识符的示例包括由用户(诸如通过显示器212)键入电子设备104,200,400,600的密码,电子设备104,200,400,600(诸如通过显示器212或与电子设备104,200,400,600相关联的传感器)感测到的指纹,(诸如通过麦克风213)向电子设备104,200,400,600说出的字词,以及执行面部识别时(诸如由光学传感器264拍摄的)用户的照片。接下来,在框908处,数字助理确定所述至少一个附加安全标识符是否与用户相关联。根据其他实施方案,在框908处,电子设备104,200,400,600执行确定。如果所述至少一个附加安全标识符与用户关联,在框910处,调用数字助理,并且数字助理已准备好接收用户的服务请求。如果所述至少一个附加安全标识符不与用户关联,在框912处,放弃调用数字助理,并且数字助理不可用于服务。
参见图8B,可选地,根据一些实施方案,在执行框902之前,在框914处,电子设备104,200,400,600和/或虚拟助理接收至少一个字词的用户输入,然后在框916处,将该至少一个字词设置为用户可定制的词汇触发。为了准备用于这种输入的电子设备104,200,400,600,在一些实施方案中,用户选择设置或以其他方式指示电子设备104,200,400,600和/或虚拟助理他或她希望设置用户可定制的词汇触发。通过定制词汇触发,增强了安全性,因为未经授权的用户不知道该用户已经选择了哪个定制字词或短语作为用户可定制的词汇触发。此外,由于每个用户都可能选择不同词汇触发,因此由某个词汇触发导致彼此相互接近的多个电子设备104,200,400,600全部调用虚拟助理的问题减少了。根据一些实施方案,电子设备104,200,400,600和/或虚拟助理禁止在框916处将淫秽、冒犯性或低俗的字词或短语设置为用户可定制的词汇触发。在此类实施方案中,在框914处,电子设备104,200,400,600和/或虚拟助理将所接收的输入与禁用字词和/或短语的列表进行比较;如果在框914处接收的输入位于该列表上,则不前进至框916,并且用户需要重试或放弃该过程。
可选地,根据一些实施方案,在执行框902之前,在框918处,电子设备104,200,400,600和/或虚拟助理登记至少一个用户。如本文档中所使用的,用户的登记是指获取与用户语音的声学特性相关的信息。根据一些实施方案,在框920处,电子设备104,200,400,600和/或虚拟助理请求用户说出一个或多个预选字词。响应于该请求,在框922处,电子设备104,200,400,600接收包括对应于所述一个或多个预选字词的自然语言语音输入的用户输入。电子设备104,200,400,600和/或虚拟助理利用该输入确定用户语音的声学特性,独立和/或相对聚合或基线语音数据。此类聚合或基线语音数据可由数字助理通过向人群中的每个人询问相同的一个或多个字词来获得。请求用户重复某些字词以及用户重复这些字词在本领域中被称为“监督登记”。
可选地,在框924处,在用户首次使用电子设备104,200,400,600期间,执行至少一个用户的登记。在用户是电子设备104,200,400,600拥有者的情况下,首次使用通常是任何人对电子设备104,200,400,600的首次使用。电子设备104,200,400,600可以由多人使用。例如,不同人可以共享智能电话,并且某个家庭的不同成员可以利用诸如Apple Inc.(Cupertino,California)的Apple数字媒体扩展器的设备以观看公共空间中的共享电视。因此,根据一些实施方案,在框924处,用户(诸如配偶或孩子)首次利用电子设备104,200,400,600时,电子设备104,200,400,600和/或数字助理登记该新用户。根据一些实施方案,为了允许新用户进行此类登记,授权使用电子设备104,200,400,600的所有者或其他用户以任何适当的方式首先批准电子设备104,200,400,600登记新用户。
可选地,在926处,在检测到对用户语音的声学特性的改变时更新至少一个用户的登记。用户语音的声学特性改变的原因之一是用户环境发生了改变。当用户说出由电子设备104,200,400,600的麦克风213检测到的语音时,该语音具有不同声学特性,具体取决于该语音是在室外、铺有地毯的大房间、贴瓷砖的小浴室还是其他位置中说出。即使用户的语音保持不变,由电子设备104,200,400,600接收的该语音的声学特性也会基于位置而不同。用户语音的声学特性改变的另一个原因是用户的健康状况发生了改变。如果用户患有感冒或流感,或者患有过敏症,则即使用户保持在相同的位置,用户的声音也将因此而变得更加含混和沉闷。在接收到来自用户的自然语言语音输入时,诸如但不限于在框902处接收到此类输入,电子设备104,200,400,600和/或虚拟助理检测用户语音的声学特性的改变。响应于该检测,在框932处,电子设备104,200,400,600和/或虚拟助理更新用户的登记以反映用户语音的声学特性的改变。根据一些实施方案,更新的登记与一个或多个其他登记共存,使得电子设备104,200,400,600和/或虚拟助理能够更好地检测和理解用户的语音。例如,在登记时,电子设备104,200,400,600和/或虚拟助理可注意到用户的物理位置(例如,GPS坐标)。因此,当用户位于特定位置(例如,浴室、草地)时,电子设备104,200,400,600和/或虚拟助理可预期用户的语音具有某种声学特性,该声学特性和与该特定位置相关联的登记数据一致。根据其他实施方案,更新的登记取代了用户的一个或多个先前的登记。可选地,在更新登记之前,在框928处,电子设备104,200,400,600和/或虚拟助理可请求用户输入安全标识符。这样,电子设备104,200,400,600和/或虚拟助理避免了新用户在单纯更新用户登记的掩护下获得电子设备104,200,400,600的访问权。在电子设备104,200,400,600是Apple Inc.(Cupertino,California)的移动数字设备或其他苹果设备的情况下,安全标识符可以是与用户相关联的Apple ID的密码。然而,如上所述,可以使用任何其他的安全标识符。在框930处,电子设备104,200,400,600确定安全标识符是否与用户相关联。在框932处,如果安全标识符与用户相关联,则更新用户登记。在框934处,如果安全标识符不与用户相关联,则放弃更新用户登记。
可选地,在框936处,电子设备104,200,400,600和/或虚拟助理针对电子设备104,200,400,600的多个用户中的至少一个创建用户配置文件,该配置文件包括用户身份。在多个用户利用电子设备104,200,400,600的情况下,使用用户配置文件识别电子设备104,200,400,600的特定用户是有用的。如上所述,不同人可以共享智能电话,并且某个家庭的不同成员可以利用诸如Apple Inc.(Cupertino,California)的Apple数字媒体扩展器的设备以观看公共空间中的共享电视。根据一些实施方案,用户配置文件被用于存储用户语音的一个或多个声学特性、与用户相关联的登记数据、与用户相关联的用户可定制的词汇触发、与用户相关联的一个或多个安全标识符,以及/或者与用户相关联的任何其他相关数据。
可选地,在框938处,电子设备104,200,400,600和/或虚拟助理针对电子设备104,200,400,600的多个用户中的至少一个接收用户配置文件,该配置文件包括用户身份。如果是这样,根据一些实施方案,在框938处执行接收用户配置文件,而不在框936处创建用户配置文件。例如,在电子设备104,200,400,600是Apple Inc.(Cupertino,California)的移动数字设备的情况下,该移动数字设备的用户创建Apple ID以便使用该设备。在框938处,通过接收与用户Apple ID相关联的用户配置文件,电子设备104,200,400,600和/或虚拟助理不需要创建另一个用户配置文件,并且利用了与该Apple ID相关联的数据来更有效地操作电子设备104,200,400,600和/或虚拟助理。根据其他实施方案,除了在框936处创建至少一个用户配置文件之外,还在框938处接收至少一个用户配置文件。
可选地,在框940处,电子设备104,200,400,600和/或虚拟助理存储至少一个用户配置文件。根据一些实施方案,该用户配置文件被本地存储在电子设备104,200,400,600上。根据一些实施方案,至少部分用户配置文件被存储在服务器***108或其他位置。可选地,在框942处,电子设备104,200,400,600和/或虚拟助理将至少一个用户配置文件传输到第二电子设备,诸如Apple Inc.(Cupertino,California)的Apple腕戴式设备,或者传输到任何其他合适的设备或位置。
可选地,电子设备104,200,400,600和/或虚拟助理在正常操作期间更新用户配置文件,以处理用户语音的声学属性随时间的变化。在框944处,电子设备104,200,400,600和/或虚拟助理接收用户的自然语言语音输入,而不是重复预选字词。例如,电子设备104,200,400,600和/或虚拟助理接收自然语言语音输入作为从虚拟助理,或者从其他语音输入到电子设备104,200,400,600的正常服务请求。在框946处,电子设备104,200,400,600和/或虚拟助理将所接收的用户的自然语言语音输入的声学特性与存储在用户配置文件中的所接收的自然语言语音输入的声学特性进行比较。在框948处,电子设备104,200,400,600和/或虚拟助理确定所接收的自然语言语音输入的声学特性是否明显不同于存储在用户配置文件中的所接收的自然语言语音输入的声学特性。如果是这样,在框950处,电子设备104,200,400,600和/或虚拟助理基于所接收的用户的自然语言语音输入的声学特性来更新用户的用户配置文件。根据一些实施方案,更新的用户配置文件包括先前存储的用户语音的声学特性,使得电子设备104,200,400,600和/或虚拟助理能够更好地检测和理解用户的语音。例如,在更新用户配置文件时,电子设备104,200,400,600和/或虚拟助理可记录用户的物理位置(例如,GPS坐标)。因此,当用户位于特定位置(例如,浴室、草地)时,电子设备104,200,400,600和/或虚拟助理可预期用户的语音具有某种声学特性,该声学特性和与该特定位置相关联的登记数据一致。根据其他实施方案,用户配置文件中更新的声学特性替代用户语音的一个或多个先前存储的声学特性。根据一些实施方案,在框952处,电子设备104,200,400,600和/或虚拟助理然后存储更新后的用户配置文件。另一方面,如果在框948中,所接收的自然语言语音输入的声学特性未明显不同于存储在用户配置文件中的所接收的自然语言语音输入的声学特性,则电子设备104,200,400,600和/或虚拟助理放弃更新用户的用户配置文件。这反映了用户语音的声学特性缺乏机会,使得更新用户配置文件没有什么价值。
可选地,方法900提供“第二机会触发”,其中用户可以在第一次尝试不成功之后重复词汇触发。同样参照图8,可选地,在框904处,所接收的自然语言语音输入对应于用户可定制的词汇触发和与用户相关联的一组声学特性中的一者,而非二者。如果是这样,在一些实施方案中,在框962处,该过程可选地继续请求用户重复自然语言语音输入。接下来,在框964处,电子设备104,200,400,600和/或虚拟助理确定响应于框962的请求而接收到的输入是否对应于用户可定制的词汇触发和与用户相关联的一组声学特性二者。根据一些实施方案,以与框904的确定基本相同的方式执行框964的确定。在框964处,如果自然语言语音输入对应于用户可定制的词汇触发和与用户相关联的该组声学特性二者,则在框966处,方法900转为调用数字助理,该数字助理随后准备好接收用户的服务请求。接下来,可选地,在框968处,更新用户的登记以包括用户的第一自然语言语音输入。在框968处,更新登记可基本如上所述进行,诸如框926中所描述的。另一方面,在框964处,如果自然语言语音输入仅对应于用户可定制的词汇触发和与用户相关联的该组声学特性中的一者,或者既不对应于用户可定制的词汇触发,也不对应于与用户相关联的该组声学特性,在框970处,放弃调用虚拟助理。如果电子设备104,200,400,600被锁定,或者虚拟助理以其他方式不可用,则电子设备104,200,400,600保持锁定并且/或者虚拟助理保持不可用。
同样参照图8E,可选地,在框910处调用虚拟助理之后,在框972处,虚拟助理、电子设备104,200,400,600和/或虚拟助理将所接收的用户的自然语言语音输入的声学特性与虚拟助理可访问的参考组声学特性进行比较。可选地,在框974处,电子设备104,200,400,600和/或虚拟助理请求用户说出一个或多个预选字词,并且响应于该请求,在框976处,电子设备104,200,400,600和/或虚拟助理接收说出一个或多个预选字词的用户的自然语言语音输入。根据一些实施方案,参考组声学特性对应于根据理论完美操作的麦克风。当然,没有麦克风是完美的。预计方差在制造公差范围。此外,用户在使用时可能会损坏麦克风213,或者可能使用装饰罩完全或部分地覆盖麦克风213。因此,所接收的自然语言语音输入的声学特性与参考组声学特性之间的比较揭示了麦克风213的性能与理想之间的差异。接下来,在框978处,电子设备104,200,400,600和/或虚拟助理存储所接收的用户的自然语言语音输入的声学特性与参考组声学特性之间的差异。可以使用这些差异以更好地理解麦克风213从用户接收的话语。
可选地,框904包括由带圈的字母E表示的附加指令,该字母引向图8E。作为框904的确定的一部分,在一些实施方案中,可选地,在框980处,电子设备104,200,400,600和/或虚拟助理确定该自然语言语音输入的声学特性是否与虚拟助理可访问的多个用户配置文件中的一者的该组声学特性匹配(诸如在框936和938处创建或接收的用户配置文件)。如果是这样,则在框982处,电子设备104,200,400,600和/或虚拟助理推断该自然语言语音输入对应于与用户相关联的一组声学特性,并且方法900如上所述参照框904继续。如果不是,则电子设备104,200,400,600和/或虚拟助理推断自然语言语音输入不对应于与用户相关联的一组声学特性,并且因此在框984处放弃调用虚拟助理。
可选地,框904包括由带圈的字母E表示的附加指令,该字母引向图8F。作为框904的确定的一部分,在一些实施方案中,可选地,在框986处,电子设备104,200,400,600和/或虚拟助理首先确定该自然语言语音输入的声学特性是否与虚拟助理可访问的多个用户配置文件中的一者的该组声学特性匹配(诸如在框936和938处创建或接收的用户配置文件)。即,在框986中,在确定语音输入的内容是否匹配用户可定制的词汇触发之前,首先确定语音输入是否匹配用户。这样,在考虑词汇触发之前,在框986处,电子设备104,200,400,600和/或虚拟助理首先确定用户是否是电子设备104,200,400,600的授权用户。如果是这样,在框988处,方法900转至确定自然语言语音输入是否与用户可定制的词汇触发匹配,并且方法900如上所述参照框904继续。如果不是,则在框990处,方法900转至放弃调用虚拟助理。可选地,电子设备104,200,400,600和/或虚拟助理首先确定自然语言语音输入的内容是否与用户可定制的词汇触发匹配,而不是首先确定自然语言语音输入的声学特性是否与虚拟助理可访问的多个用户配置文件中的一者的该组声学特性相匹配。
可选地,框904包括由带圈的字母E表示的附加指令,该字母引向图8F。作为框904的确定的一部分,在一些实施方案中,可选地,在框992处,电子设备104,200,400,600和/或虚拟助理存储一个或多个超向量,每个超向量与用户语音的声学特性相关联。根据一些实施方案,超向量存储在用户的用户配置文件中。根据其他实施方案,超向量被本地存储在电子设备104,200,400,600或虚拟助理可访问的任何其他位置,并且/或者以任何其他合适的方式存储。使用特征向量来表示人类语音的特征在自然语言处理中是本领域已知的。超向量是较小维向量组合成较高维向量,这在本领域中也是已知的。可选地,为每个用户存储五到二十个超向量。可以根据来自虚拟助理,或者从其他语音输入到电子设备104,200,400,600的正常服务请求来创建此类超向量。
然后,在框994处,电子设备104,200,400,600和/或虚拟助理可基于在框902中接收到的自然语言语音输入生成超向量。可选地,在框996处,生成超向量可基于状态回溯。如本领域技术人员所知,可以基于维特比表生成向量,该维特比表剔除了回溯信息。如果需要,回溯信息被保留在向量中,并被包括在框996中的超向量中。电子设备104,200,400,600和/或虚拟助理将来自框996的生成的超向量与框992的一个或多个存储的超向量进行比较以生成分数。例如,根据一些实施方案,来自框996的生成的超向量的每一者和框992的一个或多个存储的超向量的维数被降低,并且取来自框996的生成的超向量与框992的一个或多个存储的超向量之间的点积以生成分数。接下来,在框1000处,电子设备104,200,400,600和/或虚拟助理确定该分数是否超过阈值。如果是这样,在框1002处,电子设备104,200,400,600和/或虚拟助理推断该自然语言语音输入对应于与用户相关联的一组声学特性,并且方法900如上所述参照框904继续。如果不是这样,在框1002处,电子设备104,200,400,600和/或虚拟助理推断该自然语言语音输入不对应于与用户相关联的一组声学特性,并且方法900如上所述参照框904继续。
根据一些实施方案,图9示出了根据各种所述实施方案的原理进行配置的电子设备1100的示例性功能框图。根据一些实施方案,电子设备1100的功能块被配置为执行上述技术。设备1100的功能块任选地由执行各种所述示例的原理的硬件、软件、或硬件和软件的组合来实现。本领域的技术人员应当理解,图9中所述的功能块任选地被组合或被分离为子块,以实现各种所述示例的原理。因此,本文的描述任选地支持本文所述的功能块的任何可能的组合或分离或进一步限定。
如图9所示,电子设备1100可选地包括被配置为显示图形用户界面的显示单元1102;可选地,被配置为接收音频信号的麦克风单元1104,以及可选地耦接到显示单元1102和/或麦克风单元1006的处理单元1106。在一些实施方案中,处理单元1106包括接收单元1108、确定单元1110和调用单元1112。
根据一些实施方案,处理单元1106被配置为(例如,利用接收单元1108)接收来自多个用户中的一个用户的自然语言语音输入,该自然语言语音输入具有一组声学特性;并且(例如,利用确定单元1110)确定该自然语言语音输入是否对应于用户可定制的词汇触发和与用户相关联的一组声学特性二者;其中根据确定该自然语言语音输入对应于用户可定制的词汇触发和与用户相关联的一组声学特性二者,(例如,利用调用单元1112)调用虚拟助理;并且根据确定该自然语言语音输入不对应于用户可定制的词汇触发,或该自然语言语音输入不具有一组与用户相关联的声学特性,(例如,利用调用单元1112)放弃调用虚拟助理。
在一些实施方案中,处理单元1106还包括存储单元1114,其中处理单元1106被进一步配置为(例如,利用接收单元1108)接收至少一个字词的用户输入;并且(例如,利用存储单元1114)将至少一个字词存储为词汇触发。
在一些实施方案中,处理单元1106还包括比较单元1116,其中处理单元1106被进一步配置为进一步根据确定自然语言语音输入对应于用户可定制的词汇触发和与用户相关联的一组声学特性二者,(例如,利用比较单元1116)将所接收的用户的自然语言语音输入的声学特性与虚拟助理可访问的参考组声学特性进行比较;并且(例如,利用存储单元1114)存储所接收的用户的自然语言语音输入的声学特性与参考组声学特性之间的差异。
在一些实施方案中,处理单元1106还包括请求单元1118,其中处理单元1106被进一步配置为进一步根据确定自然语言语音输入对应于用户可定制的词汇触发和与用户相关联的一组声学特性二者,(例如,利用请求单元1118)请求用户说出至少一个预选字词;并且响应于该请求,(例如,利用接收单元1108)接收说出所述一个或多个预选字词的用户的自然语言语音输入。
在一些实施方案中,处理单元1106还包括推断单元1120;其中处理单元1106被进一步被配置为确定该自然语言语音输入是否对应于用户可定制的词汇触发和与用户相关联的一组声学特性二者,处理单元1106被配置为(例如,利用接收单元1110)确定该自然语言语音输入的该组声学特性是否与虚拟助理可访问的多个用户配置文件中的一者的该组声学特性匹配;根据确定该自然语言语音输入的该组声学特性与多个用户配置文件中的一者的该组声学特性相匹配,(例如,利用推断单元1120)推断该自然语言语音输入对应于与用户相关联的一组声学特性;并且根据确定输入不匹配多个用户配置文件中的任何一个,转为(例如,利用调用单元1112)放弃调用虚拟助理。
在一些实施方案中,处理单元1106还包括创建单元1122;其中处理单元1106被进一步配置为(例如,利用创建单元1112)针对电子设备的多个用户中的至少一个创建用户配置文件,该用户配置文件包括用户身份;并且(例如,利用存储单元1114)存储至少一个用户配置文件。
在一些实施方案中,处理单元1106被进一步配置为(例如,利用接收单元1110)针对电子设备的多个用户中的至少一个接收用户配置文件,该用户配置文件包括用户身份。
在一些实施方案中,处理单元1106被进一步配置为首先(例如,利用确定单元1110)确定自然语言语音输入是否匹配与多个用户配置文件中的至少一者相关联的一组声学特性;根据确定该自然语言语音输入匹配与多个用户配置文件中的一个相关联的一组声学特性,转为(例如,利用确定单元1110)确定该自然语言语音输入是否匹配用户可定制的词汇触发;并且根据确定自然语言语音输入不匹配多个用户配置文件中的任何一个,转为(例如,利用调用单元1112)放弃调用虚拟助理。
在一些实施方案中,处理单元1106还包括更新单元1124;其中处理单元1106被进一步被配置为(例如,利用接收单元1108)接收用户的除了重复的预选字词之外的自然语言语音输入;(例如,利用比较单元1116)将所接收的用户的自然语言语音输入的声学特性与存储在用户配置文件中的所接收的自然语言语音输入的声学特性进行比较;并且(例如,利用确定单元1110)确定所接收的用户的自然语言语音输入的声学特性是否明显不同于存储在用户配置文件中的所接收的自然语言语音输入的声学特性;根据确定所接收的用户的自然语言语音输入的声学特性明显不同于存储在用户配置文件中的所接收的自然语言语音输入的声学特性,(例如,利用更新单元1124)基于所接收的用户的自然语言语音输入的声学特性来更新用户的用户配置文件;并且(例如,利用存储单元1114)存储更新的用户配置文件;并且根据确定所接收的用户的自然语言语音输入的声学特性未明显不同于存储在用户配置文件中的所接收的自然语言语音输入的声学特性,(例如,利用更新单元1124)放弃基于所接收的用户的自然语言语音输入的声学特性来更新用户配置文件。
在一些实施方案中,处理单元1106还包括传输单元1126;其中处理单元1106被进一步配置为(例如,利用传输单元1126)传输来自电子设备的至少一个用户配置文件。
在一些实施方案中,处理单元1106被进一步配置为进一步根据确定该自然语言语音输入对应于用户可定制的词汇触发和与用户相关联的一组声学特性二者,(例如,利用接收单元1108)接收至少一个附加安全标识符;并且确定该至少一个附加安全标识符是否与用户相关联;根据确定该至少一个附加安全标识符与该用户相关联,(例如,利用调用单元1112)调用虚拟助理;根据确定该至少一个附加安全标识符不与该用户相关联,(例如,利用调用单元1112)放弃调用虚拟助理。
在一些实施方案中,处理单元1106还包括登记单元1128,其中处理单元1106被进一步配置为(例如,利用登记单元1128)登记至少一个用户;其中用于登记至少一个用户的指令还包括用于以下目的的指令:当该指令由电子设备的一个或多个处理器执行时,使得电子设备请求(例如,利用请求单元1118)用户说出一个或多个预选字词;响应于该请求,(例如,利用接收单元1108)接收包括对应于该一个或多个预选字词的自然语言语音输入的用户输入。
在一些实施方案中,处理单元1106被进一步配置为在用户首次使用电子设备期间(例如,利用调用单元1112)登记至少一个用户。
在一些实施方案中,处理单元1106被进一步被配置为在检测到对用户语音的声学特性的改变时,(例如,利用更新单元1124)更新至少一个用户的登记。
在一些实施方案中,处理单元1106被进一步配置为(例如,利用请求单元1118)从用户请求至少一个附加安全标识符以执行该登记;并且(例如,利用确定单元1110)确定该至少一个附加安全标识符是否与用户相关联;根据确定该至少一个附加安全标识符与用户相关联,(例如,利用登记单元1128)登记该用户;根据确定该至少一个附加安全标识符不与用户相关联,(例如,利用登记单元1128)放弃登记该用户。
在一些实施方案中,处理单元1106被进一步配置为(例如,利用接收单元1108)接收自然语言语音输入,该自然语言语音输入对应于与用户相关联的一组声学特性而不是用户可定制的词汇触发;响应于接收到对应于与用户相关联的一组声学特性和用户可定制的词汇触发中的一者而不是二者的自然语言语音输入,(例如,利用请求单元1118)请求用户重复该自然语言语音输入;并且(例如,利用确定单元1110)确定该重复自然语言语音输入是否对应于用户可定制的词汇触发和与用户相关联的一组声学特性二者;其中根据确定该自然语言语音输入对应于用户可定制的词汇触发和与用户相关联的一组声学特性二者,(例如,利用调用单元1112)调用虚拟助理;并且(例如,利用登记单元1128)登记用户的第一自然语言语音输入;并且根据确定该自然语言语音输入不对应于用户可定制的词汇触发,或该自然语言语音输入不具有一组与用户相关联的声学特性,(例如,利用调用单元1112)放弃调用虚拟助理。
在一些实施方案中,处理单元1106还包括生成单元1130,处理单元1106被进一步配置为确定该自然语言语音输入是否对应于用户可定制的词汇触发和与用户相关联的一组声学特性二者,该处理单元被配置为(例如,利用存储单元1114)存储一个或多个超向量,每个超向量与用户语音的声学特性相关联;(例如,利用生成单元1130)基于该自然语言语音输入生成超向量;(例如,利用比较单元1116)将生成的超向量与一个或多个存储的超向量进行比较以生成分数;并且(例如,利用确定单元1110)确定分数是否超过阈值;根据确定该分数超过阈值,使用推断单元推断该自然语言语音输入对应于与用户相关联的一组声学特性;并且根据确定该分数不超过阈值,(例如,利用推断单元1120)推断该自然语言语音输入不对应于与用户相关联的一组声学特性。
在一些实施方案中,处理单元1106被进一步配置为通过利用状态回溯(例如,利用生成单元1130)生成超向量。
以上参考图8A至图8G所述的操作任选地由图1A至图7C和/或图9中描绘的部件来实现。类似地,本领域的普通技术人员会清楚地知道可如何基于图1A至图7C和/或图9中所描绘的部件来实现其他过程。
以下项目中陈述了示例性方法、非暂态计算机可读存储介质、***和电子设备:
1.一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储一个或多个程序,所述一个或多个程序包括指令,所述指令当由电子设备执行时,使得所述电子设备:
接收来自多个用户中的一个用户的自然语言语音输入,所述自然语言语音输入具有一组声学特性;以及
确定所述自然语言语音输入是否对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者;其中
根据确定所述自然语言语音输入对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者,调用虚拟助理;并且
根据确定所述自然语言语音输入不对应于用户可定制的词汇触发,或所述自然语言语音输入不具有与所述用户相关联的一组声学特性,放弃调用虚拟助理。
2.根据权利要求1所述的存储一个或多个程序的非暂态计算机可读存储介质,所述一个或多个程序包括指令,所述一个或多个程序还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
接收至少一个字词的用户输入;以及
将所述至少一个字词存储为所述词汇触发。
3.根据权利要求1至2中任一项所述的存储一个或多个程序的非暂态计算机可读存储介质,所述一个或多个程序包括指令,所述一个或多个程序还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
进一步根据确定所述自然语言语音输入对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者:
将所接收的所述用户的自然语言语音输入的所述声学特性与所述虚拟助理可访问的参考组声学特性进行比较;并且
存储所述所接收的所述用户的自然语言语音输入的所述声学特性与所述参考组声学特性之间的差异。
4.根据权利要求1至3中任一项所述的存储一个或多个程序的非暂态计算机可读存储介质,所述一个或多个程序包括指令,所述一个或多个程序还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
进一步根据确定所述自然语言语音输入对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者:
请求所述用户说出至少一个预选字词;
响应于所述请求,接收说出所述一个或多个预选字词的所述用户的自然语言语音输入。
5.根据权利要求1至4中任一项所述的存储一个或多个程序的非暂态计算机可读存储介质,所述一个或多个程序包括指令,用于确定所述自然语言语音输入是否对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者的所述指令还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
确定所述自然语言语音输入的所述一组声学特性是否与所述虚拟助理可访问的多个用户配置文件中的一个的所述一组声学特性相匹配:
根据确定所述自然语言语音输入的所述一组声学特性与所述多个用户配置文件中的一个的所述一组声学特性相匹配,推断所述自然语言语音输入对应于与所述用户相关联的一组声学特性;并且
根据确定所述输入不匹配所述多个用户配置文件中的任何一个,转为放弃调用所述虚拟助理。
6.根据权利要求5所述的存储一个或多个程序的非暂态计算机可读存储介质,所述一个或多个程序包括指令,所述一个或多个程序还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
为所述电子设备的多个用户中的至少一个创建用户配置文件,所述用户配置文件包括用户身份;并且
存储所述至少一个用户配置文件。
7.根据权利要求5所述的存储一个或多个程序的非暂态计算机可读存储介质,所述一个或多个程序包括指令,所述一个或多个程序还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
接收所述电子设备的所述多个用户中的至少一个的用户配置文件,所述用户配置文件包括用户身份。
8.根据权利要求5所述的非暂态计算机可读存储介质,所述非暂态计算机可读存储介质还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
首先确定所述自然语言语音输入是否匹配与所述多个用户配置文件中的至少一个相关联的一组声学特性;并且
根据确定所述自然语言语音输入匹配与所述多个用户配置文件中的一个相关联的一组声学特性,继续确定所述自然语言语音输入是否匹配所述用户可定制的词汇触发;并且
根据确定所述自然语言语音输入不匹配所述多个用户配置文件中的任何一个,转为放弃调用所述虚拟助理。
9.根据权利要求5所述的非暂态计算机可读存储介质,所述非暂态计算机可读存储介质还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
接收所述用户的除了重复的预选字词之外的自然语言语音输入;
将所述所接收的所述用户的自然语言语音输入的所述声学特性与存储在所述用户配置文件中的所述所接收的自然语言语音输入的所述声学特性进行比较;以及
确定所述所接收的所述用户的自然语言语音输入的所述声学特性是否明显不同于存储在所述用户配置文件中的所述所接收的自然语言语音输入的所述声学特性:
根据确定所述所接收的所述用户的自然语言语音输入的所述声学特性明显不同于存储在所述用户配置文件中的所述所接收的自然语言语音输入的所述声学特性:
基于所述所接收的所述用户的自然语言语音输入的所述声学特性来更新所述用户的所述用户配置文件;以及
存储更新的用户配置文件;以及
根据确定所述所接收的所述用户的自然语言语音输入的所述声学特性未明显不同于存储在所述用户配置文件中的所述所接收的自然语言语音输入的所述声学特性,放弃基于所述所接收的所述用户的自然语言语音输入的所述声学特性来更新所述用户配置文件。
10.根据权利要求1至9中任一项所述的存储一个或多个程序的非暂态计算机可读存储介质,所述一个或多个程序包括指令,所述一个或多个程序还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
从所述电子设备发送至少一个用户配置文件。
11.根据权利要求1至10中任一项所述的非暂态计算机可读存储介质,所述非暂态计算机可读存储介质还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
进一步根据确定所述自然语言语音输入对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者,接收至少一个附加安全标识符;以及
确定所述至少一个附加安全标识符是否与所述用户相关联:
根据确定所述至少一个附加安全标识符与所述用户相关联,调用所述虚拟助理;
根据确定所述至少一个附加安全标识符不与所述用户相关联,放弃调用所述虚拟助理。
12.根据权利要求1至11中任一项所述的非暂态计算机可读存储介质,所述非暂态计算机可读存储介质还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
登记至少一个用户;其中用于登记至少一个用户的所述指令还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
请求用户说出一个或多个预选字词;
响应于所述请求,接收包括对应于所述一个或多个预选字词的自然语言语音输入的用户输入。
13.根据权利要求1至12中任一项所述的非暂态计算机可读存储介质,所述非暂态计算机可读存储介质还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
在所述用户首次使用所述电子设备期间登记至少一个用户。
14.根据权利要求1至13中任一项所述的非暂态计算机可读存储介质,所述非暂态计算机可读存储介质还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
在检测到对所述用户的所述语音的所述声学特性的改变时更新至少一个用户的登记。
15.根据权利要求14所述的非暂态计算机可读存储介质,所述非暂态计算机可读存储介质还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
从所述用户请求至少一个附加安全标识符以执行所述登记;以及
确定所述至少一个附加安全标识符是否与所述用户相关联:
根据确定所述至少一个附加安全标识符与所述用户相关联,登记所述用户;
根据确定所述至少一个附加安全标识符不与所述用户相关联,放弃登记所述用户。
16.根据权利要求1至15中任一项所述的非暂态计算机可读存储介质,所述非暂态计算机可读存储介质还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
接收对应于与所述用户相关联的一组声学特性而不是所述用户可定制的词汇触发的自然语言语音输入;
响应于接收到对应于与所述用户相关联的一组声学特性和所述用户可定制的词汇触发中的一个而不是二者的自然语言语音输入,请求所述用户重复所述自然语言语音输入;以及
确定所述重复自然语言语音输入是否对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者;其中
根据确定所述自然语言语音输入对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者:
调用虚拟助理;以及
登记所述用户的第一个自然语言语音输入;以及
根据确定所述自然语言语音输入不对应于用户可定制的词汇触发,或所述自然语言语音输入不具有与所述用户相关联的一组声学特性,放弃调用虚拟助理。
17.根据权利要求1至16中任一项所述的非暂态计算机可读存储介质,用于确定所述自然语言语音输入是否对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者的所述指令还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
存储一个或多个超向量,每个超向量与用户的所述语音的所述声学特性相关联;
基于所述自然语言语音输入生成超向量;
将生成的超向量与一个或多个存储的超向量进行比较以生成分数;以及
确定所述分数是否超过阈值;
根据确定所述分数超过所述阈值,推断所述自然语言语音输入对应于与用户相关联的一组声学特性;并且
根据确定所述分数不超过所述阈值,推断所述自然语言语音输入不对应于与用户相关联的一组声学特性。
18.根据权利要求16所述的非暂态计算机可读存储介质,用于生成超向量的所述指令还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
利用状态回溯生成所述超向量。
19.一种电子设备,包括:一个或多个处理器;
存储器;和
一个或多个程序,其中所述一个或多个程序存储在权利要求1至18所述的非暂态计算机可读存储介质中,并被配置为由所述一个或多个处理器执行。
20.一种电子设备,包括用于执行存储在权利要求1至18所述的非暂态计算机可读存储介质中的所述一个或多个程序的装置。
21.一种电子设备,包括:
存储器;
麦克风;和
处理器,所述处理器耦接至所述存储器和所述麦克风,所述处理器被配置为:
接收来自多个用户中的一个用户的自然语言语音输入,所述自然语言语音输入具有一组声学特性;以及
确定所述自然语言语音输入是否对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者;其中
根据确定所述自然语言语音输入对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者,调用虚拟助理;并且
根据确定所述自然语言语音输入不对应于用户可定制的词汇触发,或所述自然语言语音输入不具有与所述用户相关联的一组声学特性,放弃调用虚拟助理。
22.一种使用虚拟助理的方法,包括:
在被配置为发送和接收数据的电子设备处,
接收来自多个用户中的一个用户的自然语言语音输入,所述自然语言语音输入具有一组声学特性;以及
确定所述自然语言语音输入是否对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者;其中
根据确定所述自然语言语音输入对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者,调用虚拟助理;并且
根据确定所述自然语言语音输入不对应于用户可定制的词汇触发,或所述自然语言语音输入不具有与所述用户相关联的一组声学特性,放弃调用虚拟助理。
23.一种利用电子设备的***,所述***包括:
用于接收来自多个用户中的一个用户的自然语言语音输入的装置,所述自然语言语音输入具有一组声学特性;以及
用于确定所述自然语言语音输入是否对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者的装置;其中
根据确定所述自然语言语音输入对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者,用于调用虚拟助理的装置;和
根据确定所述自然语言语音输入不对应于用户可定制的词汇触发,或所述自然语言语音输入不具有与所述用户相关联的一组声学特性,用于放弃调用虚拟助理的装置。
24.一种电子设备,包括:
处理单元,所述处理单元包括接收单元、确定单元和调用单元;所述处理单元被配置为:
使用所述接收单元接收来自多个用户中的一个用户的自然语言语音输入,所述自然语言语音输入具有一组声学特性;以及
使用所述确定单元确定所述自然语言语音输入是否对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者;其中
根据确定所述自然语言语音输入对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者,使用所述调用单元调用虚拟助理;并且
根据确定所述自然语言语音输入不对应于用户可定制的词汇触发,或所述自然语言语音输入不具有与所述用户相关联的一组声学特性,使用所述调用单元放弃调用虚拟助理。
25.根据权利要求24所述的电子设备,其中所述处理单元还包括存储单元,其中所述处理单元被进一步配置为:
使用所述接收单元接收至少一个字词的用户输入;并且
使用所述存储单元将所述至少一个字词存储为所述词汇触发。
26.根据权利要求24至25中任一项所述的电子设备,其中所述处理单元还包括比较单元,其中所述处理单元被进一步配置为:
进一步根据确定所述自然语言语音输入对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者:
使用所述比较单元将所接收的所述用户的自然语言语音输入的所述声学特性与所述虚拟助理可访问的参考组声学特性进行比较;并且
使用所述存储单元存储所述所接收的所述用户的自然语言语音输入的所述声学特性与所述参考组声学特性之间的差异。27.根据权利要求24至26中任一项所述的电子设备,其中所述处理单元还包括请求单元,其中所述处理单元被进一步配置为:
进一步根据确定所述自然语言语音输入对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者:
使用所述请求单元请求所述用户说出至少一个预选字词;
响应于所述请求,使用所述接收单元接收说出所述一个或多个预选字词的所述用户的自然语言语音输入。
28.根据权利要求24至27中任一项所述的电子设备,其中所述处理单元还包括推断单元;其中所述处理单元被进一步配置为确定所述自然语言语音输入是否对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者,所述处理单元被配置为:
使用所述确定单元确定所述自然语言语音输入的所述一组声学特性是否与所述虚拟助理可访问的多个用户配置文件中的一个的所述一组声学特性相匹配:
根据确定所述自然语言语音输入的所述一组声学特性与所述多个用户配置文件中的一个的所述一组声学特性相匹配,使用所述推断单元推断所述自然语言语音输入对应于与所述用户相关联的一组声学特性;并且
根据确定所述输入不匹配所述多个用户配置文件中的任何一个,转为使用所述调用单元放弃调用所述虚拟助理。
29.根据权利要求28所述的电子设备,其中所述处理单元还包括创建单元;其中所述处理单元被进一步配置为:
使用所述创建单元为所述电子设备的多个用户中的至少一个创建用户配置文件,所述用户配置文件包括用户身份;并且
使用所述存储单元存储所述至少一个用户配置文件。
30.根据权利要求28所述的电子设备,其中所述处理单元被进一步配置为:
使用所述接收单元为所述电子设备的多个用户中的至少一个接收用户配置文件,所述用户配置文件包括用户身份。
31.根据权利要求28所述的电子设备,其中所述处理单元被进一步配置为:
使用所述确定单元首先确定所述自然语言语音输入是否匹配与所述多个用户配置文件中的至少一个相关联的一组声学特性;以及
根据确定所述自然语言语音输入匹配与所述多个用户配置文件中的一个相关联的一组声学特性,使用所述确定单元继续确定所述自然语言语音输入是否匹配所述用户可定制的词汇触发;并且
根据确定所述自然语言语音输入不匹配所述多个用户配置文件中的任何一个,转为使用所述调用单元放弃调用所述虚拟助理。
32.根据权利要求28所述的电子设备,其中所述处理单元还包括更新单元;其中所述处理单元被进一步配置为:
使用所述接收单元接收所述用户的除了重复的预选字词之外的自然语言语音输入;
使用所述比较单元将所述所接收的所述用户的自然语言语音输入的所述声学特性与存储在所述用户配置文件中的所述所接收的自然语言语音输入的所述声学特性进行比较;并且
使用所述确定单元确定所述所接收的所述用户的自然语言语音输入的所述声学特性是否明显不同于存储在所述用户配置文件中的所述所接收的自然语言语音输入的所述声学特性:
根据确定所述所接收的所述用户的自然语言语音输入的所述声学特性明显不同于存储在所述用户配置文件中的所述所接收的自然语言语音输入的所述声学特性:
使用所述更新单元,基于所述所接收的所述用户的自然语言语音输入的所述声学特性来更新所述用户的所述用户配置文件;并且
使用所述存储单元存储更新的用户配置文件;并且
根据确定所述所接收的所述用户的自然语言语音输入的所述声学特性未明显不同于存储在所述用户配置文件中的所述所接收的自然语言语音输入的所述声学特性,使用所述更新单元放弃基于所述所接收的所述用户的自然语言语音输入的所述声学特性来更新所述用户配置文件。
33.根据权利要求24至32中任一项所述的电子设备,其中所述处理单元还包括发送单元;其中所述处理单元被进一步配置为:
使用所述发送单元从所述电子设备发送至少一个用户配置文件。
34.根据权利要求24至33中任一项所述的电子设备,所述处理单元被进一步配置为:
进一步根据确定所述自然语言语音输入对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者,使用所述接收单元接收至少一个附加安全标识符;并且
确定所述至少一个附加安全标识符是否与所述用户相关联:
根据确定所述至少一个附加安全标识符与所述用户相关联,使用所述调用单元调用所述虚拟助理;
根据确定所述至少一个附加安全标识符不与所述用户相关联,使用所述调用单元放弃调用所述虚拟助理。
35.根据权利要求24至34中任一项所述的电子设备,其中所述处理单元还包括登记单元;其中所述处理单元被进一步配置为:
使用所述登记单元登记至少一个用户;其中用于登记至少一个用户的所述指令还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
使用所述请求单元请求所述用户说出一个或多个预选字词;
响应于所述请求,使用所述接收单元接收包括对应于所述一个或多个预选字词的自然语言语音输入的用户输入。
36.根据权利要求24至35中任一项所述的电子设备,其中所述处理单元被进一步配置为:
在所述用户首次使用所述电子设备期间使用所述登记单元登记至少一个用户。
37.根据权利要求24至26所述的电子设备,其中所述处理单元被进一步配置为:
在检测到对所述用户的所述语音的所述声学特性的改变时,使用所述更新单元更新至少一个用户的登记。
38.根据权利要求37所述的电子设备,其中所述处理单元被进一步配置为:
使用所述请求单元从所述用户请求至少一个附加安全标识符以执行所述登记;并且
使用所述确定单元确定所述至少一个附加安全标识符是否与所述用户相关联:
根据确定所述至少一个附加安全标识符与所述用户相关联,使用所述登记单元登记所述用户;
根据确定所述至少一个附加安全标识符不与所述用户相关联,使用所述登记单元放弃登记所述用户。
39.根据权利要求24至38中任一项所述的电子设备,其中所述处理单元被进一步配置为:
使用所述接收单元接收对应于与所述用户相关联的一组声学特性而不是所述用户可定制的词汇触发的自然语言语音输入;
响应于接收到对应于与所述用户相关联的一组声学特性和所述用户可定制的词汇触发中的一者而不是二者的自然语言语音输入,使用所述请求单元请求所述用户重复所述自然语言语音输入;并且
使用所述确定单元确定所述重复自然语言语音输入是否对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者;其中
根据确定所述自然语言语音输入对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者:
使用所述调用单元调用虚拟助理;以及
使用所述登记单元登记所述用户的第一个自然语言语音输入;并且
根据确定所述自然语言语音输入不对应于用户可定制的词汇触发,或所述自然语言语音输入不具有与所述用户相关联的一组声学特性,使用所述调用单元放弃调用虚拟助理。
40.根据权利要求24至39中任一项所述的电子设备,其中所述处理单元被进一步配置为确定所述自然语言语音输入是否对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者,所述处理单元被配置为:
使用所述存储单元存储一个或多个超向量,每个超向量与用户的所述语音的所述声学特性相关联;
使用所述生成单元,基于所述自然语言语音输入生成超向量;
使用所述比较单元将生成的超向量与一个或多个存储的超向量进行比较以生成分数;并且
使用所述确定单元确定所述分数是否超过阈值;
根据确定所述分数超过所述阈值,使用所述推断单元推断所述自然语言语音输入对应于与用户相关联的一组声学特性;并且
根据确定所述分数不超过所述阈值,使用所述推断单元推断所述自然语言语音输入不对应于与用户相关联的一组声学特性。
41.根据权利要求40所述的电子设备,其中所述处理单元被进一步配置为生成所述超向量,所述处理单元被配置为:
通过利用状态回溯,使用所述生成单元生成所述超向量。
出于解释的目的,前面的描述为参考具体实施方案来描述的。然而,上面的示例性讨论并非旨在是穷尽的或将本发明限制为所公开的精确形式。根据以上教导内容,很多修改形式和变型形式均为可能的。选择并描述这些实施方案是为了最好地解释这些技术的原理及其实际应用。本领域的其他技术人员由此能够最好地利用这些技术以及具有适合于所设想的特定用途的各种修改的各种实施方案。
虽然参照附图对本公开以及示例进行了全面的描述,但应当注意,各种变化和修改对于本领域内的技术人员而言将变得显而易见。应当理解,此类变化和修改被认为被包括在由权利要求书所限定的本公开和示例的范围内。
如上文所述,本发明技术的一个方面在于采集和使用得自各种来源的数据,以改进向用户递送其可能感兴趣的内容。本公开设想,在一些实例中,该所采集的数据可包括唯一地识别或可用于联系或定位特定人员的个人信息数据。此类个人信息数据可包括人口数据、基于位置的数据、电话号码、电子邮件地址、家庭地址或任何其他识别信息。
本公开认识到在本发明技术中使用此类个人信息数据可用于使用户受益。例如,该个人信息数据可用于递送用户较感兴趣的目标内容。因此,使用此类个人信息数据使得能够对所递送的内容进行有计划的控制。此外,本公开还设想个人信息数据有益于用户的其他用途。
本公开还设想负责此类个人信息数据的收集、分析、公开、发送、存储或其他用途的实体将遵守已确立的隐私政策和/或隐私实践。具体地,此类实体应当实行并坚持使用被公认为满足或超出对维护个人信息数据的隐私性和安全性的行业或政府要求的隐私政策和实践。例如,来自用户的个人信息应当被收集用于实体的合法且合理的用途,并且不在这些合法使用之外共享或出售。另外,此类收集应当仅在用户知情同意之后进行。另外,此类实体应采取任何所需的步骤,以保障和保护对此类个人信息数据的访问,并且确保能够访问个人信息数据的其他人遵守他们的隐私政策和程序。另外,这种实体可使其本身经受第三方评估以证明其遵守广泛接受的隐私政策和实践。
不管前述情况如何,本公开还预期用户选择性地阻止使用或访问个人信息数据的实施方案。即本公开预期可提供硬件元件和/或软件元件,以防止或阻止对此类个人信息数据的访问。例如,就广告递送服务而言,本发明的技术可被配置为在注册服务期间允许用户选择“加入”或“退出”参与对个人信息数据的收集。又如,用户可选择不为目标内容递送服务提供位置信息。再如,用户可选择不提供精确的位置信息,但准许传输位置区域信息。
因此,虽然本公开广泛地覆盖了使用个人信息数据来实现一个或多个各种所公开的实施方案,但本公开还设想各种实施方案也可在无需访问此类个人信息数据的情况下被实现。即,本发明技术的各种实施方案不会由于缺少此类个人信息数据的全部或一部分而无法正常进行。例如,可通过基于非个人信息数据或绝对最低限度的个人信息诸如与用户相关联的设备所请求的内容、对内容递送服务可用的其他非个人信息或公开可用信息来推断偏好,从而选择内容并递送给用户。
Claims (41)
1.一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储一个或多个程序,所述一个或多个程序包括指令,所述指令当由电子设备执行时,使得所述电子设备:
接收来自多个用户中的一个用户的自然语言语音输入,所述自然语言语音输入具有一组声学特性;以及
确定所述自然语言语音输入是否对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者;其中
根据确定所述自然语言语音输入对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者,调用虚拟助理;并且
根据确定所述自然语言语音输入不对应于用户可定制的词汇触发,或所述自然语言语音输入不具有与所述用户相关联的一组声学特性,放弃调用虚拟助理。
2.根据权利要求1所述的存储一个或多个程序的非暂态计算机可读存储介质,所述一个或多个程序包括指令,所述一个或多个程序还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
接收至少一个字词的用户输入;以及
将所述至少一个字词存储为所述词汇触发。
3.根据权利要求1所述的存储一个或多个程序的非暂态计算机可读存储介质,所述一个或多个程序包括指令,所述一个或多个程序还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
进一步根据确定所述自然语言语音输入对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者:
将所接收的所述用户的自然语言语音输入的所述声学特性与所述虚拟助理可访问的参考组声学特性进行比较;以及
存储所述所接收的所述用户的自然语言语音输入的所述声学特性与所述参考组声学特性之间的差异。
4.根据权利要求1所述的存储一个或多个程序的非暂态计算机可读存储介质,所述一个或多个程序包括指令,所述一个或多个程序还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
进一步根据确定所述自然语言语音输入对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者:
请求所述用户说出至少一个预选字词;
响应于所述请求,接收说出所述一个或多个预选字词的所述用户的自然语言语音输入。
5.根据权利要求1所述的存储一个或多个程序的非暂态计算机可读存储介质,所述一个或多个程序包括指令,用于确定所述自然语言语音输入是否对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者的所述指令还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
确定所述自然语言语音输入的所述一组声学特性是否与所述虚拟助理可访问的多个用户配置文件中的一者的所述一组声学特性相匹配:
根据确定所述自然语言语音输入的所述一组声学特性与所述多个用户配置文件中的一者的所述一组声学特性相匹配,推断所述自然语言语音输入对应于与所述用户相关联的一组声学特性;并且
根据确定所述输入与所述多个用户配置文件中的任何一者不匹配,转为放弃调用所述虚拟助理。
6.根据权利要求5所述的存储一个或多个程序的非暂态计算机可读存储介质,所述一个或多个程序包括指令,所述一个或多个程序还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
为所述电子设备的多个用户中的至少一个用户创建用户配置文件,所述用户配置文件包括用户身份;以及
存储所述至少一个用户配置文件。
7.根据权利要求5所述的存储一个或多个程序的非暂态计算机可读存储介质,所述一个或多个程序包括指令,所述一个或多个程序还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
接收所述电子设备的所述多个用户中的至少一者的用户配置文件,所述用户配置文件包括用户身份。
8.根据权利要求5所述的非暂态计算机可读存储介质,所述非暂态计算机可读存储介质还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
首先确定所述自然语言语音输入是否匹配与所述多个用户配置文件中的至少一者相关联的一组声学特性;以及
根据确定所述自然语言语音输入匹配与所述多个用户配置文件中的一者相关联的一组声学特性,继续确定所述自然语言语音输入是否与所述用户可定制的词汇触发相匹配;并且
根据确定所述自然语言语音输入与所述多个用户配置文件中的任何一者不匹配,转为放弃调用所述虚拟助理。
9.根据权利要求5所述的非暂态计算机可读存储介质,所述非暂态计算机可读存储介质还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
接收所述用户的除了重复的预选字词之外的自然语言语音输入;
将所述所接收的所述用户的自然语言语音输入的所述声学特性与存储在所述用户配置文件中的所述所接收的自然语言语音输入的所述声学特性进行比较;以及
确定所述所接收的所述用户的自然语言语音输入的所述声学特性是否明显不同于存储在所述用户配置文件中的所述所接收的自然语言语音输入的所述声学特性:
根据确定所述所接收的所述用户的自然语言语音输入的所述声学特性明显不同于存储在所述用户配置文件中的所述所接收的自然语言语音输入的所述声学特性:
基于所述所接收的所述用户的自然语言语音输入的所述声学特性来更新所述用户的所述用户配置文件;以及
存储更新的用户配置文件;并且
根据确定所述所接收的所述用户的自然语言语音输入的所述声学特性未明显不同于存储在所述用户配置文件中的所述所接收的自然语言语音输入的所述声学特性,放弃基于所述所接收的所述用户的自然语言语音输入的所述声学特性来更新所述用户配置文件。
10.根据权利要求1所述的存储一个或多个程序的非暂态计算机可读存储介质,所述一个或多个程序包括指令,所述一个或多个程序还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
从所述电子设备发送至少一个用户配置文件。
11.根据权利要求1所述的非暂态计算机可读存储介质,所述非暂态计算机可读存储介质还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
进一步根据确定所述自然语言语音输入对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者,接收至少一个附加安全标识符;以及
确定所述至少一个附加安全标识符是否与所述用户相关联:
根据确定所述至少一个附加安全标识符与所述用户相关联,调用所述虚拟助理;
根据确定所述至少一个附加安全标识符不与所述用户相关联,放弃调用所述虚拟助理。
12.根据权利要求1所述的非暂态计算机可读存储介质,所述非暂态计算机可读存储介质还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
登记至少一个用户;其中用于登记至少一个用户的所述指令还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
请求用户说出一个或多个预选字词;
响应于所述请求,接收包括对应于所述一个或多个预选字词的自然语言语音输入的用户输入。
13.根据权利要求1所述的非暂态计算机可读存储介质,所述非暂态计算机可读存储介质还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
在所述用户首次使用所述电子设备期间登记至少一个用户。
14.根据权利要求1所述的非暂态计算机可读存储介质,所述非暂态计算机可读存储介质还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
在检测到对所述用户的所述语音的所述声学特性的改变时更新至少一个用户的登记。
15.根据权利要求14所述的非暂态计算机可读存储介质,所述非暂态计算机可读存储介质还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
从所述用户请求至少一个附加安全标识符以执行所述登记;以及
确定所述至少一个附加安全标识符是否与所述用户相关联:
根据确定所述至少一个附加安全标识符与所述用户相关联,登记所述用户;
根据确定所述至少一个附加安全标识符不与所述用户相关联,放弃登记所述用户。
16.根据权利要求1所述的非暂态计算机可读存储介质,所述非暂态计算机可读存储介质还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
接收对应于与所述用户相关联的一组声学特性而不是所述用户可定制的词汇触发的自然语言语音输入;
响应于接收到对应于与所述用户相关联的一组声学特性和所述用户可定制的词汇触发中的一者而不是二者的自然语言语音输入,请求所述用户重复所述自然语言语音输入;以及
确定所述重复自然语言语音输入是否对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者;其中
根据确定所述自然语言语音输入对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者:
调用虚拟助理;以及
登记所述用户的第一个自然语言语音输入;以及
根据确定所述自然语言语音输入不对应于用户可定制的词汇触发,或所述自然语言语音输入不具有与所述用户相关联的一组声学特性,放弃调用虚拟助理。
17.根据权利要求1所述的非暂态计算机可读存储介质,用于确定所述自然语言语音输入是否对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者的所述指令还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
存储一个或多个超向量,每个超向量与用户的所述语音的所述声学特性相关联;
基于所述自然语言语音输入生成超向量;
将生成的超向量与一个或多个存储的超向量进行比较以生成分数;以及
确定所述分数是否超过阈值;
根据确定所述分数超过所述阈值,推断所述自然语言语音输入对应于与用户相关联的一组声学特性;并且
根据确定所述分数不超过所述阈值,推断所述自然语言语音输入不对应于与用户相关联的一组声学特性。
18.根据权利要求16所述的非暂态计算机可读存储介质,用于生成超向量的所述指令还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
利用状态回溯生成所述超向量。
19.一种电子设备,包括:
一个或多个处理器;
存储器;和
一个或多个程序,其中所述一个或多个程序存储在权利要求1所述的非暂态计算机可读存储介质中,并被配置为由所述一个或多个处理器执行。
20.一种电子设备,包括用于执行存储在权利要求1所述的非暂态计算机可读存储介质中的所述一个或多个程序的装置。
21.一种电子设备,包括:
存储器;
麦克风;和
处理器,所述处理器耦接至所述存储器和所述麦克风,所述处理器被配置为:
接收来自多个用户中的一个用户的自然语言语音输入,所述自然语言语音输入具有一组声学特性;以及
确定所述自然语言语音输入是否对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者;其中
根据确定所述自然语言语音输入对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者,调用虚拟助理;并且
根据确定所述自然语言语音输入不对应于用户可定制的词汇触发,或所述自然语言语音输入不具有与所述用户相关联的一组声学特性,放弃调用虚拟助理。
22.一种使用虚拟助理的方法,包括:
在被配置为发送和接收数据的电子设备处,
接收来自多个用户中的一个用户的自然语言语音输入,所述自然语言语音输入具有一组声学特性;以及
确定所述自然语言语音输入是否对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者;其中
根据确定所述自然语言语音输入对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者,调用虚拟助理;并且
根据确定所述自然语言语音输入不对应于用户可定制的词汇触发,或所述自然语言语音输入不具有与所述用户相关联的一组声学特性,放弃调用虚拟助理。
23.一种利用电子设备的***,所述***包括:
用于接收来自多个用户中的一个用户的自然语言语音输入的装置,所述自然语言语音输入具有一组声学特性;以及
用于确定所述自然语言语音输入是否对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者的装置;其中
根据确定所述自然语言语音输入对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者,用于调用虚拟助理的装置;并且
根据确定所述自然语言语音输入不对应于用户可定制的词汇触发,或所述自然语言语音输入不具有与所述用户相关联的一组声学特性,用于放弃调用虚拟助理的装置。
24.一种电子设备,包括:
处理单元,所述处理单元包括接收单元、确定单元和调用单元;所述处理单元被配置为:
使用所述接收单元接收来自多个用户中的一个用户的自然语言语音输入,所述自然语言语音输入具有一组声学特性;并且
使用所述确定单元确定所述自然语言语音输入是否对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者;其中
根据确定所述自然语言语音输入对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者,使用所述调用单元调用虚拟助理;并且
根据确定所述自然语言语音输入不对应于用户可定制的词汇触发,或所述自然语言语音输入不具有与所述用户相关联的一组声学特性,使用所述调用单元放弃调用虚拟助理。
25.根据权利要求24所述的电子设备,其中所述处理单元还包括存储单元,其中所述处理单元被进一步配置为:
使用所述接收单元接收至少一个字词的用户输入;并且
使用所述存储单元将所述至少一个字词存储为所述词汇触发。
26.根据权利要求24所述的电子设备,其中所述处理单元还包括比较单元,其中所述处理单元被进一步配置为:
进一步根据确定所述自然语言语音输入对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者:
使用所述比较单元将所接收的所述用户的自然语言语音输入的所述声学特性与所述虚拟助理可访问的参考组声学特性进行比较;并且
使用所述存储单元存储所述所接收的所述用户的自然语言语音输入的所述声学特性与所述参考组声学特性之间的差异。
27.根据权利要求24所述的电子设备,其中所述处理单元还包括请求单元,其中所述处理单元被进一步配置为:
进一步根据确定所述自然语言语音输入对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者:
使用所述请求单元请求所述用户说出至少一个预选字词;
响应于所述请求,使用所述接收单元接收说出所述一个或多个预选字词的所述用户的自然语言语音输入。
28.根据权利要求24所述的电子设备,其中所述处理单元还包括推断单元;其中所述处理单元被进一步配置为确定所述自然语言语音输入是否对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者,所述处理单元被配置为:
使用所述确定单元确定所述自然语言语音输入的所述一组声学特性是否与所述虚拟助理可访问的多个用户配置文件中的一者的所述一组声学特性相匹配:
根据确定所述自然语言语音输入的所述一组声学特性与所述多个用户配置文件中的一者的所述一组声学特性相匹配,使用所述推断单元推断所述自然语言语音输入对应于与所述用户相关联的一组声学特性;并且
根据确定所述输入与所述多个用户配置文件中的任何一者不匹配,转为使用所述调用单元放弃调用所述虚拟助理。
29.根据权利要求28所述的电子设备,其中所述处理单元还包括创建单元;其中所述处理单元被进一步配置为:
使用所述创建单元为所述电子设备的多个用户中的至少一个用户创建用户配置文件,所述用户配置文件包括用户身份;并且
使用所述存储单元存储所述至少一个用户配置文件。
30.根据权利要求28所述的电子设备,其中所述处理单元被进一步配置为:
使用所述接收单元为所述电子设备的多个用户中的至少一个用户接收用户配置文件,所述用户配置文件包括用户身份。
31.根据权利要求28所述的电子设备,其中所述处理单元被进一步配置为:
使用所述确定单元首先确定所述自然语言语音输入是否匹配与所述多个用户配置文件中的至少一者相关联的一组声学特性;以及
根据确定所述自然语言语音输入匹配与所述多个用户配置文件中的一者相关联的一组声学特性,使用所述确定单元继续确定所述自然语言语音输入是否与所述用户可定制的词汇触发相匹配;并且
根据确定所述自然语言语音输入与所述多个用户配置文件中的任何一者不匹配,转为使用所述调用单元放弃调用所述虚拟助理。
32.根据权利要求28所述的电子设备,其中所述处理单元还包括更新单元;其中所述处理单元被进一步配置为:
使用所述接收单元接收所述用户的除了重复的预选字词之外的自然语言语音输入;
使用所述比较单元将所述所接收的所述用户的自然语言语音输入的所述声学特性与存储在所述用户配置文件中的所述所接收的自然语言语音输入的所述声学特性进行比较;并且
使用所述确定单元确定所述所接收的所述用户的自然语言语音输入的所述声学特性是否明显不同于存储在所述用户配置文件中的所述所接收的自然语言语音输入的所述声学特性:
根据确定所述所接收的所述用户的自然语言语音输入的所述声学特性明显不同于存储在所述用户配置文件中的所述所接收的自然语言语音输入的所述声学特性:
使用所述更新单元,基于所述所接收的所述用户的自然语言语音输入的所述声学特性来更新所述用户的所述用户配置文件;并且
使用所述存储单元存储更新的用户配置文件;并且根据确定所述所接收的所述用户的自然语言语音输入的所述声学特性未明显不同于存储在所述用户配置文件中的所述所接收的自然语言语音输入的所述声学特性,使用所述更新单元放弃基于所述所接收的所述用户的自然语言语音输入的所述声学特性来更新所述用户配置文件。
33.根据权利要求24所述的电子设备,其中所述处理单元还包括发送单元;其中所述处理单元被进一步配置为:
使用所述发送单元从所述电子设备发送至少一个用户配置文件。
34.根据权利要求24所述的电子设备,所述处理单元被进一步配置为:
进一步根据确定所述自然语言语音输入对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者,使用所述接收单元接收至少一个附加安全标识符;并且
确定所述至少一个附加安全标识符是否与所述用户相关联:
根据确定所述至少一个附加安全标识符与所述用户相关联,使用所述调用单元调用所述虚拟助理;
根据确定所述至少一个附加安全标识符不与所述用户相关联,使用所述调用单元放弃调用所述虚拟助理。
35.根据权利要求24所述的电子设备,其中所述处理单元还包括登记单元;其中所述处理单元被进一步配置为:
使用所述登记单元登记至少一个用户;其中用于登记至少一个用户的所述指令还包括指令,所述指令当由所述电子设备的所述一个或多个处理器执行时,使得所述设备:
使用所述请求单元请求所述用户说出一个或多个预选字词;
响应于所述请求,使用所述接收单元接收包括对应于所述一个或多个预选字词的自然语言语音输入的用户输入。
36.根据权利要求24所述的电子设备,其中所述处理单元被进一步配置为:
在所述用户首次使用所述电子设备期间使用所述登记单元登记至少一个用户。
37.根据权利要求24所述的电子设备,其中所述处理单元被进一步配置为:
在检测到对所述用户的所述语音的所述声学特性的改变时,使用所述更新单元更新至少一个用户的登记。
38.根据权利要求37所述的电子设备,其中所述处理单元被进一步配置为:
使用所述请求单元从所述用户请求至少一个附加安全标识符以执行所述登记;并且
使用所述确定单元确定所述至少一个附加安全标识符是否与所述用户相关联:
根据确定所述至少一个附加安全标识符与所述用户相关联,使用所述登记单元登记所述用户;
根据确定所述至少一个附加安全标识符不与所述用户相关联,使用所述登记单元放弃登记所述用户。
39.根据权利要求24所述的电子设备,其中所述处理单元被进一步配置为:
使用所述接收单元接收对应于与所述用户相关联的一组声学特性而不是所述用户可定制的词汇触发的自然语言语音输入;
响应于接收到对应于与所述用户相关联的一组声学特性和所述用户可定制的词汇触发中的一者而不是二者的自然语言语音输入,使用所述请求单元请求所述用户重复所述自然语言语音输入;并且
使用所述确定单元确定所述重复自然语言语音输入是否对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者;其中
根据确定所述自然语言语音输入对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者:
使用所述调用单元调用虚拟助理;并且
使用所述登记单元登记所述用户的第一个自然语言语音输入;并且
根据确定所述自然语言语音输入不对应于用户可定制的词汇触发,或所述自然语言语音输入不具有与所述用户相关联的一组声学特性,使用所述调用单元放弃调用虚拟助理。
40.根据权利要求24所述的电子设备,其中所述处理单元被进一步配置为确定所述自然语言语音输入是否对应于用户可定制的词汇触发和与所述用户相关联的一组声学特性二者,所述处理单元被配置为:
使用所述存储单元存储一个或多个超向量,每个超向量与用户的所述语音的所述声学特性相关联;
使用所述生成单元,基于所述自然语言语音输入生成超向量;
使用所述比较单元将生成的超向量与一个或多个存储的超向量进行比较以生成分数;并且
使用所述确定单元确定所述分数是否超过阈值;
根据确定所述分数超过所述阈值,使用所述推断单元推断所述自然语言语音输入对应于与用户相关联的一组声学特性;并且
根据确定所述分数不超过所述阈值,使用所述推断单元推断所述自然语言语音输入不对应于与用户相关联的一组声学特性。
41.根据权利要求40所述的电子设备,其中所述处理单元被进一步配置为生成所述超向量,所述处理单元被配置为:
通过利用状态回溯,使用所述生成单元生成所述超向量。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562235511P | 2015-09-30 | 2015-09-30 | |
US62/235,511 | 2015-09-30 | ||
US15/163,392 | 2016-05-24 | ||
US15/163,392 US20170092278A1 (en) | 2015-09-30 | 2016-05-24 | Speaker recognition |
PCT/US2016/035105 WO2017058298A1 (en) | 2015-09-30 | 2016-05-31 | Speaker recognition |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108604449A true CN108604449A (zh) | 2018-09-28 |
CN108604449B CN108604449B (zh) | 2023-11-14 |
Family
ID=58406610
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680049825.XA Active CN108604449B (zh) | 2015-09-30 | 2016-05-31 | 说话者识别 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20170092278A1 (zh) |
CN (1) | CN108604449B (zh) |
DE (1) | DE112016003459B4 (zh) |
WO (1) | WO2017058298A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109785858A (zh) * | 2018-12-14 | 2019-05-21 | 平安普惠企业管理有限公司 | 一种联系人添加方法、装置、可读存储介质及终端设备 |
CN112017672A (zh) * | 2019-05-31 | 2020-12-01 | 苹果公司 | 数字助理***中的声音识别 |
CN112365895A (zh) * | 2020-10-09 | 2021-02-12 | 深圳前海微众银行股份有限公司 | 音频处理方法、装置及计算设备、存储介质 |
CN112420032A (zh) * | 2019-08-20 | 2021-02-26 | 三星电子株式会社 | 电子设备及用于控制电子设备的方法 |
CN113035188A (zh) * | 2021-02-25 | 2021-06-25 | 平安普惠企业管理有限公司 | 通话文本生成方法、装置、设备及存储介质 |
Families Citing this family (312)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10032452B1 (en) | 2016-12-30 | 2018-07-24 | Google Llc | Multimodal transmission of packetized data |
US8677377B2 (en) | 2005-09-08 | 2014-03-18 | Apple Inc. | Method and apparatus for building an intelligent automated assistant |
US20070157228A1 (en) | 2005-12-30 | 2007-07-05 | Jason Bayer | Advertising with video ad creatives |
US9318108B2 (en) | 2010-01-18 | 2016-04-19 | Apple Inc. | Intelligent automated assistant |
US8977255B2 (en) | 2007-04-03 | 2015-03-10 | Apple Inc. | Method and system for operating a multi-function portable electronic device using voice-activation |
US9911126B2 (en) | 2007-04-10 | 2018-03-06 | Google Llc | Refreshing advertisements in offline or virally distributed content |
US8661464B2 (en) | 2007-06-27 | 2014-02-25 | Google Inc. | Targeting in-video advertising |
US9769544B1 (en) | 2007-12-10 | 2017-09-19 | Google Inc. | Presenting content with video content based on time |
US10002189B2 (en) | 2007-12-20 | 2018-06-19 | Apple Inc. | Method and apparatus for searching using an active ontology |
US9330720B2 (en) | 2008-01-03 | 2016-05-03 | Apple Inc. | Methods and apparatus for altering audio output signals |
US10013986B1 (en) | 2016-12-30 | 2018-07-03 | Google Llc | Data structure pooling of voice activated data packets |
US11017428B2 (en) | 2008-02-21 | 2021-05-25 | Google Llc | System and method of data transmission rate adjustment |
US20100030549A1 (en) | 2008-07-31 | 2010-02-04 | Lee Michael M | Mobile device having human language translation capability with positional feedback |
US8676904B2 (en) | 2008-10-02 | 2014-03-18 | Apple Inc. | Electronic devices with voice command and contextual data processing capabilities |
US10706373B2 (en) | 2011-06-03 | 2020-07-07 | Apple Inc. | Performing actions associated with task items that represent tasks to perform |
US10276170B2 (en) | 2010-01-18 | 2019-04-30 | Apple Inc. | Intelligent automated assistant |
US8682667B2 (en) | 2010-02-25 | 2014-03-25 | Apple Inc. | User profiling for selecting user specific voice input processing information |
US10013978B1 (en) | 2016-12-30 | 2018-07-03 | Google Llc | Sequence dependent operation processing of packet based data message transmissions |
US10957002B2 (en) | 2010-08-06 | 2021-03-23 | Google Llc | Sequence dependent or location based operation processing of protocol based data message transmissions |
US9262612B2 (en) | 2011-03-21 | 2016-02-16 | Apple Inc. | Device access using voice authentication |
US10057736B2 (en) | 2011-06-03 | 2018-08-21 | Apple Inc. | Active transport based notifications |
US8548848B1 (en) | 2011-06-21 | 2013-10-01 | Google Inc. | Mobile interstitial ads |
US11087424B1 (en) | 2011-06-24 | 2021-08-10 | Google Llc | Image recognition-based content item selection |
US10972530B2 (en) | 2016-12-30 | 2021-04-06 | Google Llc | Audio-based data structure generation |
US8688514B1 (en) | 2011-06-24 | 2014-04-01 | Google Inc. | Ad selection using image data |
US10630751B2 (en) | 2016-12-30 | 2020-04-21 | Google Llc | Sequence dependent data message consolidation in a voice activated computer network environment |
US8650188B1 (en) | 2011-08-31 | 2014-02-11 | Google Inc. | Retargeting in a search environment |
US10956485B2 (en) | 2011-08-31 | 2021-03-23 | Google Llc | Retargeting in a search environment |
US11093692B2 (en) | 2011-11-14 | 2021-08-17 | Google Llc | Extracting audiovisual features from digital components |
US10586127B1 (en) | 2011-11-14 | 2020-03-10 | Google Llc | Extracting audiovisual features from content elements on online documents |
US11544750B1 (en) | 2012-01-17 | 2023-01-03 | Google Llc | Overlaying content items with third-party reviews |
US10134385B2 (en) | 2012-03-02 | 2018-11-20 | Apple Inc. | Systems and methods for name pronunciation |
US9922334B1 (en) | 2012-04-06 | 2018-03-20 | Google Llc | Providing an advertisement based on a minimum number of exposures |
US10417037B2 (en) | 2012-05-15 | 2019-09-17 | Apple Inc. | Systems and methods for integrating third party services with a digital assistant |
US9953340B1 (en) | 2012-05-22 | 2018-04-24 | Google Llc | Companion advertisements on remote control devices |
US10776830B2 (en) | 2012-05-23 | 2020-09-15 | Google Llc | Methods and systems for identifying new computers and providing matching services |
US10152723B2 (en) | 2012-05-23 | 2018-12-11 | Google Llc | Methods and systems for identifying new computers and providing matching services |
US9275411B2 (en) | 2012-05-23 | 2016-03-01 | Google Inc. | Customized voice action system |
US9213769B2 (en) | 2012-06-13 | 2015-12-15 | Google Inc. | Providing a modified content item to a user |
US9767479B2 (en) | 2012-06-25 | 2017-09-19 | Google Inc. | System and method for deploying ads based on a content exposure interval |
US9286397B1 (en) | 2012-09-28 | 2016-03-15 | Google Inc. | Generating customized content |
US9495686B1 (en) | 2012-10-30 | 2016-11-15 | Google Inc. | Serving a content item based on acceptance of a new feature |
US10650066B2 (en) | 2013-01-31 | 2020-05-12 | Google Llc | Enhancing sitelinks with creative content |
US10735552B2 (en) | 2013-01-31 | 2020-08-04 | Google Llc | Secondary transmissions of packetized data |
KR102516577B1 (ko) | 2013-02-07 | 2023-04-03 | 애플 인크. | 디지털 어시스턴트를 위한 음성 트리거 |
US10652394B2 (en) | 2013-03-14 | 2020-05-12 | Apple Inc. | System and method for processing voicemail |
US10719591B1 (en) | 2013-03-15 | 2020-07-21 | Google Llc | Authentication of audio-based input signals |
US11064250B2 (en) | 2013-03-15 | 2021-07-13 | Google Llc | Presence and authentication for media measurement |
US10748529B1 (en) | 2013-03-15 | 2020-08-18 | Apple Inc. | Voice activated device for use with a voice-based digital assistant |
US10541997B2 (en) | 2016-12-30 | 2020-01-21 | Google Llc | Authentication of packetized audio signals |
US9953085B1 (en) | 2013-05-31 | 2018-04-24 | Google Llc | Feed upload for search entity based content selection |
US11030239B2 (en) | 2013-05-31 | 2021-06-08 | Google Llc | Audio based entity-action pair based selection |
WO2014197335A1 (en) | 2013-06-08 | 2014-12-11 | Apple Inc. | Interpreting and acting upon commands that involve sharing information with remote devices |
US10176167B2 (en) | 2013-06-09 | 2019-01-08 | Apple Inc. | System and method for inferring user intent from speech inputs |
KR101922663B1 (ko) | 2013-06-09 | 2018-11-28 | 애플 인크. | 디지털 어시스턴트의 둘 이상의 인스턴스들에 걸친 대화 지속성을 가능하게 하기 위한 디바이스, 방법 및 그래픽 사용자 인터페이스 |
US11218434B2 (en) | 2013-06-12 | 2022-01-04 | Google Llc | Audio data packet status determination |
US9923979B2 (en) | 2013-06-27 | 2018-03-20 | Google Llc | Systems and methods of determining a geographic location based conversion |
WO2015020942A1 (en) | 2013-08-06 | 2015-02-12 | Apple Inc. | Auto-activating smart responses based on activities from remote devices |
US9779065B1 (en) | 2013-08-29 | 2017-10-03 | Google Inc. | Displaying graphical content items based on textual content items |
US9767489B1 (en) | 2013-08-30 | 2017-09-19 | Google Inc. | Content item impression effect decay |
US10614153B2 (en) | 2013-09-30 | 2020-04-07 | Google Llc | Resource size-based content item selection |
US9703757B2 (en) | 2013-09-30 | 2017-07-11 | Google Inc. | Automatically determining a size for a content item for a web page |
US10431209B2 (en) | 2016-12-30 | 2019-10-01 | Google Llc | Feedback controller for data transmissions |
US9489692B1 (en) | 2013-10-16 | 2016-11-08 | Google Inc. | Location-based bid modifiers |
US10614491B2 (en) | 2013-11-06 | 2020-04-07 | Google Llc | Content rate display adjustment between different categories of online documents in a computer network environment |
US9767196B1 (en) | 2013-11-20 | 2017-09-19 | Google Inc. | Content selection |
US10296160B2 (en) | 2013-12-06 | 2019-05-21 | Apple Inc. | Method for extracting salient dialog usage from live data |
US10873616B1 (en) | 2013-12-10 | 2020-12-22 | Google Llc | Providing content to co-located devices with enhanced presentation characteristics |
US9727818B1 (en) | 2014-02-23 | 2017-08-08 | Google Inc. | Impression effect modeling for content items |
US11062368B1 (en) | 2014-03-19 | 2021-07-13 | Google Llc | Selecting online content using offline data |
US9317873B2 (en) | 2014-03-28 | 2016-04-19 | Google Inc. | Automatic verification of advertiser identifier in advertisements |
US20150287099A1 (en) | 2014-04-07 | 2015-10-08 | Google Inc. | Method to compute the prominence score to phone numbers on web pages and automatically annotate/attach it to ads |
US11115529B2 (en) | 2014-04-07 | 2021-09-07 | Google Llc | System and method for providing and managing third party content with call functionality |
US9715875B2 (en) | 2014-05-30 | 2017-07-25 | Apple Inc. | Reducing the need for manual start/end-pointing and trigger phrases |
US9633004B2 (en) | 2014-05-30 | 2017-04-25 | Apple Inc. | Better resolution when referencing to concepts |
WO2015184186A1 (en) | 2014-05-30 | 2015-12-03 | Apple Inc. | Multi-command single utterance input method |
US9430463B2 (en) | 2014-05-30 | 2016-08-30 | Apple Inc. | Exemplar-based natural language processing |
US10170123B2 (en) | 2014-05-30 | 2019-01-01 | Apple Inc. | Intelligent assistant for home automation |
US9338493B2 (en) | 2014-06-30 | 2016-05-10 | Apple Inc. | Intelligent automated assistant for TV user interactions |
US9892430B1 (en) | 2014-07-29 | 2018-02-13 | Google Llc | System and method for providing content items with format elements |
US9779144B1 (en) | 2014-08-02 | 2017-10-03 | Google Inc. | Identifying a level of relevancy of a keyword cluster related to an event category for a given time period relative to the event |
US10229164B1 (en) | 2014-08-02 | 2019-03-12 | Google Llc | Adjusting a relevancy score of a keyword cluster—time period—event category combination based on event related information |
US11463541B2 (en) | 2014-08-02 | 2022-10-04 | Google Llc | Providing content based on event related information |
US9843649B1 (en) | 2014-08-02 | 2017-12-12 | Google Llc | Providing content based on event related information |
US9582537B1 (en) | 2014-08-21 | 2017-02-28 | Google Inc. | Structured search query generation and use in a computer network environment |
US9818400B2 (en) | 2014-09-11 | 2017-11-14 | Apple Inc. | Method and apparatus for discovering trending terms in speech requests |
US10540681B1 (en) | 2014-09-22 | 2020-01-21 | Google Llc | Correlating online and offline conversions with online conversion identifiers |
US9767169B1 (en) | 2014-09-26 | 2017-09-19 | Google Inc. | Enhancing search results for improved readability |
US9990653B1 (en) | 2014-09-29 | 2018-06-05 | Google Llc | Systems and methods for serving online content based on user engagement duration |
US9668121B2 (en) | 2014-09-30 | 2017-05-30 | Apple Inc. | Social reminders |
US10127911B2 (en) | 2014-09-30 | 2018-11-13 | Apple Inc. | Speaker identification and unsupervised speaker adaptation techniques |
US10074360B2 (en) | 2014-09-30 | 2018-09-11 | Apple Inc. | Providing an indication of the suitability of speech recognition |
US10885560B1 (en) | 2014-10-03 | 2021-01-05 | Google Llc | Systems and methods for annotating online content with offline interaction data |
US10152299B2 (en) | 2015-03-06 | 2018-12-11 | Apple Inc. | Reducing response latency of intelligent automated assistants |
US10567477B2 (en) | 2015-03-08 | 2020-02-18 | Apple Inc. | Virtual assistant continuity |
US9721566B2 (en) | 2015-03-08 | 2017-08-01 | Apple Inc. | Competing devices responding to voice triggers |
US9886953B2 (en) | 2015-03-08 | 2018-02-06 | Apple Inc. | Virtual assistant activation |
KR101595090B1 (ko) * | 2015-04-30 | 2016-02-17 | 주식회사 아마다스 | 음성 인식을 이용한 정보 검색 방법 및 장치 |
US10460227B2 (en) | 2015-05-15 | 2019-10-29 | Apple Inc. | Virtual assistant in a communication session |
US10083688B2 (en) | 2015-05-27 | 2018-09-25 | Apple Inc. | Device voice control for selecting a displayed affordance |
US10200824B2 (en) | 2015-05-27 | 2019-02-05 | Apple Inc. | Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device |
US9578173B2 (en) | 2015-06-05 | 2017-02-21 | Apple Inc. | Virtual assistant aided communication with 3rd party service in a communication session |
US11025565B2 (en) | 2015-06-07 | 2021-06-01 | Apple Inc. | Personalized prediction of responses for instant messaging |
US20160378747A1 (en) | 2015-06-29 | 2016-12-29 | Apple Inc. | Virtual assistant for media playback |
US10331312B2 (en) | 2015-09-08 | 2019-06-25 | Apple Inc. | Intelligent automated assistant in a media environment |
US10740384B2 (en) | 2015-09-08 | 2020-08-11 | Apple Inc. | Intelligent automated assistant for media search and playback |
US10671428B2 (en) | 2015-09-08 | 2020-06-02 | Apple Inc. | Distributed personal assistant |
US10747498B2 (en) | 2015-09-08 | 2020-08-18 | Apple Inc. | Zero latency digital assistant |
US10691473B2 (en) | 2015-11-06 | 2020-06-23 | Apple Inc. | Intelligent automated assistant in a messaging environment |
US10956666B2 (en) | 2015-11-09 | 2021-03-23 | Apple Inc. | Unconventional virtual assistant interactions |
US10049668B2 (en) | 2015-12-02 | 2018-08-14 | Apple Inc. | Applying neural network language models to weighted finite state transducers for automatic speech recognition |
US10592913B2 (en) | 2015-12-14 | 2020-03-17 | Google Llc | Store visit data creation and management |
US10872353B2 (en) | 2015-12-14 | 2020-12-22 | Google Llc | Providing content to store visitors without requiring proactive information sharing |
US10223066B2 (en) | 2015-12-23 | 2019-03-05 | Apple Inc. | Proactive assistance based on dialog communication between devices |
US9947316B2 (en) | 2016-02-22 | 2018-04-17 | Sonos, Inc. | Voice control of a media playback system |
US10142754B2 (en) | 2016-02-22 | 2018-11-27 | Sonos, Inc. | Sensor on moving component of transducer |
US10264030B2 (en) | 2016-02-22 | 2019-04-16 | Sonos, Inc. | Networked microphone device control |
US10095470B2 (en) | 2016-02-22 | 2018-10-09 | Sonos, Inc. | Audio response playback |
US10509626B2 (en) | 2016-02-22 | 2019-12-17 | Sonos, Inc | Handling of loss of pairing between networked devices |
US9965247B2 (en) | 2016-02-22 | 2018-05-08 | Sonos, Inc. | Voice controlled media playback system based on user profile |
US9820039B2 (en) | 2016-02-22 | 2017-11-14 | Sonos, Inc. | Default playback devices |
US9872072B2 (en) | 2016-03-21 | 2018-01-16 | Google Llc | Systems and methods for identifying non-canonical sessions |
US20170294138A1 (en) * | 2016-04-08 | 2017-10-12 | Patricia Kavanagh | Speech Improvement System and Method of Its Use |
US10607146B2 (en) * | 2016-06-02 | 2020-03-31 | International Business Machines Corporation | Predicting user question in question and answer system |
US11227589B2 (en) | 2016-06-06 | 2022-01-18 | Apple Inc. | Intelligent list reading |
US10049663B2 (en) | 2016-06-08 | 2018-08-14 | Apple, Inc. | Intelligent automated assistant for media exploration |
US9978390B2 (en) | 2016-06-09 | 2018-05-22 | Sonos, Inc. | Dynamic player selection for audio signal processing |
US10586535B2 (en) | 2016-06-10 | 2020-03-10 | Apple Inc. | Intelligent digital assistant in a multi-tasking environment |
DK201670540A1 (en) | 2016-06-11 | 2018-01-08 | Apple Inc | Application integration with a digital assistant |
DK179415B1 (en) | 2016-06-11 | 2018-06-14 | Apple Inc | Intelligent device arbitration and control |
EP3482391B1 (en) | 2016-07-06 | 2023-06-14 | DRNC Holdings, Inc. | System and method for customizing smart home speech interfaces using personalized speech profiles |
US10134399B2 (en) | 2016-07-15 | 2018-11-20 | Sonos, Inc. | Contextualization of voice inputs |
US10152969B2 (en) | 2016-07-15 | 2018-12-11 | Sonos, Inc. | Voice detection by multiple devices |
US10438583B2 (en) * | 2016-07-20 | 2019-10-08 | Lenovo (Singapore) Pte. Ltd. | Natural language voice assistant |
US10621992B2 (en) | 2016-07-22 | 2020-04-14 | Lenovo (Singapore) Pte. Ltd. | Activating voice assistant based on at least one of user proximity and context |
US10115400B2 (en) | 2016-08-05 | 2018-10-30 | Sonos, Inc. | Multiple voice services |
US9693164B1 (en) | 2016-08-05 | 2017-06-27 | Sonos, Inc. | Determining direction of networked microphone device relative to audio playback device |
US10474753B2 (en) | 2016-09-07 | 2019-11-12 | Apple Inc. | Language identification using recurrent neural networks |
US9794720B1 (en) | 2016-09-22 | 2017-10-17 | Sonos, Inc. | Acoustic position measurement |
US10043516B2 (en) | 2016-09-23 | 2018-08-07 | Apple Inc. | Intelligent automated assistant |
US9942678B1 (en) | 2016-09-27 | 2018-04-10 | Sonos, Inc. | Audio playback settings for voice interaction |
US9743204B1 (en) | 2016-09-30 | 2017-08-22 | Sonos, Inc. | Multi-orientation playback device microphones |
US10469424B2 (en) | 2016-10-07 | 2019-11-05 | Google Llc | Network based data traffic latency reduction |
US10181323B2 (en) | 2016-10-19 | 2019-01-15 | Sonos, Inc. | Arbitration-based voice recognition |
US11281993B2 (en) | 2016-12-05 | 2022-03-22 | Apple Inc. | Model and ensemble compression for metric learning |
US10593329B2 (en) | 2016-12-30 | 2020-03-17 | Google Llc | Multimodal transmission of packetized data |
US10708313B2 (en) | 2016-12-30 | 2020-07-07 | Google Llc | Multimodal transmission of packetized data |
US10437928B2 (en) | 2016-12-30 | 2019-10-08 | Google Llc | Device identifier dependent operation processing of packet based data communication |
US11295738B2 (en) | 2016-12-30 | 2022-04-05 | Google, Llc | Modulation of packetized audio signals |
US10347247B2 (en) | 2016-12-30 | 2019-07-09 | Google Llc | Modulation of packetized audio signals |
US10924376B2 (en) | 2016-12-30 | 2021-02-16 | Google Llc | Selective sensor polling |
US10957326B2 (en) | 2016-12-30 | 2021-03-23 | Google Llc | Device identifier dependent operation processing of packet based data communication |
US11204787B2 (en) | 2017-01-09 | 2021-12-21 | Apple Inc. | Application integration with a digital assistant |
US11183181B2 (en) | 2017-03-27 | 2021-11-23 | Sonos, Inc. | Systems and methods of multiple voice services |
US10162812B2 (en) | 2017-04-04 | 2018-12-25 | Bank Of America Corporation | Natural language processing system to analyze mobile application feedback |
DK201770383A1 (en) | 2017-05-09 | 2018-12-14 | Apple Inc. | USER INTERFACE FOR CORRECTING RECOGNITION ERRORS |
US10417266B2 (en) | 2017-05-09 | 2019-09-17 | Apple Inc. | Context-aware ranking of intelligent response suggestions |
US10726832B2 (en) | 2017-05-11 | 2020-07-28 | Apple Inc. | Maintaining privacy of personal information |
DK180048B1 (en) | 2017-05-11 | 2020-02-04 | Apple Inc. | MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION |
DK201770439A1 (en) | 2017-05-11 | 2018-12-13 | Apple Inc. | Offline personal assistant |
US10395654B2 (en) | 2017-05-11 | 2019-08-27 | Apple Inc. | Text normalization based on a data-driven learning network |
DK201770427A1 (en) | 2017-05-12 | 2018-12-20 | Apple Inc. | LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT |
DK179496B1 (en) | 2017-05-12 | 2019-01-15 | Apple Inc. | USER-SPECIFIC Acoustic Models |
CN111243606B (zh) * | 2017-05-12 | 2023-07-21 | 苹果公司 | 用户特定的声学模型 |
US11301477B2 (en) | 2017-05-12 | 2022-04-12 | Apple Inc. | Feedback analysis of a digital assistant |
DK179745B1 (en) | 2017-05-12 | 2019-05-01 | Apple Inc. | SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT |
DK201770431A1 (en) | 2017-05-15 | 2018-12-20 | Apple Inc. | Optimizing dialogue policy decisions for digital assistants using implicit feedback |
DK201770411A1 (en) | 2017-05-15 | 2018-12-20 | Apple Inc. | MULTI-MODAL INTERFACES |
DK201770432A1 (en) | 2017-05-15 | 2018-12-21 | Apple Inc. | Hierarchical belief states for digital assistants |
US20180336892A1 (en) | 2017-05-16 | 2018-11-22 | Apple Inc. | Detecting a trigger of a digital assistant |
US10403278B2 (en) | 2017-05-16 | 2019-09-03 | Apple Inc. | Methods and systems for phonetic matching in digital assistant services |
US20180336275A1 (en) | 2017-05-16 | 2018-11-22 | Apple Inc. | Intelligent automated assistant for media exploration |
US10311144B2 (en) | 2017-05-16 | 2019-06-04 | Apple Inc. | Emoji word sense disambiguation |
DK179560B1 (en) | 2017-05-16 | 2019-02-18 | Apple Inc. | FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES |
US10664533B2 (en) | 2017-05-24 | 2020-05-26 | Lenovo (Singapore) Pte. Ltd. | Systems and methods to determine response cue for digital assistant based on context |
US10657328B2 (en) | 2017-06-02 | 2020-05-19 | Apple Inc. | Multi-task recurrent neural network architecture for efficient morphology handling in neural language modeling |
US10652170B2 (en) | 2017-06-09 | 2020-05-12 | Google Llc | Modification of audio-based computer program output |
US10614122B2 (en) | 2017-06-09 | 2020-04-07 | Google Llc | Balance modifications of audio-based computer program output using a placeholder field based on content |
US10600409B2 (en) | 2017-06-09 | 2020-03-24 | Google Llc | Balance modifications of audio-based computer program output including a chatbot selected based on semantic processing of audio |
JP7339310B2 (ja) * | 2017-06-13 | 2023-09-05 | グーグル エルエルシー | 登録されていないリソースによるオーディオベースのネットワークセッションの確立 |
WO2018231209A1 (en) * | 2017-06-13 | 2018-12-20 | Google Llc | Establishment of audio-based network sessions with non-registered resources |
US10311872B2 (en) | 2017-07-25 | 2019-06-04 | Google Llc | Utterance classifier |
US10475449B2 (en) | 2017-08-07 | 2019-11-12 | Sonos, Inc. | Wake-word detection suppression |
US10048930B1 (en) | 2017-09-08 | 2018-08-14 | Sonos, Inc. | Dynamic computation of system response volume |
US10445429B2 (en) | 2017-09-21 | 2019-10-15 | Apple Inc. | Natural language understanding using vocabularies with compressed serialized tries |
US10748538B2 (en) | 2017-09-26 | 2020-08-18 | Google Llc | Dynamic sequence-based adjustment of prompt generation |
US10446165B2 (en) | 2017-09-27 | 2019-10-15 | Sonos, Inc. | Robust short-time fourier transform acoustic echo cancellation during audio playback |
US10621981B2 (en) | 2017-09-28 | 2020-04-14 | Sonos, Inc. | Tone interference cancellation |
US10051366B1 (en) | 2017-09-28 | 2018-08-14 | Sonos, Inc. | Three-dimensional beam forming with a microphone array |
US10482868B2 (en) | 2017-09-28 | 2019-11-19 | Sonos, Inc. | Multi-channel acoustic echo cancellation |
US10466962B2 (en) | 2017-09-29 | 2019-11-05 | Sonos, Inc. | Media playback system with voice assistance |
US10755051B2 (en) | 2017-09-29 | 2020-08-25 | Apple Inc. | Rule-based natural language processing |
US10713300B2 (en) * | 2017-11-03 | 2020-07-14 | Google Llc | Using distributed state machines for human-to-computer dialogs with automated assistants to protect private data |
JP2019090942A (ja) * | 2017-11-15 | 2019-06-13 | シャープ株式会社 | 情報処理装置、情報処理システム、情報処理方法、および情報処理プログラム |
US10636424B2 (en) | 2017-11-30 | 2020-04-28 | Apple Inc. | Multi-turn canned dialog |
EP3920179A1 (en) | 2017-12-08 | 2021-12-08 | Google LLC | Detection of duplicate packetized data transmission |
EP3519910B1 (en) | 2017-12-08 | 2024-02-14 | Google LLC | Content source allocation between computing devices |
US11438346B2 (en) | 2017-12-08 | 2022-09-06 | Google Llc | Restrict transmission of manipulated content in a networked environment |
US10558426B2 (en) | 2017-12-08 | 2020-02-11 | Google Llc | Graphical user interface rendering management by voice-driven computing infrastructure |
EP3529802A1 (en) | 2017-12-08 | 2019-08-28 | Google LLC | System for securing a personal digital assistant with stacked data structures |
WO2019112625A1 (en) | 2017-12-08 | 2019-06-13 | Google Llc | Signal processing coordination among digital voice assistant computing devices |
US10665236B2 (en) | 2017-12-08 | 2020-05-26 | Google Llc | Digital assistant processing of stacked data structures |
CN113037715B (zh) | 2017-12-08 | 2023-05-30 | 谷歌有限责任公司 | 限制在网络环境中操纵内容的传输***和方法 |
US10992684B2 (en) | 2017-12-08 | 2021-04-27 | Google Llc | Distributed identification in networked system |
US10971173B2 (en) | 2017-12-08 | 2021-04-06 | Google Llc | Signal processing coordination among digital voice assistant computing devices |
US10880650B2 (en) | 2017-12-10 | 2020-12-29 | Sonos, Inc. | Network microphone devices with automatic do not disturb actuation capabilities |
US10818290B2 (en) | 2017-12-11 | 2020-10-27 | Sonos, Inc. | Home graph |
US10733982B2 (en) | 2018-01-08 | 2020-08-04 | Apple Inc. | Multi-directional dialog |
KR102483834B1 (ko) * | 2018-01-17 | 2023-01-03 | 삼성전자주식회사 | 음성 명령을 이용한 사용자 인증 방법 및 전자 장치 |
WO2019152722A1 (en) | 2018-01-31 | 2019-08-08 | Sonos, Inc. | Device designation of playback and network microphone device arrangements |
US10733375B2 (en) | 2018-01-31 | 2020-08-04 | Apple Inc. | Knowledge-based framework for improving natural language understanding |
US10789959B2 (en) | 2018-03-02 | 2020-09-29 | Apple Inc. | Training speaker recognition models for digital assistants |
CN117877477A (zh) | 2018-03-07 | 2024-04-12 | 谷歌有限责任公司 | 用于基于语音发起定制装置动作的***和方法 |
US11183182B2 (en) | 2018-03-07 | 2021-11-23 | Google Llc | Systems and methods for voice-based initiation of custom device actions |
US10896213B2 (en) | 2018-03-07 | 2021-01-19 | Google Llc | Interface for a distributed network system |
US10592604B2 (en) | 2018-03-12 | 2020-03-17 | Apple Inc. | Inverse text normalization for automatic speech recognition |
US11205423B2 (en) * | 2018-03-20 | 2021-12-21 | Gojo Industries, Inc. | Restroom maintenance systems having a voice activated virtual assistant |
EP3718041A1 (en) | 2018-03-21 | 2020-10-07 | Google LLC | Data transfer in secure processing environments |
US10818288B2 (en) | 2018-03-26 | 2020-10-27 | Apple Inc. | Natural assistant interaction |
US10909331B2 (en) | 2018-03-30 | 2021-02-02 | Apple Inc. | Implicit identification of translation payload with neural machine translation |
US10679615B2 (en) | 2018-04-16 | 2020-06-09 | Google Llc | Adaptive interface in a voice-based networked system |
WO2019203795A1 (en) | 2018-04-16 | 2019-10-24 | Google Llc | Automatically determining language for speech recognition of spoken utterance received via an automated assistant interface |
US10573298B2 (en) | 2018-04-16 | 2020-02-25 | Google Llc | Automated assistants that accommodate multiple age groups and/or vocabulary levels |
US10726521B2 (en) | 2018-04-17 | 2020-07-28 | Google Llc | Dynamic adaptation of device interfaces in a voice-based system |
US11113372B2 (en) | 2018-04-25 | 2021-09-07 | Google Llc | Delayed two-factor authentication in a networked environment |
EP4354326A3 (en) | 2018-04-25 | 2024-06-19 | Google LLC | Delayed two-factor authentication in a networked environment |
US10679622B2 (en) | 2018-05-01 | 2020-06-09 | Google Llc | Dependency graph generation in a networked system |
US10928918B2 (en) | 2018-05-07 | 2021-02-23 | Apple Inc. | Raise to speak |
US10733984B2 (en) | 2018-05-07 | 2020-08-04 | Google Llc | Multi-modal interface in a voice-activated network |
US11145294B2 (en) | 2018-05-07 | 2021-10-12 | Apple Inc. | Intelligent automated assistant for delivering content from user experiences |
WO2019216876A1 (en) | 2018-05-07 | 2019-11-14 | Google Llc | Activation of remote devices in a networked system |
US11175880B2 (en) | 2018-05-10 | 2021-11-16 | Sonos, Inc. | Systems and methods for voice-assisted media content selection |
US11087748B2 (en) | 2018-05-11 | 2021-08-10 | Google Llc | Adaptive interface in a voice-activated network |
US10847178B2 (en) | 2018-05-18 | 2020-11-24 | Sonos, Inc. | Linear filtering for noise-suppressed speech detection |
US10984780B2 (en) | 2018-05-21 | 2021-04-20 | Apple Inc. | Global semantic word embeddings using bi-directional recurrent neural networks |
US10959029B2 (en) | 2018-05-25 | 2021-03-23 | Sonos, Inc. | Determining and adapting to changes in microphone performance of playback devices |
US11386266B2 (en) | 2018-06-01 | 2022-07-12 | Apple Inc. | Text correction |
DK179822B1 (da) | 2018-06-01 | 2019-07-12 | Apple Inc. | Voice interaction at a primary device to access call functionality of a companion device |
DK201870355A1 (en) | 2018-06-01 | 2019-12-16 | Apple Inc. | VIRTUAL ASSISTANT OPERATION IN MULTI-DEVICE ENVIRONMENTS |
US10892996B2 (en) | 2018-06-01 | 2021-01-12 | Apple Inc. | Variable latency device coordination |
DK180639B1 (en) | 2018-06-01 | 2021-11-04 | Apple Inc | DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT |
US10944859B2 (en) | 2018-06-03 | 2021-03-09 | Apple Inc. | Accelerated task performance |
US10963492B2 (en) | 2018-06-14 | 2021-03-30 | Google Llc | Generation of domain-specific models in networked system |
KR20190142192A (ko) * | 2018-06-15 | 2019-12-26 | 삼성전자주식회사 | 전자 장치 및 전자 장치의 제어 방법 |
US10681460B2 (en) | 2018-06-28 | 2020-06-09 | Sonos, Inc. | Systems and methods for associating playback devices with voice assistant services |
KR20200023088A (ko) * | 2018-08-24 | 2020-03-04 | 삼성전자주식회사 | 사용자 발화를 처리하는 전자 장치, 및 그 전자 장치의 제어 방법 |
US10461710B1 (en) | 2018-08-28 | 2019-10-29 | Sonos, Inc. | Media playback system with maximum volume setting |
US11076035B2 (en) | 2018-08-28 | 2021-07-27 | Sonos, Inc. | Do not disturb feature for audio notifications |
US10587430B1 (en) | 2018-09-14 | 2020-03-10 | Sonos, Inc. | Networked devices, systems, and methods for associating playback devices based on sound codes |
US10878811B2 (en) | 2018-09-14 | 2020-12-29 | Sonos, Inc. | Networked devices, systems, and methods for intelligently deactivating wake-word engines |
US11024331B2 (en) | 2018-09-21 | 2021-06-01 | Sonos, Inc. | Voice detection optimization using sound metadata |
US10811015B2 (en) | 2018-09-25 | 2020-10-20 | Sonos, Inc. | Voice detection optimization based on selected voice assistant service |
US11010561B2 (en) | 2018-09-27 | 2021-05-18 | Apple Inc. | Sentiment prediction from textual data |
US11170166B2 (en) | 2018-09-28 | 2021-11-09 | Apple Inc. | Neural typographical error modeling via generative adversarial networks |
US11100923B2 (en) | 2018-09-28 | 2021-08-24 | Sonos, Inc. | Systems and methods for selective wake word detection using neural network models |
US11462215B2 (en) | 2018-09-28 | 2022-10-04 | Apple Inc. | Multi-modal inputs for voice commands |
US10839159B2 (en) | 2018-09-28 | 2020-11-17 | Apple Inc. | Named entity normalization in a spoken dialog system |
US10692518B2 (en) | 2018-09-29 | 2020-06-23 | Sonos, Inc. | Linear filtering for noise-suppressed speech detection via multiple network microphone devices |
US11899519B2 (en) | 2018-10-23 | 2024-02-13 | Sonos, Inc. | Multiple stage network microphone device with reduced power consumption and processing load |
US11475898B2 (en) | 2018-10-26 | 2022-10-18 | Apple Inc. | Low-latency multi-speaker speech recognition |
US11361767B2 (en) * | 2018-10-31 | 2022-06-14 | Samsung Electronics Co., Ltd | Method and apparatus for capability-based processing of voice queries in a multi-assistant environment |
EP3654249A1 (en) | 2018-11-15 | 2020-05-20 | Snips | Dilated convolutions and gating for efficient keyword spotting |
US10885904B2 (en) | 2018-11-21 | 2021-01-05 | Mastercard International Incorporated | Electronic speech to text conversion systems and methods with natural language capture of proper name spelling |
US11183183B2 (en) | 2018-12-07 | 2021-11-23 | Sonos, Inc. | Systems and methods of operating media playback systems having multiple voice assistant services |
US11132989B2 (en) | 2018-12-13 | 2021-09-28 | Sonos, Inc. | Networked microphone devices, systems, and methods of localized arbitration |
US10602268B1 (en) | 2018-12-20 | 2020-03-24 | Sonos, Inc. | Optimization of network microphone devices using noise classification |
US11638059B2 (en) | 2019-01-04 | 2023-04-25 | Apple Inc. | Content playback on multiple devices |
US10867604B2 (en) | 2019-02-08 | 2020-12-15 | Sonos, Inc. | Devices, systems, and methods for distributed voice processing |
US11315556B2 (en) | 2019-02-08 | 2022-04-26 | Sonos, Inc. | Devices, systems, and methods for distributed voice processing by transmitting sound data associated with a wake word to an appropriate device for identification |
US11348573B2 (en) | 2019-03-18 | 2022-05-31 | Apple Inc. | Multimodality in digital assistant systems |
US11120794B2 (en) | 2019-05-03 | 2021-09-14 | Sonos, Inc. | Voice assistant persistence across multiple network microphone devices |
DK201970509A1 (en) | 2019-05-06 | 2021-01-15 | Apple Inc | Spoken notifications |
US11423908B2 (en) | 2019-05-06 | 2022-08-23 | Apple Inc. | Interpreting spoken requests |
US11475884B2 (en) | 2019-05-06 | 2022-10-18 | Apple Inc. | Reducing digital assistant latency when a language is incorrectly determined |
US11307752B2 (en) | 2019-05-06 | 2022-04-19 | Apple Inc. | User configurable task triggers |
US11140099B2 (en) | 2019-05-21 | 2021-10-05 | Apple Inc. | Providing message response suggestions |
DK201970510A1 (en) | 2019-05-31 | 2021-02-11 | Apple Inc | Voice identification in digital assistant systems |
US11289073B2 (en) | 2019-05-31 | 2022-03-29 | Apple Inc. | Device text to speech |
DK180129B1 (en) | 2019-05-31 | 2020-06-02 | Apple Inc. | USER ACTIVITY SHORTCUT SUGGESTIONS |
US11496600B2 (en) | 2019-05-31 | 2022-11-08 | Apple Inc. | Remote execution of machine-learned models |
US11227599B2 (en) | 2019-06-01 | 2022-01-18 | Apple Inc. | Methods and user interfaces for voice-based control of electronic devices |
US11360641B2 (en) | 2019-06-01 | 2022-06-14 | Apple Inc. | Increasing the relevance of new available information |
US11200894B2 (en) | 2019-06-12 | 2021-12-14 | Sonos, Inc. | Network microphone device with command keyword eventing |
US10586540B1 (en) | 2019-06-12 | 2020-03-10 | Sonos, Inc. | Network microphone device with command keyword conditioning |
US11361756B2 (en) | 2019-06-12 | 2022-06-14 | Sonos, Inc. | Conditional wake word eventing based on environment |
US11138969B2 (en) | 2019-07-31 | 2021-10-05 | Sonos, Inc. | Locally distributed keyword detection |
US10871943B1 (en) | 2019-07-31 | 2020-12-22 | Sonos, Inc. | Noise classification for event detection |
US11138975B2 (en) | 2019-07-31 | 2021-10-05 | Sonos, Inc. | Locally distributed keyword detection |
US11176940B1 (en) * | 2019-09-17 | 2021-11-16 | Amazon Technologies, Inc. | Relaying availability using a virtual assistant |
WO2021056255A1 (en) | 2019-09-25 | 2021-04-01 | Apple Inc. | Text detection using global geometry estimators |
US11289080B2 (en) | 2019-10-11 | 2022-03-29 | Bank Of America Corporation | Security tool |
US11189286B2 (en) | 2019-10-22 | 2021-11-30 | Sonos, Inc. | VAS toggle based on device orientation |
US11200900B2 (en) | 2019-12-20 | 2021-12-14 | Sonos, Inc. | Offline voice control |
US11929077B2 (en) * | 2019-12-23 | 2024-03-12 | Dts Inc. | Multi-stage speaker enrollment in voice authentication and identification |
US11562740B2 (en) | 2020-01-07 | 2023-01-24 | Sonos, Inc. | Voice verification for media playback |
DE102020100638A1 (de) * | 2020-01-14 | 2021-07-15 | Bayerische Motoren Werke Aktiengesellschaft | System und Verfahren für einen Dialog mit einem Nutzer |
US11556307B2 (en) | 2020-01-31 | 2023-01-17 | Sonos, Inc. | Local voice data processing |
US11308958B2 (en) | 2020-02-07 | 2022-04-19 | Sonos, Inc. | Localized wakeword verification |
JP7409179B2 (ja) * | 2020-03-18 | 2024-01-09 | 富士フイルムビジネスイノベーション株式会社 | 情報処理装置及びプログラム |
US11061543B1 (en) | 2020-05-11 | 2021-07-13 | Apple Inc. | Providing relevant data items based on context |
US11183193B1 (en) | 2020-05-11 | 2021-11-23 | Apple Inc. | Digital assistant hardware abstraction |
US11482224B2 (en) | 2020-05-20 | 2022-10-25 | Sonos, Inc. | Command keywords with input detection windowing |
US11727919B2 (en) | 2020-05-20 | 2023-08-15 | Sonos, Inc. | Memory allocation for keyword spotting engines |
US11308962B2 (en) | 2020-05-20 | 2022-04-19 | Sonos, Inc. | Input detection windowing |
US11490204B2 (en) | 2020-07-20 | 2022-11-01 | Apple Inc. | Multi-device audio adjustment coordination |
US11438683B2 (en) | 2020-07-21 | 2022-09-06 | Apple Inc. | User identification using headphones |
US11698771B2 (en) | 2020-08-25 | 2023-07-11 | Sonos, Inc. | Vocal guidance engines for playback devices |
US11984123B2 (en) | 2020-11-12 | 2024-05-14 | Sonos, Inc. | Network device interaction by range |
US11551700B2 (en) | 2021-01-25 | 2023-01-10 | Sonos, Inc. | Systems and methods for power-efficient keyword detection |
US11170154B1 (en) | 2021-04-09 | 2021-11-09 | Cascade Reading, Inc. | Linguistically-driven automated text formatting |
US11769501B2 (en) | 2021-06-02 | 2023-09-26 | International Business Machines Corporation | Curiosity based activation and search depth |
WO2023059818A1 (en) * | 2021-10-06 | 2023-04-13 | Cascade Reading, Inc. | Acoustic-based linguistically-driven automated text formatting |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1494712A (zh) * | 2001-01-31 | 2004-05-05 | �����ɷ� | 使用声学特征矢量修正的分布式语音识别*** |
CN101467204A (zh) * | 2005-05-27 | 2009-06-24 | 普提克斯科技股份有限公司 | 用于生物计量声纹认证的方法和*** |
US8194827B2 (en) * | 2008-04-29 | 2012-06-05 | International Business Machines Corporation | Secure voice transaction method and system |
CN102708867A (zh) * | 2012-05-30 | 2012-10-03 | 北京正鹰科技有限责任公司 | 一种基于声纹和语音的防录音假冒身份识别方法及*** |
CN102760431A (zh) * | 2012-07-12 | 2012-10-31 | 上海语联信息技术有限公司 | 智能化的语音识别*** |
CN103730120A (zh) * | 2013-12-27 | 2014-04-16 | 深圳市亚略特生物识别科技有限公司 | 电子设备的语音控制方法及*** |
CN103943107A (zh) * | 2014-04-03 | 2014-07-23 | 北京大学深圳研究生院 | 一种基于决策层融合的音视频关键词识别方法 |
CN103956169A (zh) * | 2014-04-17 | 2014-07-30 | 北京搜狗科技发展有限公司 | 一种语音输入方法、装置和*** |
US20140214429A1 (en) * | 2013-01-25 | 2014-07-31 | Lothar Pantel | Method for Voice Activation of a Software Agent from Standby Mode |
US20140222436A1 (en) * | 2013-02-07 | 2014-08-07 | Apple Inc. | Voice trigger for a digital assistant |
US20140222678A1 (en) * | 2013-02-05 | 2014-08-07 | Visa International Service Association | System and method for authentication using speaker verification techniques and fraud model |
JP2014157323A (ja) * | 2013-02-18 | 2014-08-28 | Nippon Telegr & Teleph Corp <Ntt> | 音声認識装置、音響モデル学習装置、その方法及びプログラム |
US20150039299A1 (en) * | 2013-07-31 | 2015-02-05 | Google Inc. | Context-based speech recognition |
CN104575504A (zh) * | 2014-12-24 | 2015-04-29 | 上海师范大学 | 采用声纹和语音识别进行个性化电视语音唤醒的方法 |
US20150249664A1 (en) * | 2012-09-11 | 2015-09-03 | Auraya Pty Ltd. | Voice Authentication System and Method |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6073101A (en) * | 1996-02-02 | 2000-06-06 | International Business Machines Corporation | Text independent speaker recognition for transparent command ambiguity resolution and continuous access control |
US6141644A (en) * | 1998-09-04 | 2000-10-31 | Matsushita Electric Industrial Co., Ltd. | Speaker verification and speaker identification based on eigenvoices |
US8648692B2 (en) * | 1999-07-23 | 2014-02-11 | Seong Sang Investments Llc | Accessing an automobile with a transponder |
US8645137B2 (en) * | 2000-03-16 | 2014-02-04 | Apple Inc. | Fast, language-independent method for user authentication by voice |
US7124300B1 (en) * | 2001-01-24 | 2006-10-17 | Palm, Inc. | Handheld computer system configured to authenticate a user and power-up in response to a single action by the user |
WO2002077975A1 (en) * | 2001-03-27 | 2002-10-03 | Koninklijke Philips Electronics N.V. | Method to select and send text messages with a mobile |
US7668718B2 (en) * | 2001-07-17 | 2010-02-23 | Custom Speech Usa, Inc. | Synchronized pattern recognition source data processed by manual or automatic means for creation of shared speaker-dependent speech user profile |
GB2409750B (en) * | 2004-01-05 | 2006-03-15 | Toshiba Res Europ Ltd | Speech recognition system and technique |
US20110047605A1 (en) * | 2007-02-06 | 2011-02-24 | Vidoop, Llc | System And Method For Authenticating A User To A Computer System |
US8682667B2 (en) * | 2010-02-25 | 2014-03-25 | Apple Inc. | User profiling for selecting user specific voice input processing information |
US20130031476A1 (en) * | 2011-07-25 | 2013-01-31 | Coin Emmett | Voice activated virtual assistant |
US9021565B2 (en) * | 2011-10-13 | 2015-04-28 | At&T Intellectual Property I, L.P. | Authentication techniques utilizing a computing device |
US9223948B2 (en) * | 2011-11-01 | 2015-12-29 | Blackberry Limited | Combined passcode and activity launch modifier |
US9042867B2 (en) * | 2012-02-24 | 2015-05-26 | Agnitio S.L. | System and method for speaker recognition on mobile devices |
US20150199960A1 (en) * | 2012-08-24 | 2015-07-16 | Microsoft Corporation | I-Vector Based Clustering Training Data in Speech Recognition |
EP2713367B1 (en) | 2012-09-28 | 2016-11-09 | Agnitio, S.L. | Speaker recognition |
US10795528B2 (en) * | 2013-03-06 | 2020-10-06 | Nuance Communications, Inc. | Task assistant having multiple visual displays |
US10134395B2 (en) * | 2013-09-25 | 2018-11-20 | Amazon Technologies, Inc. | In-call virtual assistants |
US10055681B2 (en) * | 2013-10-31 | 2018-08-21 | Verint Americas Inc. | Mapping actions and objects to tasks |
US9571645B2 (en) * | 2013-12-16 | 2017-02-14 | Nuance Communications, Inc. | Systems and methods for providing a virtual assistant |
US9460735B2 (en) * | 2013-12-28 | 2016-10-04 | Intel Corporation | Intelligent ancillary electronic device |
US20150302856A1 (en) * | 2014-04-17 | 2015-10-22 | Qualcomm Incorporated | Method and apparatus for performing function by speech input |
US9959863B2 (en) * | 2014-09-08 | 2018-05-01 | Qualcomm Incorporated | Keyword detection using speaker-independent keyword models for user-designated keywords |
-
2016
- 2016-05-24 US US15/163,392 patent/US20170092278A1/en not_active Abandoned
- 2016-05-31 DE DE112016003459.8T patent/DE112016003459B4/de active Active
- 2016-05-31 CN CN201680049825.XA patent/CN108604449B/zh active Active
- 2016-05-31 WO PCT/US2016/035105 patent/WO2017058298A1/en active Application Filing
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1494712A (zh) * | 2001-01-31 | 2004-05-05 | �����ɷ� | 使用声学特征矢量修正的分布式语音识别*** |
CN101467204A (zh) * | 2005-05-27 | 2009-06-24 | 普提克斯科技股份有限公司 | 用于生物计量声纹认证的方法和*** |
US8194827B2 (en) * | 2008-04-29 | 2012-06-05 | International Business Machines Corporation | Secure voice transaction method and system |
CN102708867A (zh) * | 2012-05-30 | 2012-10-03 | 北京正鹰科技有限责任公司 | 一种基于声纹和语音的防录音假冒身份识别方法及*** |
CN102760431A (zh) * | 2012-07-12 | 2012-10-31 | 上海语联信息技术有限公司 | 智能化的语音识别*** |
US20150249664A1 (en) * | 2012-09-11 | 2015-09-03 | Auraya Pty Ltd. | Voice Authentication System and Method |
US20140214429A1 (en) * | 2013-01-25 | 2014-07-31 | Lothar Pantel | Method for Voice Activation of a Software Agent from Standby Mode |
US20140222678A1 (en) * | 2013-02-05 | 2014-08-07 | Visa International Service Association | System and method for authentication using speaker verification techniques and fraud model |
US20140222436A1 (en) * | 2013-02-07 | 2014-08-07 | Apple Inc. | Voice trigger for a digital assistant |
CN104969289A (zh) * | 2013-02-07 | 2015-10-07 | 苹果公司 | 数字助理的语音触发器 |
JP2014157323A (ja) * | 2013-02-18 | 2014-08-28 | Nippon Telegr & Teleph Corp <Ntt> | 音声認識装置、音響モデル学習装置、その方法及びプログラム |
US20150039299A1 (en) * | 2013-07-31 | 2015-02-05 | Google Inc. | Context-based speech recognition |
CN103730120A (zh) * | 2013-12-27 | 2014-04-16 | 深圳市亚略特生物识别科技有限公司 | 电子设备的语音控制方法及*** |
CN103943107A (zh) * | 2014-04-03 | 2014-07-23 | 北京大学深圳研究生院 | 一种基于决策层融合的音视频关键词识别方法 |
CN103956169A (zh) * | 2014-04-17 | 2014-07-30 | 北京搜狗科技发展有限公司 | 一种语音输入方法、装置和*** |
CN104575504A (zh) * | 2014-12-24 | 2015-04-29 | 上海师范大学 | 采用声纹和语音识别进行个性化电视语音唤醒的方法 |
Non-Patent Citations (2)
Title |
---|
XIANYU ZHAO: "Svm-Based Speaker Verification by Location in the Space of Reference Speakers", <2007 IEEE INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH AND SIGNAL PROCESSING - ICASSP \'07> * |
徐娟: "清辅音特征分析及其在耳语音说话人识别中的应用", 《中国优秀硕士学位论文全文数据库》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109785858A (zh) * | 2018-12-14 | 2019-05-21 | 平安普惠企业管理有限公司 | 一种联系人添加方法、装置、可读存储介质及终端设备 |
CN109785858B (zh) * | 2018-12-14 | 2024-02-23 | 深圳市兴海物联科技有限公司 | 一种联系人添加方法、装置、可读存储介质及终端设备 |
CN112017672A (zh) * | 2019-05-31 | 2020-12-01 | 苹果公司 | 数字助理***中的声音识别 |
CN112017672B (zh) * | 2019-05-31 | 2024-05-31 | 苹果公司 | 数字助理***中的声音识别 |
CN112420032A (zh) * | 2019-08-20 | 2021-02-26 | 三星电子株式会社 | 电子设备及用于控制电子设备的方法 |
US11967325B2 (en) | 2019-08-20 | 2024-04-23 | Samsung Electronics Co., Ltd. | Electronic device and method for controlling the electronic device |
CN112365895A (zh) * | 2020-10-09 | 2021-02-12 | 深圳前海微众银行股份有限公司 | 音频处理方法、装置及计算设备、存储介质 |
CN112365895B (zh) * | 2020-10-09 | 2024-04-19 | 深圳前海微众银行股份有限公司 | 音频处理方法、装置及计算设备、存储介质 |
CN113035188A (zh) * | 2021-02-25 | 2021-06-25 | 平安普惠企业管理有限公司 | 通话文本生成方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US20170092278A1 (en) | 2017-03-30 |
WO2017058298A1 (en) | 2017-04-06 |
DE112016003459T5 (de) | 2018-04-12 |
CN108604449B (zh) | 2023-11-14 |
DE112016003459B4 (de) | 2023-10-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109328381B (zh) | 检测数字助理的触发 | |
CN107978313B (zh) | 智能自动化助理 | |
CN107491285B (zh) | 智能设备仲裁和控制 | |
CN107408387B (zh) | 虚拟助理激活 | |
CN108604449A (zh) | 说话者识别 | |
CN107430501B (zh) | 对语音触发进行响应的竞争设备 | |
CN107491929B (zh) | 数据驱动的自然语言事件检测和分类 | |
CN108733438A (zh) | 应用程序与数字助理集成 | |
CN110019752A (zh) | 多方向对话 | |
CN110168526A (zh) | 用于媒体探索的智能自动化助理 | |
CN110223698A (zh) | 训练数字助理的说话人识别模型 | |
CN107493374A (zh) | 具有数字助理的应用集成 | |
CN110021301A (zh) | 数字助理服务的远场延伸 | |
CN107608998A (zh) | 具有数字助理的应用集成 | |
CN108351893A (zh) | 非常规虚拟助理交互 | |
CN110364148A (zh) | 自然助理交互 | |
CN107615276A (zh) | 用于媒体回放的虚拟助理 | |
CN107491469A (zh) | 智能任务发现 | |
CN107257950A (zh) | 虚拟助理连续性 | |
CN108874766A (zh) | 用于数字助理服务中的语音匹配的方法和*** | |
CN108093126A (zh) | 用于拒绝来电的智能数字助理 | |
CN107491284A (zh) | 提供自动化状态报告的数字助理 | |
CN108292203A (zh) | 基于设备间对话通信的主动协助 | |
CN107195306A (zh) | 识别提供凭据的语音输入 | |
CN107480161A (zh) | 用于媒体探究的智能自动化助理 |
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 |