CN109313534A - 智能虚拟键盘 - Google Patents

智能虚拟键盘 Download PDF

Info

Publication number
CN109313534A
CN109313534A CN201780037030.1A CN201780037030A CN109313534A CN 109313534 A CN109313534 A CN 109313534A CN 201780037030 A CN201780037030 A CN 201780037030A CN 109313534 A CN109313534 A CN 109313534A
Authority
CN
China
Prior art keywords
search
dummy keyboard
user
user interface
icon
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.)
Pending
Application number
CN201780037030.1A
Other languages
English (en)
Inventor
T·S·佩克
C·R·本森
A·J·谷纳瓦达纳
Z·D·奥里施拉杰
A·塞达利克达耶
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from US15/181,073 external-priority patent/US20170357521A1/en
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN109313534A publication Critical patent/CN109313534A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04817Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本文提供了用于在虚拟键盘内基于意图动态生成和显示任务图标的系统、方法和计算机介质。系统可以包括处理器、意图分类器和用户界面生成器。意图分类器可以被配置为基于上下文信息来确定用户意图候选。用户界面生成器可以被配置为生成用于显示的虚拟键盘,以及在接收到基于用户意图候选所确定的用户意图的指示时,在虚拟键盘内生成任务图标。任务图标表示与所确定的用户意图相关联的功能。与虚拟键盘中的任务图标的交互可以启动与所确定的意图相关联的功能。用户界面生成器还可以被配置为在接收到与虚拟键盘的用户交互的指示时呈现搜索界面。

Description

智能虚拟键盘
背景技术
随着触摸屏和移动设备的出现,虚拟键盘已经变得常见。例如,当用户在触摸屏设备上使用应用时轻敲屏幕以输入文本时,通常会显示虚拟键盘。尽管它们具有优点,但是虚拟键盘对于某些活动而言通常难以使用并且用起来很麻烦。
发明内容
本文所描述的示例涉及虚拟键盘内任务图标和键盘中搜索功能的基于意图的动态生成和显示。示例系统可以包括处理器、意图分类器、排名器和用户界面生成器。意图分类器可以被配置为由处理器基于上下文信息来确定一个或多个用户意图候选。上下文信息可以是例如:经由虚拟键盘输入的文本、与虚拟键盘被显示时活动的应用相关的信息、在活动应用中的会话中接收到的文本等。
可以以不同方式选择用户意图候选。例如,排名器可以被配置为由处理器对一个或多个用户意图候选进行排名,并且基于排名来选择用户意图候选作为所确定的用户意图。用户界面生成器可以被配置为由处理器生成用于显示的虚拟键盘。在接收到所确定的用户意图的指示时,用户界面生成器还可以被配置为基于所确定的用户意图来在虚拟键盘内生成任务图标。例如,可以在虚拟键盘的输入法编辑器(IME)中显示任务图标。虚拟键盘中的任务图标的选择或与虚拟键盘中的任务图标的其他交互可以启动与所确定的意图相关联的功能。可以基于附加的上下文信息来更新用户意图,并且如果任务图标不再反映更新的用户意图,则可以从虚拟键盘中移除任务图标。
用户界面生成器还可以被配置为:响应于接收到与虚拟键盘的IME部分的交互的指示,由处理器呈现搜索界面(例如,一个或多个搜索图标)。在接收到与IME的交互的指示时,还可以利用搜索结果界面替换虚拟键盘的一部分。
提供本发明内容是为了以简化的形式介绍一些概念,这些概念将在下面的具体实施方式中进一步描述。本发明内容不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于限制所要求保护的主题的范围。
从通过参考附图进行的以下详细描述中,所要求保护的主题的前述和其他目的、特征和优点将变得更加明显。
附图说明
图1是能够动态生成基于意图的任务图标的示例系统的框图。
图2是能够动态生成基于意图的任务图标的示例系统的框图,该系统具有多个意图分类器和联合器。
图3是示出了重新配置用户界面的示例方法的示图,其中基于意图的任务图标被动态地生成并被呈现在虚拟键盘中。
图4A-图4D图示出了意图的确定以及日历任务图标在虚拟键盘中的呈现。
图5图示出了意图的确定以及web服务任务图标在虚拟键盘中的呈现。
图6A-图6D图示出了意图的确定、地图任务图标的呈现以及从任务图标用户界面中选择可共享内容(当前位置和估计的到达时间)。
图7A-图7D图示出了意图的确定、地图任务图标的呈现以及从任务图标用户界面中选择可共享内容(到餐厅的链接)。
图8A-图8B图示出了意图的确定和即时答复在虚拟键盘中的呈现。
图9A-图9B图示出了意图的确定和媒体任务图标在虚拟键盘中的呈现。
图10A-图10B图示出了意图的确定和电影任务图标在虚拟键盘中的呈现。
图11图示出了意图的确定、支付任务图标在虚拟键盘中的呈现、以及支付任务用户界面的显示。
图12A-图12H图示出了与意图的确定和任务图标在虚拟键盘中的呈现相关的各种特征,其中在虚拟键盘上方呈现任务用户界面。
图13A-图13B图示出了与意图的确定和任务图标在虚拟键盘中的呈现相关的各种特征,其中在消息应用处于活动时在虚拟键盘上方呈现任务用户界面并且其基本上替换消息应用用户界面。
图14A-图14D图示出了与虚拟键盘内的搜索工具相关的各种特征。
图15A-图15D图示出了与虚拟键盘内的搜索工具相关的各种特征,其中呈现了搜索类别选择。
图16图示出了在虚拟键盘内的搜索工具和在虚拟键盘上方的搜索用户界面。
图17是图示出了重新配置用户界面的示例方法的流程图,其中动态地生成基于意图的任务图标并将其呈现在虚拟键盘中,并且其中任务图标用户界面被呈现以替换用户界面的一部分。
图18是图示出了重新配置包括虚拟键盘的用户界面的示例方法的流程图,其中任务图标用户界面被呈现以替换虚拟键盘的一部分。
图19是其中可以实现所描述的一些实施例的示例计算系统的图表。
图20是可以与本文所描述的技术结合使用的示例移动设备。
图21是可以与本文所描述的技术结合使用的示例云支持环境。
图22A-图22J图示出了响应于与虚拟键盘的IME部分的用户交互而呈现的搜索界面。
图23图示出了重新配置图形用户界面的示例方法,其中在虚拟键盘内呈现搜索界面。
图24图示出了重新配置图形用户界面的示例方法,其中与搜索图标相关联地呈现指示符以反映:与搜索图标的搜索类别相对应的任务图标被呈现但尚未与该任务图标交互。
图25A-图25G图示出了与搜索图标相关联地呈现指示符,其反映了:与搜索图标的搜索类别相对应的任务图标被呈现但尚未与该任务图标交互。
图26A-图26B图示出了响应于与虚拟键盘的用户交互的搜索界面菜单的呈现。
图27A-图27B图示出了响应于与虚拟键盘的用户交互的搜索界面菜单的弧形布置呈现。
具体实施方式
使用本文所描述的系统、方法和计算机可读介质,可以基于上下文信息(例如,由用户输入的或从另一用户接收的文本)来动态地确定与计算设备的用户界面进行交互的用户的意图,并且可以在用户界面中的虚拟键盘内生成并显示反映用户意图的任务图标。与任务图标的交互可以使得显示任务图标用户界面以替换整个用户界面的一部分(例如,显示在虚拟键盘上方或替换虚拟键盘的一部分)。任务图标用户界面提供了对与用户意图相对应的功能的便利访问(例如,经由应用用户界面、链接、深度链接等)。
与传统方法不同,本文所描述的动态的、基于意图的方法允许用户直接从虚拟键盘和/或任务图标用户界面访问期望的功能,而不需要强制用户退出一个应用、打开另一个应用来执行动作、然后切换回到原始应用。
作为示例,所描述的方法可以用于在当用户正在消息应用中进行会话时确定用户的意图。在一个示例会话中,用户收到“想要吃点东西吗?”然后用户经由虚拟键盘输入“好的,在哪里?”可以分析这些问题中的一个或两个以确定用户意图是找一家餐厅见面吃晚餐。在确定了该用户意图之后,地图任务图标可以被生成并被呈现在虚拟键盘中。与地图任务图标的选择、滑动或其他交互使得显示地图任务图标用户界面。地图任务图标用户界面可以示出附近餐厅的位置、提供到餐厅的网页的链接、提供可共享的餐厅信息(例如,可以被插入到消息会话中的名称和地址)等。
因此,地图任务图标用户界面向用户提供对地图功能的访问(搜索用户当前位置附近的餐厅),而无需用户退出消息应用、启动地图应用、定位餐厅、复制信息、切换回到消息应用等等。用户可以简单地从地图任务图标用户界面中选择餐厅、使餐厅的信息被添加到会话中、并且继续未被中断的会话流。
还可以经由虚拟键盘向用户提供搜索功能。作为示例,可以呈现不包括搜索图标、搜索查询文本输入框或者其他搜索功能的虚拟键盘,并且用户可以与虚拟键盘的IME部分交互以使得在虚拟键盘内呈现搜索界面的一个或多个搜索图标和/或其他方面。通过在用户请求这样的功能时提供搜索功能而不是将搜索界面包括为虚拟键盘的永久部分,可以避免用户当前没兴趣使用的大量图标或特征使得虚拟键盘混乱。
在所描述的示例中,通过动态的、基于意图的方法降低了执行期望动作的计算复杂度,这消除了退出/启动/重新启动应用以及通过用户界面进行导航以定位期望应用的计算成本。下面参考图1至图27B来描述示例。
图1图示出了在一个或多个计算设备102上实现的系统100。计算设备102包括至少一个处理器104。计算设备102例如可以是移动设备(诸如智能手机或平板计算机)、个人计算机(诸如台式机、膝上型计算机或笔记本计算机)或者其他设备。
用户界面生成器106被配置为由至少一个处理器104生成虚拟键盘108,以用于在用户界面中显示。在(多个)计算设备102的显示器上呈现用户界面。如本文所使用的,“虚拟键盘”是指具有与物理键盘(例如,膝上型计算机或PC键盘)的数字和字母等相对应的数字和字母等的用户界面。通常,与物理键盘的字符类似地排列虚拟键盘的字符。通常将虚拟键盘显示在触摸屏上,并且通过触摸选择、悬停选择或者与触摸屏的其他交互来选择各个字符。投影键盘、AirType键盘和其他非物理键盘也被认为是虚拟键盘。
用户界面生成器106还被配置为:在接收到所确定的用户意图110的指示时,由至少一个处理器104基于所确定的用户意图110来在虚拟键盘108内生成任务图标112。如本文所使用的。“任务图标”是指表示功能的图形、图像、文本、符号或其他用户界面元素。任务图标112的外观可以反映所确定的用户意图110。例如,如果所确定的用户意图110是要观看电影,则任务图标112可以是电影工作室、剧院、票证或投影仪的图形或图像、文本“电影”等等。在一些示例中,多个用户意图(例如,超过置信度或概率阈值的多个用户意图)被确定,并且呈现多个任务图标。在图4A-图15中示出了任务图标的示例。
在一些示例中,在虚拟键盘108的输入方法编辑器(IME)部分114中呈现任务图标112。在图1中,IME部分114被示出为在虚拟键盘108的顶部。IME部分114可以是虚拟键盘108的一部分,在该部分中显示自动校正或单词建议。IME部分114可以包含各种重要位置。使用IME中出现的自动校正建议的示例,可以在IME部分114中位于左侧的第一位置中呈现最可能的建议、可以在第一位置右侧的第二位置中呈现第二最可能的建议、等等。可以在IME部分114内的任何位置中呈现任务图标112。也可以在虚拟键盘108的不同部分中呈现任务图标112,例如左侧或右侧、左下或右下等。任务图标112也可以被部分地遮挡以作为可以利用滑动获得的附加信息的“窥视(peek)”。在一些示例中,用户界面生成器106还被配置为:在接收到所确定的用户意图110已经被更新的指示时(例如,基于附加的上下文信息或者在时间阈值已经过去之后),由至少一个处理器104移除任务图标112。
与虚拟键盘108中的任务图标112的交互启动与所确定的用户意图110相关联的功能。与任务图标112的交互可以是:例如,触摸或悬停选择、向右滑动(或向左、向上或向下滑动)、捏、选择以及按下并保持达阈值时间量、或者其他交互。
用户界面生成器106可以被配置为在任务图标用户界面中启动与所确定的用户意图110相关联的功能(例如在图4B、图6B、图7B、图8D、图9B、图12G、图12H、图13B和其他图中所图示的)。例如,用户界面生成器106可以被配置为:在接收到与任务图标112的交互的指示时,利用任务图标用户界面替换用户界面的一部分。可以经由任务图标用户界面访问与所确定的用户意图110相关联的功能。在一些示例中,任务图标用户界面被显示以替换虚拟键盘108的一部分。作为特定示例,可以显示任务图标用户界面来替换IME部分114下方的虚拟键盘108的部分(例如在图4B和图6B中所图示的)。在一些示例中,用户界面中除了虚拟键盘108之外的一部分被替换为任务图标用户界面。这例如在图12B和图13B中被图示出。在各种示例中,在显示任务图标用户界面的同时可以继续显示虚拟键盘108。
任务图标用户界面可以包括针对通过与任务图标112交互而启动的应用的应用用户界面,或者包括到应用的功能或web服务的功能的链接或深度链接。通过与任务图标112交互而启动的应用可以是:例如,地图应用、组织应用、资金转移应用、媒体应用(音频、视频和/或图像)或用户评论应用。在一些示例中,针对通过与任务图标112交互而启动的应用的应用用户界面包括由应用生成并且与所确定的用户意图110相关的可共享内容。可共享内容可以包括:例如,估计的到达或离开时间、事件开始时间或结束时间、餐厅建议、电影建议、日历项目、建议的见面时间或见面地点、公交信息、交通信息、天气或温度信息、或者即时答复结果。在一些示例中,可以单独选择信息的某些部分以用于共享。例如,如果餐厅建议是可共享内容,则地址、小时、菜单链接、方向、评论等的任何组合都可以是可共享的。关于图4B-图15详细地讨论任务图标用户界面。
可以将用户界面生成器106实现为例如存储在存储器(未示出)中并且由至少一个处理器104可执行的计算机可执行指令(例如,软件)。用户界面生成器106还可以至少部分地使用可编程逻辑器件(PLD)(诸如现场可编程门阵列(FPGA))、专用集成电路(ASIC)或其他计算硬件来实现。
提供给用户界面生成器106的所确定的用户意图110由意图分类器116确定,并且在一些示例中由排名器118来确定。意图分类器116被配置为:由至少一个处理器104基于上下文信息120来确定一个或多个用户意图候选。在一些示例中,系统100包括多个意图分类器。上下文信息120可以包括:例如,经由虚拟键盘108输入的文本、从远程计算设备接收的文本、通过语音识别接收的命令、与在显示虚拟键盘108时是活动的应用相关的信息、先前与之交互的任务图标、与用户界面的用户交互的位置、当前时间、日或日期、或者历史或偏好信息。
作为示例,如果消息应用在显示虚拟键盘108时是活动的,则上下文信息120可以包括:经由虚拟键盘108输入的消息;从另一个用户接收的消息;消息应用是活动的事实;与用户正在与之通信的其他用户相关联的偏好或历史;或者与两个用户之间的会话相关联的偏好或历史(例如,两个用户见面喝咖啡的历史)。上下文信息120还可以包括:由用户最近执行的动作(例如,在地图应用中针对“咖啡”的最近搜索)、提醒/警报、日历或组织项目(例如在日历应用中将“与Kyle喝咖啡”存储为即将到来的约会)等等。如本文所使用的,消息应用包括专用“聊天”应用、其他应用中的聊天或消息功能、电子邮件应用或在用户之间发送消息的其他应用。
意图分类器116可以通过多种方法来确定用户意图候选,包括人工智能和机器学习方法(诸如自然语言理解(NLU))。NLU涉及解析、组织和分类人类语言(无论是通过语音识别接收到的、触摸/键入输入还是通过电子消息或其他电子通信接收到的)。例如,可以使用模板匹配方法来执行NLU,其中对文本进行分析以识别与已知意图相对应的特定共同定位的字符串。例如,“(机场_代码_1)到(机场_代码_2)”的模板可以对应于购买机票的意图。在模板匹配方法中,可以将接收的文本与许多不同的模板进行比较。
还可以通过使用统计模型(诸如逻辑回归、增强决策树、神经网络、条件马尔可夫语言模型或条件随机场)来执行意图分类。在此类方法中,利用已知意图进行标记的文本部分的训练集被用来构建统计模型,然后使用该统计模型来预测在运行时遇到的其他文本的意图。收集各种大量的训练数据可以改善此类方法的性能。
在一些示例中,系统100包括用于以下不同类型的功能的不同意图分类器,该不同类型的功能可以与任务图标112相关联并且经由任务图标112访问。例如,系统100可以包括用于餐厅推荐的意图分类器、用于方向的意图分类器、用于媒体项目的意图分类器等。在使用模板匹配技术的示例中,不同的意图分类器可以具有不同的关联模板。可以使用基于先前输入的文本和(针对用户和/或其他用户)所采取的后续动作的训练数据来训练意图分类器116。例如,如果用户接收到文本“饿吗?”并回复“饿了”,并且然后打开餐厅评论或地图应用,则此数据可以被用作训练数据,以将未来接收到的“饿”和“饿了”事件与寻找吃饭的餐厅的意图相匹配。还可以基于与先前呈现的任务图标的用户交互或者缺乏与先前呈现的任务图标的用户交互来完成训练。例如,如果基于所确定的意图呈现任务图标,并且用户选择、滑动或以其他方式与任务图标交互,则解释是:所确定的用户意图对于上下文信息是准确的。相反,如果呈现任务图标但用户未与该任务图标交互,则解释是:所确定的用户意图是不准确的。在一些示例中,训练数据可以跨用户进行聚合,并且被存储在例如可以由不同用户访问训练数据的云环境中。在其他示例中,训练数据是用户特定的。
搜索工具也可以被用来训练意图分类器116。用户搜索和所采取的对应的后续动作或者所选择的结果被用来通知未来意图分类。可以将搜索工具(例如在图13A-图13D、图14A-图14D、图15A-图15D和图16中图示出的)包括在虚拟键盘108中。搜索工具例如可以在IME部分114中被呈现,并且可以通过与搜索图标(例如放大镜、问号等)交互或者通过执行特定手势或手势组合而被访问。例如,滑动IME部分114(例如,向左或向右滑动)可以使得具有文本输入区域的搜索工具被显示在IME部分114中。沿相反方向滑动IME 114或选择退出按钮可导使得致搜索工具消失。搜索工具也可以是语音识别搜索工具,其在与搜索图标交互时开始“收听”。在一些示例中,搜索工具当显示虚拟键盘108时被显示。作为具体示例,当启动虚拟键盘108时,搜索工具出现在IME部分114中或者其下方。在其中在IME部分114中呈现搜索工具的一些示例中,当由于使用了正在使用虚拟键盘108的应用而生成并呈现任务图标112时(或当生成自动校正建议时),搜索工具消失。系统100可以包括搜索引擎(未示出),其被配置为执行经由搜索工具接收到的搜索,并且用户界面生成器106可以被配置为呈现搜索工具。
可以将意图分类器116实现为:例如存储在存储器(未示出)中并且可由至少一个处理器104执行的计算机可执行指令(例如,软件)。意图分类器116也可以至少部分地使用可编程逻辑器件(PLD)(诸如现场可编程门阵列(FPGA))、专用集成电路(ASIC)或其他计算硬件来实现。意图分类器116也可以使用神经网络(例如深度神经网络、卷积神经网络等)来实现。在一些示例中,意图分类器116可以在云计算环境(例如诸如图21的云2110)中实现,并且系统100通过网络(诸如因特网)来与意图分类器116通信。在一些示例中,意图分类器116的一些功能可以在系统100中实现,而意图分类器116的其他功能在云中实现。
在一些示例中,意图分类器116执行用户意图候选中的一个或多个的排名或者以其他方式选择用户意图候选中的一个或多个(例如,选择具有最高概率的候选等)以作为所确定的用户意图110。在其他示例中,排名器118被配置为由至少一个处理器104对由意图分类器116所确定的一个或多个用户意图候选进行排名,并且基于排名来选择至少一个用户意图候选作为所确定的用户意图110。排名器118可以被配置为应用各种排名方法,诸如选择具有最高置信水平(例如,正确的概率)的用户意图候选。在一些示例中,排名器118的功能与意图分类器116组合。例如可以通过以下方法来完成排名:使用等渗或逻辑回归来校准意图分类器116、然后使用在排名损失函数下训练的增强决策树或神经网络、或者其他方法通过分类器输出进行排序。例如,可以通过对用于排名的分数进行阈值处理来完成对所确定的用户意图110的选择。
例如,可以将排名器118实现为存储在存储器(未示出)中并且由至少一个处理器104可执行的计算机可执行指令(例如,软件)。排名器118还可以至少部分地使用可编程逻辑器件(PLD)(诸如现场可编程门阵列(FPGA))、专用集成电路(ASIC)或其他计算硬件来实现。
图2图示出了在一个或多个计算设备202上实现的系统200。计算设备202包括至少一个处理器204。计算设备202可以类似于图1的计算设备102。用户界面生成器206和排名器208也可以类似于图1中的对应组件。系统200包括多个意图分类器210。联合器212被配置为由至少一个处理器204将上下文信息分发给意图分类器210。联合器212还被配置为基于由意图分类器210所确定的用户意图候选来确定用户意图候选的聚合组。排名器208还被配置为由至少一个处理器204对聚合组中的用户意图候选进行排名。
可以将用户界面生成器206、排名器208和联合器212实现为例如存储在存储器(未示出)中并且由至少一个处理器204可执行的计算机可执行指令(例如,软件)。用户界面发生器206、排名器208和联合器212还可以至少部分地使用可编程逻辑器件(PLD)(诸如现场可编程门阵列(FPGA))、专用集成电路(ASIC)或其他计算硬件来实现。
解码器214被配置为由至少一个处理器204解释和识别对虚拟键盘(未示出)的触摸和悬停输入。解码器214可以被配置为识别触摸/轻敲以及滑动。解码器214可以被配置为根据一个或多个触摸模型216和语言模型218(例如,诸如用户的语言模型)来解释输入。触摸模型216被配置为对关于用户在输入文本时用户想要哪个单词的各种假设与触摸和悬停输入相匹配的程度进行评估。语言模型218被配置为对这些假设与已输入的单词的拟合程度进行评估。自动校正器220被配置为由至少一个处理器204提供例如可以在虚拟键盘的IME中呈现的自动校正建议、拼写建议等。
类似于图1的用户界面生成器106,用户界面生成器206被配置为在虚拟键盘内生成反映所确定的用户意图的任务图标,并且在接收到与任务图标的交互的指示时生成任务图标用户界面,其提供对与所确定的意图相对应的功能的访问。任务图标用户界面可以包括到一个或多个本地服务或应用222或web服务或应用224的链接或深度链接。任务图标用户界面还可以包括用于一个或多个本地服务或应用222或web服务或应用224的应用界面。
图3图示出了重新配置用户界面的示例方法300。在处理框302中,生成虚拟键盘。在处理框304中,接收上下文信息。上下文信息可以包括:例如,经由虚拟键盘输入的文本、从远程计算设备接收的文本、通过语音识别接收的命令、或者与显示虚拟键盘时是活动的应用相关的信息。在处理框306中确定用户意图。例如,可以使用意图分类器和排名器来确定用户意图。在处理框308中,在虚拟键盘内生成任务图标。例如,可以在键盘的IME中呈现任务图标。例如,可以使用图1的系统100或图2的系统200来执行方法300。
图4A-图4D图示出了用户意图的确定和日历任务图标的呈现。在图4A的用户界面400中,消息应用是活动的并且显示会话402。用户界面400还包括具有IME部分406的虚拟键盘404。基于从会话402获得的上下文信息(例如,问题“本周想要去吃晚餐吗?”和答复“我有空”),确定用户意图为标识可以见面吃晚餐的时间。例如,上下文信息还可以包括:“Ellen”是否是频繁联系人(并且因此是用户更有可能与其见面吃晚餐的某人)、用户的语句“生日快乐”以及随附的生日蛋糕表情符号、电子邮件是否指示Ellen将与用户位于相同位置等。在确定该意图之后,生成任务图标408,并且将其呈现在虚拟键盘404的IME部分406中。在用户界面400中还示出了文本输入框409。文本输入框409是消息应用的一部分,并且不是虚拟键盘404的一部分。
如图4B中所示,与任务图标408的交互(诸如选择、向左或向右滑动等)使得呈现任务图标用户界面410来替换用户界面400的一部分。在图4B中,任务图标用户界面410被呈现以替换虚拟键盘404的一部分。具体地,IME部分406下方的虚拟键盘404的部分已经被任务图标用户界面410替换,但是仍然显示IME部分406。显示会话402的用户界面400的部分保持不变。可以经由任务图标用户界面410访问与所确定的意图相关联的功能。任务图标用户界面410包括日历应用的应用用户界面,其中示出了针对不同日期的时间块。任务图标408的外观(日历的月视图)反映了所确定的用户意图和可以通过与任务图标408交互而在任务图标用户界面410中启动的功能。可以使任务图标408突出(例如,如图4A和图4B中所示的下划线和加粗、扭曲或以其他方式进行强调)以指示与任务图标408的交互启动了功能。在IME部分406中呈现键盘图标412,以允许用户利用虚拟键盘404的字符键替换任务图标用户界面410。如图4C和图4D中所示,在任务图标用户界面410中,时间框是可选择的并且可以被添加到会话402。
在图4C中,已经选择了两个可能的时间,时间框414和时间框416。文本输入框409指示“所选事件:2”。时间框414和时间框416是可共享内容,其可以被选择并添加到会话402。如图4D中所示,通过采取另一动作(诸如按下“发送”、拖放等),包括时间框414和时间框416的“可用时间:”会话条目418被添加到会话402。在添加了会话条目418之后,任务图标408不再被显示在IME部分406中。如图4A-图4D所图示,动态确定用户意图并且生成和呈现与用户意图相对应的任务图标允许用户执行动作并访且问其他应用而不中断会话流程。
图5图示出了包括在消息应用中正在实施的会话502的用户界面500。虚拟键盘504包括IME部分506。基于会话502中的语句“嗨,我刚刚更新了salespitch.pptx”来确定用户意图为从web服务打开文件。在IME部分506中呈现web服务任务图标508,以及自动建议510(“在会议中”)和自动建议512(“我很忙”)。在图5中,自动建议510位于IME位置1中,自动建议512位于IME位置2中,并且任务图标508位于IME位置3中。与任务图标508的交互启动与web服务(未示出)相关联的功能,诸如到“salespitch.pptx”文件的链接或深度链接、去往共享工作区或文件夹、web服务用户界面等。
图6A图示出了包括在消息应用中正在实施的会话602的用户界面600。虚拟键盘604包括IME部分606。基于会话602中的语句“嗨,你在哪里,刚等到一张桌子…”和/或“我在…”来确定用户意图为共享当前位置(和/或提供估计的到达时间等)。然后,在IME部分606中呈现地图任务图标608以反映所确定的意图。如图6B中所示,与地图任务图标608的交互使得呈现地图任务图标用户界面610以替换虚拟键盘604的一部分。
地图任务图标用户界面610包括用户的当前位置和目的地的地图以及可共享内容项目612、614和616,其分别指示用户通过汽车、公交或步行的估计到达时间。在图6C中,已经选择了可共享内容项目614(如由可共享内容项目614的粗体所指示),并且在地图任务图标用户界面610中示出了所获取的在用户的当前位置和目的地之间的公交路线。在图6D中,会话条目618已经被添加到会话602。会话条目618反映了可共享内容项目614。
图7A图示出了包括在消息应用中正在实施的会话702的用户界面700。虚拟键盘704包括IME部分706。基于语句“今晚想要一起聚聚吗?”和/或“当然,怎么样”确定用户意图为在某处会面(例如,在餐厅吃晚餐)。在IME部分706中呈现地图任务图标708。如图7B中所示,与地图任务图标708的交互使得呈现地图任务图标用户界面710以替换虚拟键盘704的一部分。地图任务图标用户界面710显示用户的当前位置并且列出了附近的餐厅。
如图7A和图7B中所示,IME部分706还包括基于上下文信息生成的附加任务图标(诸如电影任务图标712),其在图7A中被部分遮蔽但是在图7B中是可见的。在某些情况下,多个用户意图是可能的。基于会话702中的语句,用户可能对见面吃晚餐、见面喝咖啡、见面看电影、见面归还物品等感兴趣。因此,可以生成多个任务图标并在虚拟键盘内呈现该多个任务图标。可以按照(例如基于置信水平、用户历史等等)所确定的可能性的顺序来呈现多个任务图标。如图7B中所示,在IME部分706中呈现地图任务图标708、电影任务图标712、餐厅任务图标714和其他任务图标。
在一些示例中,第一任务图标可以与表示第一任务图标的功能的子集的其他任务图标相关联。例如,地图任务图标708可以启动各种不同的地图功能(例如估计的到达时间、餐厅的位置、商店的位置等)。因此,如图7B中所图示的,地图任务图标708已经被选择,并且地图任务图标用户界面710与由餐厅任务图标714表示的地图的餐厅方面相关联。在用户界面700中,用户可以滑动或选择其他任务图标以改变在IME部分706下方显示的任务图标用户界面。
在图7C中,已经选择了可共享内容项目716(餐厅“Mamnoon”)(如由可共享内容项目716的粗体所指示)。在图7D中,会话条目718已被添加到会话702。会话条目702反映可共享内容项目718,并且列出了餐厅的名称和地址。在添加会话条目702之后,包括任务图标708和712的任务图标已经从IME部分706中被移除。
图8A和图8B涉及基于意图的即时答复。在图8A的用户界面800中,(例如,在电子邮件或消息应用中)正在编写包括文本“我邀请25个小孩×9$餐×4$饮料”的新消息。该文本中的一些或全部可以被用来确定用户意图为计算总花费。在虚拟键盘806的IME部分804内显示指示总花费的即时答复结果802。类似地,在图8B的用户界面808中,正在编写包括文本“∈45的礼物”的新消息。该文本中的一些或全部可以被用来确定用户意图为计算美元等同价格。在虚拟键盘806的IME部分804内显示指示美元价格的即时答复结果810。
图9A和图9B图示出了在其中显示了会话902的用户界面900。基于上下文信息(例如,会话条目“你看了海鹰队比赛吗???”),确定用户意图为查看或共享西雅图海鹰队橄榄球比赛的视频。在虚拟键盘908的IME部分906中提供最近比赛得分的即时答复结果904。如图9B中所图示的还可以在虚拟键盘908中生成并显示一个或多个任务图标。例如,可以通过滑动即时答复结果904来显露附加任务图标。图9B示出了包括橄榄球媒体任务图标910的多个任务图标,在与橄榄球媒体任务图标910交互时,其使得用橄榄球媒体任务用户界面912替换虚拟键盘908的一部分,其显示可共享和/或可观看的橄榄球比赛视频剪辑和/或图像。例如,用户可以将视频剪辑的缩略图像选择或拖放到会话902中。
图10A和图10B图示出了在其中显示会话1002的用户界面1000。基于上下文信息(例如,会话条目“我们还可以在晚餐后看电影”和/或“是!我们去买星球大战的票”),确定用户意图为去观看电影“星球大战”。在虚拟键盘1008的IME部分1006中呈现电影任务图标1004。如图10B中所示,与电影任务图标1004的交互使得呈现电影任务图标用户界面1010,以替换虚拟键盘1008的一部分。电影任务图标用户界面1010显示在用户的当前位置附近的剧院的“星球大战”的上映时间。电影任务图标用户界面1010可以是电影票购买/预订服务应用用户界面和/或可以包含到电影服务的链接或者用于购买特定演出票的深度链接。在图10B中,剧院“iPic Redmond(2D)”被选择并在文本输入框1012中作为文本条目而被显现。然后可以将该文本条目添加到会话1002。
图11图示出了在其中显示会话1102的用户界面1100。基于上下文信息(例如,会话条目“嗨,为我们买到票了,25美元/每张”和/或“谢谢!我把钱发给你”)确定用户意图为转移资金。资金转移被视为交易服务;交易服务应用可以是资金转移应用或其他基于交易的应用。资金转移任务图标1104被呈现在虚拟键盘的IME部分1106中(图11中仅示出了IME部分1106)。图11还示出了资金转移任务图标用户界面1108,在与资金转移任务图标1104交互之后,资金转移任务图标用户界面1108替换了虚拟键盘的一部分。资金转移任务图标用户界面包含可以被选择以使用不同资金转移服务来转移资金的深度链接1110和深度链接1112。然后可以将发送资金的指示添加到会话1102。
图12A-图12H图示出了在其中任务图标用户界面替换整个用户界面的一部分(在虚拟键盘上方)而不是替换虚拟键盘的一部分的示例。图12A图示出了用户界面1200,其中“我正在与Kyle见面”已被输入到消息应用的文本输入框1202中。基于上下文信息(例如,文本条目“我正在与Kyle见面”),确定用户意图为访问Kyle的联系人信息。在虚拟键盘1208的IME部分1206中呈现联系人任务图标1204。如图12B中所示,与任务图标1204的交互使得用户界面1200的一部分(紧接在IME部分1206上方的部分)被替换为联系人任务图标用户界面121,。联系人任务图标用户界面1210包括联系人或组织人应用的功能,并显示Kyle的联系人信息。
图12C图示出了在与图12C中的联系人任务图标用户界面1210交互时所呈现的扩展的联系人任务图标用户界面1212。扩展的联系人任务图标用户界面1212被呈现以替换虚拟键盘1208的一部分(即,替换字符键)。IME部分1206被移动到用户界面1200的底部。在图12C中,在呈现扩展的联系人任务图标用户界面1212之前,可用于显示消息的用户界面1200的部分保持与图12B中相同。
在图12D中,用户已经退出扩展的联系人任务图标用户界面1212,并且继续键入文本输入框1204,其现在写着“我在鼎泰丰与Kyle见面吃午餐”。根据更新的上下文信息(附加文字“在鼎泰丰吃午餐”)确定更新的用户意图为确定/共享餐厅位置。在IME部分1206中显示餐厅任务图标1214以反映更新的用户意图,并且从IME部分1206中移除联系人任务图标1204。在一些示例中,由于更新的用户意图而被呈现但随后被移除的任务图标可以由指示符(例如,在IME中或在虚拟键盘中的其他地方的数字或其他指示符)来表示,并且可以在与指示符的用户交互时重新显示这些任务图标。
在图12E中,与餐厅任务图标1214的用户交互使得用户界面1200的一部分被餐厅任务图标用户界面1216替换,该餐厅任务图标用户界面1216提供针对餐厅“Din Tai Fung(鼎泰丰)”的联系人信息。在图12F中,用户界面1200反映用户已经选择了图12E中所图示的退出按钮1218,并且餐厅任务图标用户界面1216和餐厅任务图标1214已经消失。
在一些示例中,在接收到附加上下文信息但是还基于附加上下文信息确定了附加意图之后,如果确定任务图标仍然反映所确定的用户意图,那么可以呈现附加任务图标以及原始任务图标。在图12G和图12H中,基于更新的上下文信息(附加文本“在鼎泰丰吃午餐,想要加入?”)在IME部分1206中呈现联系人任务图标1204和餐厅任务图标1214。与联系人任务图标1204的用户交互使得联系人任务图标用户界面1220替换用户界面1200的一部分。在图12G中,呈现多个任务图标用户界面以对应于多个任务图标。餐厅任务图标用户界面1222的一部分在联系人任务图标用户界面1220旁边是可见的。不同的任务图标用户界面可以是可滚动的。例如,用户可以向左或向右滑动或滚动联系人任务图标用户界面1220或者滑动/选择餐厅任务图标1214,以显示餐厅任务图标用户界面1222。图12H图示出了以下示例,在该示例中餐厅任务图标用户界面1222被选择,然后在与餐厅任务图标用户界面1222的用户交互时由扩展的餐厅任务图标用户界面1224替换虚拟键盘1208的一部分。
图13A图示出了在其中“我在鼎泰丰与Kyle见面吃午餐”已被输入到消息应用的文本输入框1302中的用户界面1300。基于上下文信息(例如,文本条目“我在鼎泰丰与Kyle见面吃午餐”),确定用户意图为访问/共享餐厅信息。在虚拟键盘1308的IME部分1306中呈现餐厅任务图标1304。如13B图中所示,与任务图标1304的交互使得用户界面1300的一部分(在IME部分1206上方的部分)被餐厅任务图标用户界面1310替换。当呈现餐厅任务图标用户界面1310时,继续显示虚拟键盘1308。
图14A-图16图示出了其中在虚拟键盘内呈现搜索工具的各种示例用户界面。在图14A中,用户界面1400包含具有IME部分1404的虚拟键盘1402。在IME部分1404中呈现由放大镜图标1406表示的搜索工具。在一些示例中,通过滑动IME或者选择虚拟键盘1402内显示的另一个图标或字符来访问搜索工具(并且显示放大镜图标1406)。在图14A中,用户输入了“披萨”。然后显示搜索结果用户界面1408,其示出了针对各种类别的结果,诸如表情符号(Emoji)、餐厅等。
在图14B中,在IME部分1404中显示与各种类别相对应的不同任务图标。在图14B中,选择表情符号图标1410,并且搜索结果用户界面1408仅显示针对“披萨”的表情符号结果。表情符号图标1410不被认为是任务图标,因为表情符号不与功能相关联。在图14C中,选择餐厅任务图标1412,并且搜索结果用户界面1408仅显示餐厅结果。类似地,在图14D中,选择图像任务图标1414,并且搜索结果用户界面1408仅显示图像结果。在一些示例中,与表情符号图标1410一样,除非功能与图像任务图标1414相关联,否则图像任务图标1414不被视为任务图标。类似于任务图标用户界面,搜索结果用户界面1408可以提供对功能的访问(例如,经由链接、深度链接、或应用用户界面)。
图15A图示出了包括具有IME部分1504的虚拟键盘1502的示例用户界面1500。图15A图示出了搜索工具的初始显示的示例(如放大镜图标1506所示)。例如,可以在用户滑动或以其他方式与IME部分1504交互之后呈现搜索工具。可以通过选择退出按钮1508来隐藏搜索工具。在一些示例中,搜索工具提供选择与各种类别相对应的搜索结果的选项。图15B图示出了与IME部分1504内呈现的各种类别相对应的各种任务图标。基于类别的搜索可以是图15A中所显示的布置的备选,或者图15A和图15B中的布置可以在两者之间进行切换或选择。
图15C图示出了对特定搜索类别的用户选择。在图15C中,如由IME部分1504中所示的图像任务图标1510所指示的,图像搜索被选择。在图15D中,搜索“发声器”,并且呈现包括图像结果的搜索结果用户界面1512。
图16图示出了用户界面1600,其中将搜索结果用户界面1602呈现在虚拟键盘1604上方以替换用户界面1600的一部分。
在图4A至图16中,将任务图标用户界面、扩展的任务图标用户界面和搜索结果用户界面呈现在不同位置,并且替换整个用户界面的不同部分。可以预期,本文所描述的任务图标用户界面的任何位置都可以与任何示例一起使用。选择具体配置和示例用于解释目的并且不意味是限制性的。
在一些示例中,基于先前的手动搜索来生成和呈现任务图标。例如,可以在虚拟键盘中呈现与通过搜索工具(例如,在虚拟键盘的IME部分中)输入的先前搜索相对应的任务图标。在一些示例中,可以在确定当前用户意图之前呈现与先前搜索相对应的任务图标。
图17图示出了用于重新配置计算设备上的用户界面的方法1700。在处理框1702中,在图形用户界面中呈现虚拟键盘。在处理框1704中,接收一个或多个文本条目。在处理框1706中,至少部分地基于一个或多个文本条目,使用一个或多个意图分类器来确定用户意图。在确定用户意图时,在处理框1708中,在虚拟键盘内呈现表示与用户意图相对应的功能的任务图标。在处理框1710中,在用户选择任务图标之后,呈现提供对与用户意图相对应的功能的访问的任务图标用户界面,以替换图形用户界面的一部分。
图18图示出了用于重新配置图形用户界面的方法1800。在处理框1802中,当第一应用是活动的时,在图形用户界面中呈现虚拟键盘。虚拟键盘具有输入法编辑器(IME)部分。在处理框1804中,至少部分地基于针对第一应用的上下文信息,确定用户意图。上下文信息包括以下中的至少一项:经由虚拟键盘输入的文本、经由第一应用接收的文本、或者与第一应用相关的信息。在处理框1806中,在虚拟键盘的IME部分内呈现任务图标。将任务图标链接到反映用户意图的功能。在处理框1808中,在接收到对任务图标的选择的指示时,呈现任务图标用户界面来替换虚拟键盘的一部分。任务图标用户界面包括以下中的至少一项:用于第二应用的应用用户界面、由第二应用生成的可共享内容、或者到第二应用的功能或web服务的功能的深度链接。
示例计算系统
图19描绘了在其中可以实现所描述的创新的合适的计算系统1900的一般化示例。计算系统1900不旨在对使用或功能的范围提出任何限制,因为可以在不同的通用或专用计算系统中实现创新。
参考图19,计算系统1900包括一个或多个处理单元1910、1915和存储器1920、1925。在图19中,该基本配置1930被包括在虚线内。处理单元1910、1915执行计算机可执行指令。处理单元可以是通用中央处理单元(CPU)、专用集成电路(ASIC)中的处理器、或者是任何其他类型的处理器。在多处理系统中,多个处理单元执行计算机可执行指令以增加处理能力。例如,图19示出了中央处理单元1910以及图形处理单元或协处理单元1915。有形存储器1920、1925可以是易失性存储器(例如,寄存器、高速缓存、RAM)、非易失性存储器(例如,ROM、EEPROM、闪存等)或两者的某种组合,其可由(多个)处理单元访问。存储器1920、1925以适于由(多个)处理单元执行的计算机可执行指令的形式来存储实现本文所述的一个或多个创新的软件1980。例如,存储器1920、1925可以存储图1的意图分类器116、排名器118和/或用户界面生成器106和/或图2的用户界面生成器206、排名器208、联合器212、解码器214、自动校正器220和/或意图分类器210。
计算系统可以具有附加的特征。例如,计算系统1900包括储存器1940、一个或多个输入设备1950、一个或多个输出设备1960、以及一个或多个通信连接1970。诸如总线、控制器或网络之类的互连机制(未示出)对计算系统1900的组件进行互连。通常,操作系统软件(未示出)为在计算系统1900中执行的其他软件提供操作环境,并且协调计算系统1900的组件的活动。
有形存储器1940可以是可移除的或不可移除的,并且包括磁盘、磁带或盒、CD-ROM、DVD或者可以被用来存储信息并且可在计算系统1900内访问的任何其他介质。储存器1940存储用于实现本文所描述的一个或多个创新的软件1980的指令。例如,储存器1940可以存储图1的意图分类器116、排名器118和/或用户界面生成器106和/或图2的用户界面生成器206、排名器208、联合器212、解码器214、自动校正器220和/或意图分类器210。
(多个)输入设备1950可以是触摸输入设备(诸如键盘、鼠标、笔或轨迹球)、语音输入设备、扫描设备或向计算系统1900提供输入的另一设备。对于视频编码,(多个)输入设备1950可以是照相机、视频卡、电视调谐器卡或接受模拟或数字形式的视频输入的类似设备、或者是将视频样本读入计算系统1900的CD-ROM或CD-RW。(多个)输出设备1960可以是显示器、打印机、扬声器、CD刻录机或提供来自计算系统1900的输出的另一设备。
(多个)通信连接1970使得能够通过通信介质与另一个计算实体进行通信。通信介质以调制数据信号传送诸如计算机可执行指令、音频或视频输入或输出之类的信息或其他数据。调制数据信号是以下信号,其以对信号中的信息进行编码的方式使得其一个或多个特性被设置或改变。作为示例而非限制,通信介质可以使用电、光、RF或其他载体。
可以在诸如程序模块中包括的那些之类的计算机可执行指令的一般上下文中描述创新,其在目标真实或虚拟处理器上的计算系统中被执行。通常,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、库、对象、类、组件、数据结构等。在各种实施例中,可以按期望在程序模块之间组合或分割程序模块的功能。可以在本地或分布式计算系统内执行用于程序模块的计算机可执行指令。
术语“系统”和“设备”在本文中可互换使用。除非上下文另有明确说明,否则这两个术语都不意味着对计算系统或计算设备的类型的任何限制。通常,计算系统或计算设备可以是本地的或分布式的,并且可以包括专用硬件和/或具有实现本文所描述的功能的软件的通用硬件的任何组合。
为了呈现的缘故,具体实施方式使用诸如“确定”和“使用”之类的术语来描述计算系统中的计算机操作。这些术语是针对计算机所执行的操作的高级抽象,并且不应与人类执行的动作混淆。对应于这些术语的实际计算机操作根据实现而变化。
示例移动设备
图20是描绘包括总体上以2002示出的各种可选硬件和软件组件的示例移动设备2000的系统图。移动设备中的任何组件2002可以与任何其他组件通信,但是为了便于图示并未示出所有连接。移动设备可以是各种计算设备(例如蜂窝电话、智能电话、手持计算机、个人数字助理(PDA)等)中的任何一种,并且可以允许与一个或多个移动通信网络2004(诸如蜂窝、卫星或其他网络)的无线双向通信。
所图示出的移动设备2000可以包括用于执行诸如信号编码、数据处理、输入/输出处理、功率控制和/或其他功能之类的任务的控制器或处理器2010(例如,信号处理器、微处理器、ASIC或其他控制和处理逻辑电路)。操作系统2012可以控制组件2002的分配和使用以及对一个或多个应用程序2014的支持。应用程序可以包括公共移动计算应用(例如电子邮件应用、日历、联系人管理器、web浏览器、消息应用)或者任何其他计算应用。应用程序2014还可以包括虚拟键盘、任务图标和用户界面重新配置技术。用于访问应用商店的功能2013还可以用于获取和更新应用程序2014。
所图示出的移动设备2000可以包括存储器2020。存储器2020可以包括不可移除存储器2022和/或可移除存储器2024。不可移除存储器2022可以包括RAM、ROM、闪存、硬盘或其他公知的存储器储存技术。可移除存储器2024可以包括闪存或在GSM通信系统中是公知的用户识别模块(SIM)卡或者是诸如“智能卡”之类的其他公知的存储器储存技术。存储器2020可以被用于存储用于运行操作系统2012和应用2014的数据和/或代码。示例数据可以包括经由一个或多个有线或无线网络要被发送到一个或多个网络服务器或其他设备和/或要从一个或多个网络服务器或其他设备接收的网页、文本、图像、声音文件、视频数据或其他数据集。存储器2020可以被用来存储设备标识符,诸如国际移动订户身份(IMSI)之类的订户标识符、以及诸如国际移动设备标识符(IMEI)。可以将这样的标识符发射到网络服务器以识别用户和设备。
移动设备2000可以支持一个或多个输入设备2030(诸如触摸屏2032、麦克风2034、相机2036、物理键盘2038和/或跟踪球2040)以及一个或多个输出设备2050(诸如扬声器2052和显示器2054)。其他可能的输出设备(未示出)可以包括压电或其他触觉输出设备。某些设备可以提供多于一个输入/输出功能。例如,可以将触摸屏2032和显示器2054组合在单个输入/输出设备中。
输入设备2030可以包括自然用户界面(NUI)。NUI是使得用户能够以“自然的”方式与设备交互而不受诸如鼠标、键盘、遥控器等输入设备强加的人为约束的任何接口技术。NUI方法的示例包括依赖于语音识别、触摸和手写笔识别、屏幕上和屏幕附近的手势识别、空中手势、头部和眼睛跟踪、语音和话音、视觉、触摸、手势和机器智能的那些。NUI的其他示例包括使用加速度计/陀螺仪的运动手势检测、面部识别、3D显示、头部、眼部和凝视跟踪、沉浸式增强现实和虚拟现实系统——所有这些都提供更自然的界面、以及用于使用电场感应电极(EEG和相关方法)感知大脑活动的技术。因此,在一个具体示例中,操作系统2012或者应用2014可以包括语音识别软件作为允许用户经由语音命令来操作设备2000的语音用户界面的一部分。此外,设备2000可以包括输入设备和允许经由用户的空间手势进行用户交互(诸如检测和解释手势以向游戏应用提供输入)的软件。
如本领域所熟知的,无线调制解调器2060可以被耦合到天线(未示出),并且可以支持处理器2010和外部设备之间的双向通信。调制解调器2060被一般地示出并且可以包括用于与移动通信网络2004和/或其他基于无线电的调制解调器(例如,蓝牙2064或Wi-Fi2062)通信的蜂窝调制解调器。无线调制解调器2060通常被配置用于与一个或多个蜂窝网络(诸如GSM网络)通信,以用于在单个蜂窝网络内、在蜂窝网络之间、或在移动设备和公共交换电话网络(PSTN)之间的数据和语音通信。
移动设备还可以包括至少一个输入/输出端口2080、电源2082、诸如全球定位系统(GPS)接收器之类的卫星导航系统接收器2084、加速度计2086和/或物理连接器2090,其可以是USB端口、IEEE 1394(FireWire)端口和/或RS-232端口。所图示的组件2002不是必需的或包括所有组件,因为可以删除任何组件并且可以添加其他组件。
示例云支持的环境
图21图示出了在其中可以实现所描述的实施例、技术和科技的合适的云支持环境2100的一般化示例。在示例环境2100中,云2110提供各种类型的服务(例如,计算服务)。例如,云2110可以包括可以位于中央的或者可以是分布式的计算设备的集合,其向经由网络连接(诸如因特网)的各种类型的用户和设备来提供基于云的服务。可以以不同方式使用实现环境2100来完成计算任务。例如,可以在本地计算设备(例如,连接的设备2130、2140、2150)上执行一些任务(例如,处理用户输入和呈现用户界面),而可以在云2110中执行其他任务(例如,将在后续处理中使用的数据的储存)。
在示例环境2100中,云2110为经连接的设备2130、2140、2150提供具有各种屏幕能力的服务。经连接的设备2130表示具有计算机屏幕2135(例如,中型尺寸屏幕)的设备。例如,经连接的设备2130可以是个人计算机,诸如台式计算机、膝上型计算机、笔记本、上网本等。经连接的设备2140表示具有移动设备屏幕2145(例如,小尺寸屏幕)的设备。例如,经连接的设备2140可以是移动电话、智能电话、个人数字助理、平板计算机等。经连接的设备2150表示具有大尺寸屏幕2155的设备。例如,连接的设备2150可以是电视屏幕(例如,智能电视)或连接到电视的另一设备(例如,机顶盒或游戏控制台)等等。经连接的设备2130、2140、2150中的一个或多个可以包括触摸屏能力。触摸屏可以以不同方式接受输入。例如,当物体(例如,指尖或笔尖)扭曲或中断穿过表面的电流时,电容式触摸屏检测到触摸输入。作为另一个示例,当来自光学传感器的光束被中断时,触摸屏可以使用光学传感器来检测触摸输入。对于某些触摸屏检测到的输入,不需要与屏幕表面的物理接触。没有屏幕能力的设备也可以在示例环境2100中被使用。例如,云2110可以为没有显示器的一个或多个计算机(例如,服务器计算机)提供服务。
服务可以由云2110通过服务提供商2120提供或者通过其他在线服务提供商(未示出)提供。例如,可以将云服务定制为特定连接的设备(例如,连接的设备2130、2140、2150)的屏幕尺寸、显示能力和/或触摸屏能力。
在示例环境2100中,云2110至少部分地使用服务提供商2120向各种连接的设备2130、2140、2150提供本文所描述的技术和解决方案。例如,服务提供商2120可以提供用于各种基于云的服务的集中式解决方案。服务提供商2120可以管理针对用户和/或设备(例如,针对连接的设备2130、2140、2150和/或他们各自的用户)的服务订阅。云2110可以存储本文所描述的用户意图确定中使用的训练数据2160。意图分类器2162例如可以类似于图1的意图分类器116,其也可以在云2110中实现。
示例实现
尽管为了方便呈现,以特定的顺序次序描述了所公开方法中的一些的操作,但是应该理解这种描述方式包含重新排列——除非下面阐述的特定语言需要特定次序。例如,顺序描述的操作在某些情况下可以被重新排列或被同时执行。此外,为了简单起见,附图可能未示出所公开的方法可以与其他方法结合使用的各种方式。
所公开的任何方法可以被实现为存储在一个或多个计算机可读储存介质上并在计算设备(例如,任何可用的计算设备,包括智能电话或包括计算硬件的其他移动设备)上执行的计算机可执行指令或计算机程序产品。计算机可读储存介质是可以在计算环境内访问的任何可用有形介质(例如,一个或多个光学介质盘,诸如DVD或CD、易失性存储器组件(诸如DRAM或SRAM)或非易失性存储器组件(诸如作为闪存或硬盘))。作为示例并参考图19,计算机可读储存介质包括存储器1920、存储器1925以及储存器1940。作为示例并参考图20,计算机可读储存介质包括存储器2020、存储器2022和存储器2024。术语计算机可读储存介质不包括信号和载波。另外,术语计算机可读储存介质不包括通信连接(例如,1970、2060、2062和2064)。
用于实现所公开的技术的任何计算机可执行指令以及在所公开的实施例的实现期间所创建和使用的任何数据可以被存储在一个或多个计算机可读储存介质上。计算机可执行指令可以是例如专用软件应用或经由web浏览器或其他软件应用(诸如远程计算应用)访问或下载的软件应用的一部分。可以例如使用一个或多个网络计算机在单个本地计算机(例如,任何合适的商用计算机)上或在网络环境中(例如,经由因特网、广域网、局域网、客户端-服务器网络(诸如云计算网络)或其他此类网络)执行这样的软件。
为了清楚起见,仅描述了基于软件的实现的某些所选方面。省略了本领域公知的其他细节。例如,应该理解,所公开的技术不限于任何特定的计算机语言或程序。例如,所公开的技术可以通过用C++、Java、Perl、JavaScript、Adobe Flash或任何其他合适的编程语言编写的软件来实现。同样地,所公开的技术不限于任何特定计算机或硬件类型。合适的计算机和硬件的某些细节是公知的,并且不需要在本公开中详细阐述。
此外,可以通过合适的通信装置上载、下载或远程访问任何基于软件的实施例(包括例如用于使计算机执行任何所公开的方法的计算机可执行指令)。这种合适的通信装置包括例如因特网、万维网、内联网、软件应用、电缆(包括光纤电缆)、磁通信、电磁通信(包括RF、微波和红外通信)、电子通信、或其他此类通信方式。
所公开的方法、装置和系统不应被解释为以任何方式进行限制。相反,本公开内容是针对各种公开的实施例的所有新颖和非显而易见的特征和方面——单独地以及以彼此的各种组合和子组合的方式。所公开的方法、装置和系统不限于任何特定方面或特征或其组合,所公开的实施例也不要求存在任何一个或多个特定优点或解决问题。
来自任何示例的技术可以与任何一个或多个其他示例中描述的技术相组合。鉴于可以应用所公开技术的原理的许多可能的实施例,应该认识到,所图示的实施例是所公开技术的示例,并且不应该被视为对所公开技术的范围的限制。
附加示例
在一些示例系统(类似于图1的系统100和/或图2的系统200)中,用户界面生成器(例如,诸如用户界面生成器106或用户界面生成器206)被配置为:由至少一个处理器生成用于在用户界面中显示的虚拟键盘。用户界面生成器还可以被配置为:在接收到与虚拟键盘的IME部分的交互的指示时呈现搜索图标。还关于图14A-图16讨论了搜索用户界面和搜索图标。例如,可以在虚拟键盘的IME部分中呈现搜索图标。用户交互可以是IME部分的按下并保持、IME部分的滑动、或者其他用户交互。在一些示例中,可以与IME部分的任何部分交互(例如,滑动)以使得呈现搜索图标。
在一些示例中,在接收用户交互的指示之前,虚拟键盘不包括搜索图标或搜索功能。这样的方法避免了用户当前没兴趣使用的大量图标或者特征使得虚拟键盘混乱,同时仍然允许用户在期望虚拟键盘中的搜索功能时访问这种功能。
搜索图标可以是以下中的一项:web搜索图标、表情符号搜索图标、联系人搜索图标、图形交换格式(GIF)搜索图标、通用搜索图标或其他合适的搜索图标。在一些示例中,搜索图标对应于与任务图标相同类别中的至少一些。在一些示例中,用户界面生成器被配置为:在接收到用户交互的指示时,在IME中呈现多个搜索图标。各个搜索图标表示经由虚拟键盘可访问的不同类型的搜索功能。作为具体示例,web搜索图标(例如,放大镜)和至少一个附加搜索图标(例如,表情符号搜索图标、图像搜索图标、视频搜索图标、GIF搜索图标、联系人搜索图标等)被一起呈现,以允许用户选择特定类别的搜索。在一些示例中,通用搜索图标被单独呈现或者与其他搜索图标结合呈现。
在一些示例中,与多个搜索图标结合呈现搜索查询文本输入区域。在呈现多个搜索图标的示例中,搜索图标之一的指示符或强调或者其他搜索图标的不强调(例如下划线、粗体、得自其他搜索图标变灰等)示出了哪个搜索图标是活动的。活动的搜索图标确定所呈现的搜索结果的搜索类别。例如,如果图像搜索图标带有下划线且为粗体,则返回图像搜索结果。在一些示例中,在与搜索图标进一步交互(例如,按下并保持、选择、滑动等)时,呈现搜索查询文本输入区域,而不是与(多个)搜索图标同时呈现搜索查询文本输入区域。
在一些示例中,用户界面生成器还被配置为,由至少一个处理器利用搜索结果界面来替换虚拟键盘的一部分。在接收搜索查询之前,可以呈现搜索结果界面来替换虚拟键盘的一部分。也就是说,在接收到与虚拟键盘的IME部分的用户交互的指示时,可以将虚拟键盘从其中不包括搜索图标或搜索功能的初始状态修改为其中包括(多个)搜索图标和搜索结果界面的状态。在接收查询之前呈现搜索结果界面的示例中,可以呈现先前查询或者常见查询的搜索结果(针对特定用户或针对一组用户)。
搜索结果界面中呈现的搜索结果可以以“卡”的格式来被呈现,其中将每个结果包括在类似于名片的矩形(或其他形状)区域中。可以向左或向右滑动结果卡以便以卡的格式显露另一个结果。在其他示例中,以列表、缩略图或其他格式来呈现搜索结果。
可以在虚拟键盘中的任何地方处呈现搜索结果界面。在一些示例中,在虚拟键盘的IME部分上方呈现搜索结果界面,并且将虚拟键盘向上扩展以容纳搜索结果界面。在另一个示例中,IME部分下方的虚拟键盘的部分可以被搜索结果界面替换。用户界面生成器还可以被配置为对转变进行动画处理,在该转变中虚拟键盘的字母键被先前查询的搜索结果替换。例如,字母键可以水平向左或向右或垂直地向上或向下转变。搜索结果用户界面可以与字母键一起转变,并且看起来好像搜索结果用户界面正在将字母键推出可视区域一样。
图22A-图22J图示出了虚拟键盘中呈现的各种搜索界面。图22A示出了图形用户界面2200。用户界面2200包括具有IME部分2202的虚拟键盘。在图22A中,示出了介绍屏幕,其向用户介绍键盘中搜索功能。在虚拟键盘部分2204中,示出了用于使得在虚拟键盘中呈现搜索功能的指令(即,滑动IME部分2202)。在一些示例中,在正常操作情形下(即,当不是第一次使用虚拟键盘时),虚拟键盘部分2204将显示虚拟键盘的键(例如,如图4A中所示)。
在图22B中,用户滑动了IME部分2202,并且开始显露搜索界面(从右向左滑动)。搜索界面包括第一搜索图标2206(显示为“HA!”,其是GIF搜索类别)以及第二搜索图标2208,其是表情符号(emoji)搜索类别。由于介绍内容2210也被移动到视图中,虚拟键盘部分2204正变成搜索结果界面。
图22C图示出了在搜索界面从右向左完全移过显示器之后的用户界面2200。IME部分2202已经扩展,并且现在包括搜索查询文本输入区域2212以及第一搜索图标2206、第二搜索图标2208、第三搜索图标2214(联系人搜索)和第四搜索图标2216(web搜索)。第一搜索图标2206是“活动的”搜索类别,如第一搜索图标2206相对于第二搜索图标2208、第三搜索图标2214和第四搜索图标2216的粗体/着色和下划线所指示的。键盘图标2218也被呈现在IME部分2202的右侧上。与键盘图标2218的交互使得呈现虚拟键盘的键来替换搜索结果界面。图22B中的虚拟键盘部分2204已经变成搜索结果界面2219。搜索结果界面2219还可以包括搜索扩展器(例如,搜索扩展器2220)、替代搜索项目建议、相关查询等。在一些示例中,直到与搜索图标进行用户交互才呈现搜索查询文本输入区域2212。
如图22A所示,搜索结果界面2219示出了当用户第一次使用虚拟键盘时可以显示的介绍内容2210。如图22D中所图示的,在正常操作中,可以呈现先前或者常见搜索结果。在图22D中,在例如介绍内容2210的用户滑动将介绍内容2210移动到显示器的左侧和外部之后,呈现先前搜索结果2221。如图22A-图22D中所示,直到与IME部分2202进行用户交互之前,在虚拟键盘中都不呈现搜索图标、搜索查询文本输入区域或者其他搜索功能。还如图22A-图22D中所示,在用户使得呈现搜索界面之后并在已经实际执行搜索查询之前,可以在搜索结果界面2219中提供先前的或者常见的搜索结果2221。
图22E图示出了用户界面2200,其中用户已选择第二搜索图标2208(表情符号搜索)作为活动搜索类别。搜索结果用户界面2219改变为显示表情符号搜索结果。类似地,在图22F中,用户已选择第三搜索图标2214(联系人搜索)作为活动搜索类别,并且搜索结果用户界面2219改变为显示联系人搜索结果。在图22G中,用户已选择第四搜索图标2216(web搜索)作为活动搜索类别,并且搜索结果用户界面2219改变为显示关于web搜索的介绍内容。在一些示例中,在用户已经执行了至少一个web搜索之后,在搜索结果界面2219中呈现先前的web搜索结果。
在图22A-图22G中,搜索结果被显示为卡,但是其他格式(诸如列表、缩略图图标)也是可能的。图22H图示出了在用户在搜索查询文本输入区域2212中轻敲之后的用户界面2200。搜索结果界面2219已被虚拟键盘的键2222替换。在一些示例中,在虚拟键盘部分2204、搜索结果界面2219(以及搜索结果界面2219内的搜索结果之间)和/或键2222之间的转变在水平或垂直方向上(例如,从左到右、从右到左、从上到下、从下到上)被动画化。
在图22I中,用户经由图22H中所示的键2222输入了“Colonie”。结果,重新显示搜索结果界面2219而不是键2222,并且在搜索结果界面2219中显示餐厅Colonie的搜索结果。搜索结果可以包括可共享内容。在一些示例中,如选项2224“分享所有”所指示的,可以共享整个搜索结果,并且在一些示例中,特定信息条(例如,仅电话号码、地址、小时、评论、菜单等)可以是可共享的。在图22J中,通过触摸标记2226示出用于共享Colonie的地址的用户选择。然后,在用于当前正在使用虚拟键盘的消息应用的文本输入框中呈现针对Colonie的地址信息2228。如图22J中所示,“电话”、“网站”和“Bing”中的每一个都具有可选择的共享选项,并且已被发送到文本输入框以进行共享的地址具有删除选项。利用这样的界面,用户可以仅选择一条、两条、三条等信息来共享,而不必共享整个搜索结果卡,其可能包含与预期接收者不相关的信息。
在图22A-图22J中,为搜索界面、虚拟键盘和搜索结果界面维持了常见装饰主题。在一些示例中,不同的主题被用来指示进入搜索界面。
图23图示出了用于在计算设备上重新配置图形用户界面的方法2300。在处理框2302中,在图形用户界面中呈现虚拟键盘。虚拟键盘不包括搜索图标或搜索文本输入区域。在处理框2304中,接收虚拟键盘的IME部分的滑动的指示。在处理框2306中,响应于滑动的指示,在虚拟键盘内呈现搜索界面。搜索界面包括表示不同搜索类别的多个搜索图标。在一些示例中,搜索界面还包括搜索查询文本输入区域。
搜索界面还包括搜索结果界面。搜索结果界面被呈现以替换IME部分下方的虚拟键盘的一部分,并且搜索结果界面可以包括针对先前接收的或常见的搜索查询的搜索结果。在一些示例中,在虚拟键盘的IME部分上方呈现搜索结果界面,并且扩展了虚拟键盘的整体尺寸。包括在搜索结果界面中的先前接收的或常见的搜索查询可以与由当前选择的多个搜索图标中的搜索图标(“活动”搜索图标)所表示的搜索类别相对应。多个搜索图标可以包括例如web搜索图标以及以下中的至少一个:图像搜索图标、视频搜索图标、表情符号搜索图标、联系人搜索图标、图形交换格式(GIF)搜索图标、或通用搜索图标。
图24图示出了用于在计算设备上重新配置图形用户界面的方法2400。在处理框2402中,在图形用户界面中呈现虚拟键盘。在处理框2404中,接收一个或多个文本条目。在处理框2406中,至少部分地基于一个或多个文本条目,使用一个或多个意图分类器来确定用户意图。在处理框2408中,在确定用户意图时,在虚拟键盘中呈现表示与用户意图相对应的功能的任务图标。与任务图标的交互使得图形用户界面的一部分被替换为任务图标用户界面,该任务图标用户界面提供对与用户意图相对应的功能的访问。
在处理框2410中,确定还没有与任务图标交互。阈值时间可以用于此目的。例如,如果在3秒、5秒、10秒、15秒等等之内任务图标没有被选择、滑动等,则可以确定尚未与任务图标交互。也可以使用其他时间阈值。在一些示例中,在确定尚未与任务图标交互时,从虚拟键盘移除任务图标或者将其移动到图形用户界面的边缘(例如,IME部分的边缘),使得仅任务图标的一部分是可见的。这也被称为提供任务图标的“窥视”。在一些示例中,如果未与任务图标的窥视交互超过第二时间阈值(例如,20秒、30秒、一分钟等),则从虚拟键盘移除任务图标的窥视。
在处理框2412中,接收与虚拟键盘的IME部分的用户交互的指示。例如,这可以是滑动、选择、按下并保持或者其他用户交互。在处理框2414中,响应于接收到指示,在虚拟键盘中呈现搜索界面。搜索界面包括表示不同搜索类别的多个搜索图标。搜索界面还包括与对应于任务图标的搜索图标相关联地被呈现的指示符。指示符表示任务图标先前已被呈现但未被交互。在图25F和图25G中图示出了示例指示符。在一些示例中,当呈现搜索界面时,从图形用户界面移除任务图标。
图25A-图25G图示出了附加任务图标特征。关于例如图4A-图16详细讨论任务图标。在图25A中,用户界面2500包括虚拟键盘,虚拟键盘包括IME部分2502和键盘键2504。图25A图示出了基于确定会见名为Kyle的人的用户意图而生成和呈现任务图标2506。在图25B中,在确定用户未与任务图标2506交互之后(例如,在时间阈值过去之后),任务图标2506已移动到IME部分2502的右手边缘。在第二时间阈值过去之后,任务图标2506的该“窥视”可以持续或者可以从IME部分2502消失。
在图25C中,用户继续在“我正在和Kyle见面”的原始输入文本上键入“午餐”,并且已从视图中移除任务图标2506。在图25D中,用户另外键入“在Colonie”,并且基于所确定的去往Colonie餐厅的意图,在IME部分2502中生成且并呈现第二任务图标2508。在图25E中,如滑动标记2510所指示,用户滑动IME部分2502以显露搜索界面(如图25F中所示)。在图25F中,IME部分2502已经扩展并且现在包括四个搜索图标和搜索查询文本输入区域,其类似于图22C中所示。键盘键2504已经被搜索结果界面2512替换。
用户没有与任务图标2506或者第二任务图标2508中的任何一个交互。在图25F中,由指示符2514和2516指示已经呈现任务图标但未与之交互的事实,其显现为搜索图标下方的点,其类别与任务图标2506和第二任务图标2508相对应。也就是说,因为呈现了联系人任务图标,所以在搜索图标下方呈现用于联系人的点指示符,并且因为呈现了餐厅任务图标,所以在web搜索图标下方呈现点指示符(餐厅任务图标提供对经由web访问的餐厅信息的访问)。在一些示例中,在搜索图标旁边提供单独的指示符,以指示先前被呈现但未被交互的任务图标是可用的。在一些示例中,在搜索图标旁边呈现任务图标本身(例如,在图25F中所示的web搜索(放大镜)图标的右侧呈现任务图标2506和第二任务图标2508)。在一些示例中,仅与搜索图标一起呈现最新的或最近的数个(例如,两个)任务图标。
在图25G中,用户选择了web搜索图标(如粗体/着色和下划线所指示),并且呈现链接到第二任务图标2508的信息。与web搜索图标相关联的指示符随后被移除。
图26A-图26B图示出了备选或附加的搜索界面入口点。用户界面2600包括IME部分2602和键盘键2604。在图26A中,用户按下并保持由触摸标记2606所指示的表情符号图标,启动搜索菜单2608(如图26B中所示)。搜索菜单2608包括关于图22A-图22J讨论的四个搜索图标,以及对应的搜索类别的文本描述。在一些示例中,用户选择、滑动或者与搜索图标之一的其他交互启动例如图22A-图22J中所图示的搜索界面。在其他示例中,启动搜索查询文本输入区域并且仍然显示搜索菜单2608。
图27A-图27B图示出了又一个备选或附加搜索界面入口点。用户界面2700包括“弧形”样式的虚拟键盘。虚拟键盘包括IME部分2702和键盘键2704。如触摸标记2706所指示,与表情符号图标的用户交互启动搜索菜单2708,其以弧形形状延伸到表情符号图标的右侧。搜索菜单2708包括与图26A-图26B中所图示的相同的四个搜索类别,但是其他搜索类别也是可能的。在一些示例中,弧形或其他形状的菜单被显示在虚拟键盘的另一部分中,而不是从表情符号图标延伸。表情符号图标用作示例启动点,因为表情符号搜索类别是所示出的四个搜索类别之一。其他类别(例如,图像搜索、视频搜索等)是可能的,并且其他启动点是可能的(例如,图27A和图27B的右下角中的“HA!”)。在一些示例中,当呈现搜索菜单2708时,呈现搜索查询文本输入框。
在一些示例中,将搜索图标包括在虚拟键盘内(例如,在虚拟键盘的IME部分中),并且在基于所确定的用户意图生成任务图标之后,呈现任务图标以替换搜索图标。例如,如果用户在消息收发应用中正在键入消息“我们应该预订我们飞往纽约的航班”,则可以确定用户意图为购买去往纽约的机票,并且可以呈现航班或旅行任务图标来替换虚拟键盘中(例如,在IME部分中)的搜索图标。

Claims (15)

1.一种系统,包括:
至少一个处理器;以及
用户界面生成器,所述用户界面生成器被配置为由所述至少一个处理器:
生成用于在用户界面中显示的虚拟键盘,以及
在接收到与所述虚拟键盘的输入法编辑器(IME)部分的交互的指示时,呈现搜索图标。
2.根据权利要求1所述的系统,其中所述搜索图标在所述虚拟键盘的所述IME部分中被呈现。
3.根据权利要求1所述的系统,其中所述交互是对所述虚拟键盘的所述IME部分的滑动。
4.根据权利要求3所述的系统,其中对所述虚拟键盘的所述IME部分的所述滑动是对所述虚拟键盘的所述IME部分中的任何部分的滑动。
5.根据权利要求1所述的系统,其中所述搜索图标是以下中的一项:web搜索图标、表情符号搜索图标、联系人搜索图标、图形交换格式(GIF)搜索图标或者通用搜索图标。
6.根据权利要求1所述的系统,其中所述用户界面生成器还被配置为:一经接收到所述交互的所述指示,由所述至少一个处理器在所述虚拟键盘的所述IME部分中呈现多个搜索图标,相应的搜索图标表示经由所述虚拟键盘可访问的不同类型的搜索功能。
7.根据权利要求6所述的系统,其中所述用户界面生成器还被配置为:由所述至少一个处理器呈现与所述多个搜索图标结合的搜索查询文本输入区域。
8.根据权利要求1所述的系统,其中所述用户界面生成器还被配置为:由所述至少一个处理器利用搜索结果界面替换所述虚拟键盘的一部分。
9.根据权利要求8所述的系统,其中所述搜索结果界面替换所述IME部分下方的所述虚拟键盘的部分。
10.根据权利要求8所述的系统,其中所述搜索结果界面在接收搜索查询之前替换所述虚拟键盘的所述部分。
11.根据权利要求8所述的系统,其中所述搜索结果界面包括先前查询的搜索结果。
12.根据权利要求11所述的系统,其中所述用户界面生成器还被配置为将转变动画化,在所述转变中所述虚拟键盘的一个或多个字母键被所述先前查询的搜索结果替换。
13.根据权利要求1所述的系统,其中在接收所述交互的所述指示之前,所述虚拟键盘不包括搜索图标。
14.一种用于在计算设备上重新配置图形用户界面的方法,所述方法包括:
在所述图形用户界面中呈现虚拟键盘,其中所述虚拟键盘不包括搜索图标或者搜索文本输入区域;
接收对所述虚拟键盘的输入法编辑器(IME)部分的滑动的指示;以及
响应于所述滑动的指示,在所述虚拟键盘内呈现搜索界面,所述搜索界面包括:
表示不同搜索类别的多个搜索图标;以及
搜索结果界面,其中所述搜索结果界面被呈现以替换所述IME部分下方的所述虚拟键盘的一部分,并且其中所述搜索结果界面包括先前接收的或常见的搜索查询的搜索结果。
15.一个或多个计算机可读存储介质,存储用于重新配置图形用户界面的计算机可执行指令,所述重新配置包括:
在所述图形用户界面中呈现虚拟键盘;
接收一个或多个文本条目;
至少部分地基于所述一个或多个文本条目,使用一个或多个意图分类器来确定用户意图;
在确定所述用户意图时,在所述虚拟键盘内呈现表示与所述用户意图相对应的功能的任务图标,其中与所述任务图标的交互使得所述图形用户界面的一部分被任务图标用户界面替换,所述任务图标用户界面提供对与所述用户意图相对应的功能的访问;
确定还没有与所述任务图标交互;
接收与所述虚拟键盘的输入法编辑器(IME)部分的用户交互的指示;以及
响应于接收到所述指示,在所述虚拟键盘中呈现搜索界面,其中所述搜索界面包括表示不同搜索类别的多个搜索图标,并且其中所述搜索界面包括与对应于所述任务图标的搜索图标相关联地被呈现的指示符,所述指示符表示所述任务图标先前被呈现但未被交互。
CN201780037030.1A 2016-06-13 2017-06-08 智能虚拟键盘 Pending CN109313534A (zh)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US15/181,073 US20170357521A1 (en) 2016-06-13 2016-06-13 Virtual keyboard with intent-based, dynamically generated task icons
US15/181,073 2016-06-13
US201662359096P 2016-07-06 2016-07-06
US62/359,096 2016-07-06
US15/362,380 2016-11-28
US15/362,380 US10409488B2 (en) 2016-06-13 2016-11-28 Intelligent virtual keyboards
PCT/US2017/036468 WO2017218275A1 (en) 2016-06-13 2017-06-08 Intelligent virtual keyboards

Publications (1)

Publication Number Publication Date
CN109313534A true CN109313534A (zh) 2019-02-05

Family

ID=59091588

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780037030.1A Pending CN109313534A (zh) 2016-06-13 2017-06-08 智能虚拟键盘

Country Status (4)

Country Link
US (1) US10409488B2 (zh)
EP (1) EP3469477B1 (zh)
CN (1) CN109313534A (zh)
WO (1) WO2017218275A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112286340A (zh) * 2019-07-23 2021-01-29 腾讯科技(深圳)有限公司 用户内容的交互方法、系统和装置
CN112905079A (zh) * 2019-11-19 2021-06-04 北京搜狗科技发展有限公司 一种数据处理方法、装置和介质
CN113158692A (zh) * 2021-04-22 2021-07-23 中国平安财产保险股份有限公司 基于语义识别的多意图处理方法、系统、设备及存储介质

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10621581B2 (en) 2016-06-11 2020-04-14 Apple Inc. User interface for transactions
US10614607B2 (en) * 2016-06-12 2020-04-07 Apple Inc. Playback of handwritten message
WO2018176365A1 (en) * 2017-03-31 2018-10-04 Orange Method for displaying a virtual keyboard on a mobile terminal screen
US10606343B2 (en) * 2017-04-01 2020-03-31 Intel Corporation Keyboard for virtual reality
US11221744B2 (en) 2017-05-16 2022-01-11 Apple Inc. User interfaces for peer-to-peer transfers
KR102495947B1 (ko) 2017-05-16 2023-02-06 애플 인크. 피어 투 피어 전송들을 위한 사용자 인터페이스들
US10788900B1 (en) * 2017-06-29 2020-09-29 Snap Inc. Pictorial symbol prediction
CN107300986B (zh) * 2017-06-30 2022-01-18 联想(北京)有限公司 输入法切换方法及装置
US11122094B2 (en) 2017-07-28 2021-09-14 Snap Inc. Software application manager for messaging applications
US11138255B2 (en) * 2017-09-27 2021-10-05 Facebook, Inc. Providing combinations of pre-generated and dynamic media effects to create customized media communications
CN108241515B (zh) * 2018-01-10 2021-06-29 青岛海信移动通信技术股份有限公司 应用快捷方式建立方法及终端
US10453560B2 (en) 2018-01-30 2019-10-22 Perkinelmer Informatics, Inc. Context-aware virtual keyboard for chemical structure drawing applications
US11681432B2 (en) * 2018-05-10 2023-06-20 Honor Device Co., Ltd. Method and terminal for displaying input method virtual keyboard
CN112219203A (zh) 2018-06-03 2021-01-12 苹果公司 用于转账账户的用户界面
US11103795B1 (en) 2018-10-31 2021-08-31 Snap Inc. Game drawer
US11328352B2 (en) 2019-03-24 2022-05-10 Apple Inc. User interfaces for managing an account
KR20200113349A (ko) * 2019-03-25 2020-10-07 삼성전자주식회사 전자 장치 및 멀티 태스킹 지원 방법
US20220291789A1 (en) * 2019-07-11 2022-09-15 Google Llc System and Method for Providing an Artificial Intelligence Control Surface for a User of a Computing Device
US10860209B1 (en) * 2019-12-12 2020-12-08 Dell Products L.P. Selection and configuration of one-hand keyboards for touch screen devices
CN111475132A (zh) * 2020-04-07 2020-07-31 捷开通讯(深圳)有限公司 虚拟或增强现实文字输入方法、系统及存储介质
US11356392B2 (en) * 2020-06-10 2022-06-07 Snap Inc. Messaging system including an external-resource dock and drawer
US11983702B2 (en) 2021-02-01 2024-05-14 Apple Inc. Displaying a representation of a card with a layered structure
US11726656B2 (en) 2021-02-04 2023-08-15 Keys, Inc. Intelligent keyboard
US11921992B2 (en) 2021-05-14 2024-03-05 Apple Inc. User interfaces related to time
US11784956B2 (en) 2021-09-20 2023-10-10 Apple Inc. Requests to add assets to an asset account

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102197702A (zh) * 2008-10-23 2011-09-21 微软公司 移动通信设备的可替代输入
CN102439544A (zh) * 2009-03-20 2012-05-02 谷歌股份有限公司 与输入法编辑器计算设备的交互
US20140223372A1 (en) * 2013-02-04 2014-08-07 602531 British Columbia Ltd. Method, system, and apparatus for executing an action related to user selection
CN104375773A (zh) * 2013-08-14 2015-02-25 宏达国际电子股份有限公司 手持式电子装置及其输入操作方法

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7409423B2 (en) 2001-06-28 2008-08-05 Horvitz Eric J Methods for and applications of learning and inferring the periods of time until people are available or unavailable for different forms of communication, collaboration, and information access
US20060069686A1 (en) 2004-09-30 2006-03-30 Siemens Information And Communication Networks, Inc. System and method for predicting availability
BRPI0615536A2 (pt) * 2005-07-22 2011-05-17 Matt Pallakoff dispositivo manual que tem um mostrador da tela de toque com capacidade de implementar uma interface do usuário de teclado virtual para inserir toques no teclado por um usuário, sistema de interface do usuário (ui) baseada em tela de toque em um dispositivo manual, sistema de interface do usuário (ui) baseado em tela de toque otimizado pelo polegar em um dispositivo manual, sistema de interface do usuário (ui) virtual acionado a polegar para a busca de informações, sistema de interface do usuário virtual acionado pelo polegar, para selecionar itens selecionáveis virtuais em uma página da web exibida em um mostrador de tela de toque de um dispositivo portátil, dispositivo manual que tem um mostrador de tela de toque com capacidade de executar um teclado virtual para inserir toques no teclado por um usuário, método para implementar a seleção de entrda por um usúario dos itens exibidos em um tela de toque de um dispositivo manual e método para que uma interface virtual do usuário do teclado interaja com páginas da web em um dispositivo de visualização manual que tem um mostrador de tela de toque
US7623643B2 (en) 2005-07-26 2009-11-24 Microsoft Corporation Augmenting a call with context
IL173011A (en) 2006-01-08 2012-01-31 Picscout Ltd Image insertion for cellular text messaging
US8059101B2 (en) * 2007-06-22 2011-11-15 Apple Inc. Swipe gestures for touch screen keyboards
US8745018B1 (en) * 2008-07-10 2014-06-03 Google Inc. Search application and web browser interaction
US9015616B2 (en) * 2008-10-22 2015-04-21 Google Inc. Search initiation
US8584031B2 (en) * 2008-11-19 2013-11-12 Apple Inc. Portable touch screen device, method, and graphical user interface for using emoji characters
US8589374B2 (en) * 2009-03-16 2013-11-19 Apple Inc. Multifunction device with integrated search and application selection
US8704761B2 (en) * 2009-03-19 2014-04-22 Google Inc. Input method editor
EP4318463A3 (en) * 2009-12-23 2024-02-28 Google LLC Multi-modal input on an electronic device
US20110285656A1 (en) * 2010-05-19 2011-11-24 Google Inc. Sliding Motion To Change Computer Keys
US20110289025A1 (en) * 2010-05-19 2011-11-24 Microsoft Corporation Learning user intent from rule-based training data
US20120084248A1 (en) * 2010-09-30 2012-04-05 Microsoft Corporation Providing suggestions based on user intent
US8881057B2 (en) 2010-11-09 2014-11-04 Blackberry Limited Methods and apparatus to display mobile device contexts
CN103649876B (zh) 2010-11-20 2017-02-15 纽昂斯通信有限公司 使用上下文键盘在计算设备上执行操作
US8898163B2 (en) * 2011-02-11 2014-11-25 International Business Machines Corporation Real-time information mining
KR101781673B1 (ko) * 2011-04-28 2017-09-25 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 대안 시장 검색 결과 토글 기법
US9628296B2 (en) * 2011-12-28 2017-04-18 Evernote Corporation Fast mobile mail with context indicators
US20160034178A1 (en) * 2012-01-05 2016-02-04 Lg Cns Co., Ltd. Virtual keyboard
US20140115070A1 (en) * 2012-10-22 2014-04-24 Nokia Corporation Apparatus and associated methods
US20140164476A1 (en) * 2012-12-06 2014-06-12 At&T Intellectual Property I, Lp Apparatus and method for providing a virtual assistant
US9305114B2 (en) * 2012-12-17 2016-04-05 Microsoft Technology Licensing, Llc Building long search queries
US20140189572A1 (en) 2012-12-31 2014-07-03 Motorola Mobility Llc Ranking and Display of Results from Applications and Services with Integrated Feedback
US20170109780A1 (en) * 2013-01-03 2017-04-20 Oversignal, Llc Systems, apparatuses and methods for using virtual keyboards
WO2014117241A1 (en) 2013-02-04 2014-08-07 602531 British Columbia Ltd. Data retrieval by way of context-sensitive icons
US20140280603A1 (en) * 2013-03-14 2014-09-18 Endemic Mobile Inc. User attention and activity in chat systems
US9875494B2 (en) * 2013-04-16 2018-01-23 Sri International Using intents to analyze and personalize a user's dialog experience with a virtual personal assistant
US9576074B2 (en) * 2013-06-20 2017-02-21 Microsoft Technology Licensing, Llc Intent-aware keyboard
US20150100537A1 (en) * 2013-10-03 2015-04-09 Microsoft Corporation Emoji for Text Predictions
US10867118B2 (en) * 2015-01-28 2020-12-15 Box, Inc. Method and system for implementing a collaboration platform for structured objects in a document
US10353542B2 (en) * 2015-04-02 2019-07-16 Facebook, Inc. Techniques for context sensitive illustrated graphical user interface elements
US10970646B2 (en) * 2015-10-01 2021-04-06 Google Llc Action suggestions for user-selected content
US10140017B2 (en) * 2016-04-20 2018-11-27 Google Llc Graphical keyboard application with integrated search
US10305828B2 (en) * 2016-04-20 2019-05-28 Google Llc Search query predictions by a keyboard
US10671813B2 (en) * 2016-05-27 2020-06-02 Nuance Communications, Inc. Performing actions based on determined intent of messages
US20170357521A1 (en) 2016-06-13 2017-12-14 Microsoft Technology Licensing, Llc Virtual keyboard with intent-based, dynamically generated task icons

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102197702A (zh) * 2008-10-23 2011-09-21 微软公司 移动通信设备的可替代输入
CN102439544A (zh) * 2009-03-20 2012-05-02 谷歌股份有限公司 与输入法编辑器计算设备的交互
US20140223372A1 (en) * 2013-02-04 2014-08-07 602531 British Columbia Ltd. Method, system, and apparatus for executing an action related to user selection
CN104375773A (zh) * 2013-08-14 2015-02-25 宏达国际电子股份有限公司 手持式电子装置及其输入操作方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112286340A (zh) * 2019-07-23 2021-01-29 腾讯科技(深圳)有限公司 用户内容的交互方法、系统和装置
CN112286340B (zh) * 2019-07-23 2023-05-12 腾讯科技(深圳)有限公司 用户内容的交互方法、系统和装置
CN112905079A (zh) * 2019-11-19 2021-06-04 北京搜狗科技发展有限公司 一种数据处理方法、装置和介质
CN113158692A (zh) * 2021-04-22 2021-07-23 中国平安财产保险股份有限公司 基于语义识别的多意图处理方法、系统、设备及存储介质
CN113158692B (zh) * 2021-04-22 2023-09-12 中国平安财产保险股份有限公司 基于语义识别的多意图处理方法、系统、设备及存储介质

Also Published As

Publication number Publication date
EP3469477B1 (en) 2020-03-25
US20170357443A1 (en) 2017-12-14
US10409488B2 (en) 2019-09-10
EP3469477A1 (en) 2019-04-17
WO2017218275A1 (en) 2017-12-21

Similar Documents

Publication Publication Date Title
CN109313534A (zh) 智能虚拟键盘
CN109313536A (zh) 基于意图动态生成的任务图标的虚拟键盘
US11303590B2 (en) Suggested responses based on message stickers
US11099867B2 (en) Virtual assistant focused user interfaces
US20230385662A1 (en) Automatic actions based on contextual replies
US20210173548A1 (en) Virtual assistant acquisitions and training
US10373616B2 (en) Interaction with a portion of a content item through a virtual assistant
CN108701138B (zh) 确定与文本相关联的图形元素
York et al. Human–computer interaction issues for mobile computing in a variable work context
US20110193795A1 (en) Haptic search feature for touch screens
CN105474157A (zh) 移动设备界面
CN103064512A (zh) 用虚拟数据使静态打印内容成为动态
CN110753911A (zh) 应用之间的自动情境传递
Miller The practitioner's guide to user experience design
Centers Take Control of iOS 17 and iPadOS 17
Παπαδοπούλου Information in cross-media: from desktop to mobile: the case of marine traffic: designing a website for mobile phones
KR20130046454A (ko) 온라인 검색 시스템 및 그 방법

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