CN105122185A - 使用过去交互数据的文本建议输出 - Google Patents

使用过去交互数据的文本建议输出 Download PDF

Info

Publication number
CN105122185A
CN105122185A CN201480021906.XA CN201480021906A CN105122185A CN 105122185 A CN105122185 A CN 105122185A CN 201480021906 A CN201480021906 A CN 201480021906A CN 105122185 A CN105122185 A CN 105122185A
Authority
CN
China
Prior art keywords
candidate character
character strings
district
textual advice
past
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
CN201480021906.XA
Other languages
English (en)
Inventor
翟树民
菲利普·奎因
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.)
Google LLC
Original Assignee
Google 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
Application filed by Google LLC filed Critical Google LLC
Publication of CN105122185A publication Critical patent/CN105122185A/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
    • 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/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • G06F3/0237Character input methods using prediction or retrieval 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/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/274Converting codes to words; Guess-ahead of partial word inputs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates

Abstract

在一个示例中,一种设备包括至少一个处理器和可由所述至少一个处理器操作的至少一个模块,用来输出包括图形键盘和一个或多个文本建议区的图形用户界面以显示,以及至少部分地基于手势输入的指示,选择图形键盘的至少一个键。至少一个模块进一步可由至少一个处理器操作来确定多个候选字符串,确定包括当至少一个候选字符串先前被显示在一个或多个文本建议区中的至少一个中时对应于该至少一个候选字符串的过去用户输入的表示的过去交互数据,以及输出至少一个候选字符串以在一个或多个文本建议区的一个中显示。

Description

使用过去交互数据的文本建议输出
背景技术
一些计算设备(例如,移动电话、平板电脑)可以将图形键盘提供为用于编写文本的图形用户界面的一部分(例如,使用存在敏感输入设备和/或显示器,诸如触摸屏)。图形键盘可以使得计算设备的用户能够录入文本(例如,电子邮件、文本消息或文档)。例如,计算设备的显示设备可以输出使得用户能够通过选择(例如,通过敲击)图形键盘的一个或多个键来录入数据的图形(或“软”)键盘。
一些计算设备可以基于使用图形键盘录入的数据,确定一个或多个候选字符串(例如,包括在词典,诸如字典中的候选词)。在一些示例中,计算设备可以输出一个或多个候选字符串以在一个或多个文本建议区内显示,该文本建议区使得用户能够通过指示(例如,敲击)包括所需字符串的文本建议区来选择字符串。在某些示例中,计算设备可以基于候选字符串表示包括在词典(例如,字典,诸如英语字典)中的词的概率,选择候选字符串中的一个或多个,以在一个或多个文本建议区内显示。
然而,这些技术可以具有某些缺点。例如,这些技术可以为用户呈现尽管与包括在词典中的词相关联,但不可能由用户选择的候选字符串。因此,这些技术可以不为用户呈现最可能被选择(例如自动完成)的那些文本建议,由此降低用户将利用文本建议区的可能性并且可能降低了用户能与计算设备交互来录入文本的速度。
发明内容
在一个示例中,一种方法包括由计算设备输出包括图形键盘和一个或多个文本建议区的图形用户界面以显示;由计算设备接收在存在敏感输入设备处检测到的手势输入的指示;以及由计算设备并且至少部分地基于手势输入的指示,选择图形键盘的至少一个键。该方法进一步包括由计算设备确定包括当所述多个候选字符串的至少一个候选字符串先前被显示在一个或多个文本建议区的至少一个中时对应于至少一个候选字符串的过去用户输入的表示的过去交互数据;以及由计算设备并且至少部分地基于过去交互数据,输出至少一个候选字符串以在一个或多个文本建议区中的一个中显示。
在一个示例中,一种设备包括至少一个处理器和可由至少一个处理器操作的至少一个模块,用来输出包括图形键盘和一个或多个文本建议区的图形用户界面以显示,接收在存在敏感输入设备处检测到的手势输入的指示,以及至少部分地基于手势输入的指示,选择图形键盘的至少一个键。至少一个模块进一步可由至少一个处理器操作来至少部分地基于与至少一个键相关联的至少一个字符,确定多个候选字符串,确定包括当所述多个候选字符串的至少一个候选字符串先前被显示在一个或多个文本建议区的至少一个中时对应于至少一个候选字符串的过去用户输入的表示的过去交互数据,以及至少部分地基于过去交互数据,输出至少一个候选字符串以在一个或多个文本建议区中的一个中显示。
在编码有指令的计算机可读存储介质中,所述指令当指令被执行时,使计算设备的至少一个处理器输出包括图形键盘和一个或多个文本建议区的图形用户界面以显示;接收在存在敏感输入设备处检测到的手势输入的指示;并且至少部分地基于手势输入的指示,选择图形键盘的至少一个键。计算机可读存储介质被进一步编码有指令,所述指令当被执行时,使计算设备的至少一个处理器至少部分地基于与至少一个键相关联的至少一个字符,确定多个候选字符串;确定包括当所述多个候选字符串的至少一个候选字符串先前被显示在一个或多个文本建议区的至少一个中时对应于该至少一个候选字符串的过去用户输入的表示的过去交互数据;以及至少部分地基于过去交互数据,输出至少一个候选字符串以在一个或多个文本建议区中的一个中显示。
在附图和下述描述中阐述了本公开的一个或多个示例的细节。从说明书和附图以及权利要求,其他特征、目的和优点将显而易见的。
附图说明
图1是根据本公开的一个或多个方面,图示可以用来输出至少一个候选字符串以在图形用户界面的文本建议区中显示的示例计算设备的框图。
图2是根据本公开的一个或多个方面,图示图1所示的计算设备的一个示例的进一步细节的框图。
图3是根据本公开的一个或多个方面,图示输出图形内容以在远程设备处显示的示例计算设备的框图。
图4是根据本公开的一个或多个方面,图示可以用来输出至少一个候选字符串以在图形用户界面的文本建议区内显示的计算设备的示例操作的流程图。
图5是根据本公开的一个或多个方面,图示可以用来输出至少一个候选字符串以在图形用户界面的文本建议区内显示的计算设备的示例性操作的流程图。
具体实施方式
通常,本公开针对用于至少部分地基于过去用户交互数据,输出至少一个候选字符串,以在显示器的一个或多个文本建议区内显示的技术。过去交互数据能包括至少一个候选字符串被显示在显示器的一个或多个文本建议区的至少一个内时的先前时间,对应于至少一个候选字符串的在前用户输入的表示。例如,计算设备可以输出包括图形键盘和一个或多个文本建议区(例如,一个、两个、三个、五个或更多文本建议区)的图形用户界面以(例如,在显示设备,诸如存在敏感显示器处)显示。响应于接收到在存在敏感输入设备(例如,存在敏感显示器)处检测的用户输入的指示,计算设备可以选择图形键盘的至少一个键。计算设备可以至少部分地基于与至少一个键相关联的至少一个字符,确定多个候选字符串(例如,包括在词典,诸如字典中的候选词)。这些技术可以提高用户可以使用所显示的文本建议区录入文本的便利。
不是仅基于候选字符串的每一个的词典概率(例如,候选字符串表示包括在词典中的词的概率),输出一个或多个候选字符串以在文本建议区内显示(例如,自动完成),而是实现本公开的技术的计算设备可以至少部分地基于过去交互数据,输出一个或多个候选字符串以在文本建议区中的一个或多个内显示。过去交互数据可以包括在候选字符串先前被显示在显示器的文本建议区内时选择该候选字符串的过去用户输入、当候选字符串先前被显示在文本建议区内时选择该候选字符串的在前缺少的用户输入(例如,在用户继续提供当候选字符串被显示在文本建议区内时选择图形键盘的键的手势输入的实例中),以及当候选字符串先前被显示在文本建议区内时拒绝该候选字符串的过去用户输入(例如,选择在不同文本建议区内显示的不同候选字符串)的表示中的一个或多个。
计算设备可以至少部分地基于过去用户决定的表示(例如,过去用户输入和/或用户不提供用户输入的决定),将至少一个词典概率加权因子应用于候选字符串的词典概率。例如,计算设备可以至少部分地基于当候选字符串先前被显示在文本建议区内时选择该候选字符串的过去用户决定,增加候选字符串的词典概率。作为另一示例,计算设备可以至少部分地基于当候选字符串先前被显示在文本建议区内时忽略该候选字符串的过去用户决定,减小候选字符串的词典概率。作为又一示例,计算设备可以至少部分地基于当候选字符串先前被显示在文本建议区内时拒绝该候选字符串的过去用户决定(例如,选择不同候选字符串),减小候选字符串的词典概率。在某些示例中,计算设备可以至少部分地基于忽略候选字符串的过去用户决定,使候选字符串的词典概率减小第一值,以及可以至少部分地基于拒绝候选字符串的过去用户决定,使候选字符串的词典概率减小比第一值的幅值更大的第二值。
计算设备可以至少部分地基于多个候选字符串的加权词典概率,诸如通过基于加权词典概率,确定多个候选字符串的排名顺序,输出一个或多个候选字符串以在一个或多个文本建议区内显示。以这种方式,实施本公开的技术的计算设备可以输出最可能由用户选择(例如自动完成)的那些候选字符串以在文本建议区内显示。因此,这些技术可以增加用户可以利用文本建议界面的可能性,由此可能增加用户可以使用该计算设备录入文本的速率。
图1是根据本公开的一个或多个方面,图示可以用来输出至少一个候选字符串以在图形用户界面的文本建议区中显示的示例计算设备2的框图。在一些示例中,计算设备2可以与通过向计算设备提供各种用户输入而可以与计算设备2交互的用户相关联。计算设备2的示例可以包括但不限于便携式或移动设备,诸如移动电话(包括智能电话)、膝上型计算机、台式计算机、平板电脑、智能电视平台、个人数字助理(PDA)、服务器、大型机等等。在一些示例中,计算设备2可以包括用户界面(UI)设备4、UI模块6和文本建议模块8。实施本公开的技术的计算设备2的其他示例可以包括图1中未示出的另外的组件。
计算设备2可以包括UI设备4。在一些示例中,UI设备4被配置成接收触觉、音频或视觉输入。UI设备4的示例可以包括触摸敏感和/或存在敏感屏幕、鼠标、键盘、语音响应系统、麦克风、摄像机或用于接收输入的其他设备。例如,UI设备4可以包括可以检测执行一个或多个手势的输入单元(例如手势、笔、铁笔等等)的存在的存在敏感输入设备和/或显示器。UI设备4可以输出诸如图形用户界面(GUI)10A-10B(在此统称为“GUI10”)的内容以显示。GUI10可以包括文本显示区14、图形键盘12、文本建议区16A-16C(在此统称为“文本建议区16”)或其他显示区。
如图1所示,计算设备2可以包括UI模块6。UI模块6可以执行接收输入,诸如用户输入,并且将这些输入的指示发送到与计算设备2相关联的其他组件,诸如文本建议模块8的一个或多个功能。UI模块6也可以从与计算设备2相关联的组件,诸如文本建议模块8接收数据。使用该数据,UI模块6可以使与计算设备2相关联的组件,诸如UI设备4基于该数据提供输出。例如,UI模块6可以从文本建议模块8接收数据,并且可以使UI设备4基于该数据显示GUI10,诸如通过使UI设备4根据在此描述的技术,在文本建议区16中的一个或多个中显示一个或多个候选字符串。在一些示例中,UI模块6可以包括与可由计算设备2执行的一个或多个应用,诸如字处理应用、文本消息应用、电子表格、Web浏览器、服务器应用或其他应用中的一个或多个相关联的功能性。在某些示例中,UI模块6可以被实施为可由计算设备2的一个或多个处理器执行的应用,诸如可下载或预安装应用或“app”。在一些示例中,UI模块6可以被实施计算设备2的硬件单元的一部分。作为另一示例,UI模块6可以被实施为计算设备2的操作系统的一部分。
如图1所示,GUI10可以分别是由UI模块6生成来使得用户能够与计算设备2交互的界面。GUI10可以分别包括图形内容。图形内容通常可以是图形用户界面的任何可视可显示图形对象。图形内容的示例可以包括文本、图像、一组运动图像、超链接、动画、视频、字符集的字符等等。如图1所示,图形内容可以包括图形键盘12、文本显示区14、文本建议区16以及在文本建议区16中显示的一个或多个候选字符串。
图形键盘12可以包括多个键,诸如“T”键22和“H”键24。在一些示例中,包括在图形键盘12中的多个键的每一个表示单一字符。在其他示例中,包括在图形键盘12中的多个键中的一个或多个表示基于多个模式选择的一组字符。图形键盘12可以由UI设备4显示为顺序可选择键集。键可以表示来自字符集的单一字符(例如,英文字母表的字母)或可以表示字符的组合。图形键盘12的一个示例可以包括传统的“QWERTY”键盘布局。其他示例可以包含用于不同语言的字符、不同字符集或不同字符布局。如图1的示例中所示,图形键盘12包括用于提供字符键的英语以及提供其他功能性的各种键(例如,“123”键)的传统“QWERTY”键盘布局的版本。
在一些示例中,文本显示区14可以包括包含在例如文本消息、文档、电子邮件消息、Web浏览器等等中的字符或其他图形内容。例如,文本显示区14可以包括经由在UI设备4处执行的手势,由用户选择的字符或其他图形内容。在一些示例中,文本建议区16可以分别显示候选字符串,诸如包括在词典(例如,英语)中的候选词。如图1的示例中所示,文本建议区16可以是不同于文本显示区14的GUI10的区。在其他示例中,文本建议区16可以是GUI10的单一区,并且可以包括与文本显示区14相同的GUI10的一个或多个区。类似地,文本建议区16虽然在图1的示例中被图示为的单独区,但在一些示例中,其可以是GUI10的单一区。
UI模块6可以使UI设备4显示图形键盘12并且检测手势输入,诸如在显示图形键盘12的一个或多个键的UI设备4的一个或多个位置和显示文本建议区16的UI设备4的一个或多个位置处检测到的手势输入。另外,文本建议模块8可以至少部分地基于与图形键盘12的所选键相关联的一个或多个字符,确定一个或多个候选字符串。根据在此所述的技术,文本建议模块8可以使UI设备4在文本建议区16中的一个或多个中显示候选字符串中一个或多个。
根据本公开的技术,计算设备2可以至少部分地基于过去交互数据,通过输出一个或多个候选字符串以在文本建议区中显示,提高用户使用文本建议区(例如,文本建议区16)录入文本(例如,在文本显示区14内)的便利,该过去交互数据包括当候选字符串先前被显示在一个或多个文本建议区的至少一个中时对应于该候选字符串的过去用户决定的表示。例如,使用本公开的技术,计算设备可以确定多个候选字符串的至少一个的加权词典概率。计算设备可以至少部分地基于包括用户决定的表示的过去交互数据,确定加权词典概率,该表示诸如当候选字符串先前被显示在文本建议区内时选择该候选字符串的用户决定、当候选字符串先前被显示在文本建议区内时忽略该候选字符串的用户决定或当候选字符串先前被显示在文本建议区内时拒绝该候选字符串的用户决定的表示。同样地,在此所述的技术可以使得计算设备能够输出候选字符串,以在更可能被选择,诸如自动完成的一个或多个文本建议区内显示。以这种方式,这些技术可以提高用户可以与计算设备交互来录入文本的速率,由此可能增加计算设备的可用性。
如图1所示,UI设备4可以输出包括图形键盘12的GUI10以在UI设备4处显示。UI设备4(例如,存在敏感和/或触摸敏感输入设备和/或显示器)可以接收在图形键盘12的位置18和20处检测到的手势输入的指示。响应于接收到在位置18处检测到的手势输入的指示(例如,在位置18处检测到的触摸输入的指示),UI模块6可以将“T”键22选择为图形键盘12的第一被选键,诸如通过确定位置18对应于显示“T”键22的图形键盘12的位置。类似地,响应于接收到在位置20处检测到的手势输入的指示(例如,在位置20处检测到的触摸输入的指示),UI模块6可以将“H”键24选择为图形键盘12的第二被选键,诸如通过确定位置20对应于显示“H”键24的图形键盘12的位置。尽管关于在位置18和20处检测到的多个手势输入来选择“T”键22和“H”键24而在图1中所图示,本公开的方面不限于此。例如,在一些示例中,诸如当图形键盘12包括手势键盘的功能性时,响应于接收到从位置18至位置20检测到的单一连续手势输入的指示,UI模块6可以使得UI设备4从图形键盘12的位置18和位置20检测输入单元(例如,手指、笔、铁笔等等)的存在,来选择“T”键22和“H”键24。
继续上述示例,响应于将“T”键22和“H”键24选择为图形键盘12的被选键,文本建议模块8可以确定多个候选字符串。每一相应候选字符串可以包括包含与被选键相关联的字符的一组预测字符。例如,在图1的示例中,文本建议模块8可以确定分别对应于“T”键22和“H”键24的字符“T”和“H”是其前缀的多个候选字符串。如图1所示,文本建议模块8可以确定多个候选字符串,包括字符串26(即,包括多个字符的字符串“this”)、字符串28(即,包括多个字符的字符串“the”)、字符串30(即,包括多个字符的字符串“that”)以及字符串32(即,包括多个字符的字符串“than”)。尽管关于四个候选字符串26、28、30和32图示,但文本建议模块8可以确定其他数目的候选字符串,诸如1个候选字符串、2个候选字符串、5个候选字符串、50个候选字符串或其他数目的候选字符串。
文本建议模块8可以确定多个候选字符串的排名顺序。如图1所示,文本建议模块8可以确定多个候选字符串26、28、30和32的排名顺序34。文本建议模块8可以至少部分地基于过去交互数据,确定排名顺序34,该过去交互数据包括当来自多个候选字符串中的至少一个候选字符串先前被显示在一个或多个文本建议区的至少一个中时对应于该至少一个候选字符串的过去用户决定的表示。例如,文本建议模块8可以至少部分地基于来自多个候选字符串中的至少一个候选字符串的加权词典概率,确定排名顺序34。文本建议模块8可以至少部分地基于包括对应于候选字符串的过去用户决定的表示的过去交互数据,确定与候选字符串相关联的加权词典概率。
例如,如图1所示,文本建议模块8可以确定对应于字符串26的词典概率44、对应于字符串28的词典概率46、对应于字符串30的词典概率48,以及对应于字符串32的词典概率50。文本建议模块8可以诸如通过将来自多个候选字符串中的每一相应的候选字符串与语言模型比较来确定每一相应候选字符串的概率,诸如每一相应候选字符串表示包括在词典(例如,英语)中的词的概率或每一相应候选字符串表示多词短语的下一词的概率,确定词典概率(例如,词典概率44、46、48和50)。例如,文本建议模块8可以至少部分地基于候选字符串26、28、30和32中的的每一个分别表示如在GUI10A的文本建议区14中所示的多词短语“Bettertoselect”的下一词的概率,确定词典概率44、46、48和50。
如图1进一步所示,文本建议模块8可以确定与字符串26相关联的词典概率加权因子52、与字符串28相关联的词典概率加权因子54、与字符串30相关联的词典概率加权因子56以及与字符串32相关联的词典概率加权因子58。文本建议模块8可以至少部分地基于包括对应于字符串26、28、30和32的过去用户决定的表示的过去交互数据,确定词典概率加权因子52、54、56和58。
例如,响应于接收到当字符串被显示在文本建议区(例如,文本建议区16中的一个或多个)内时选择该字符串的手势输入的指示,文本建议模块8可以增加与字符串相关联的词典概率加权因子。作为另一示例,响应于接收到当字符串被显示在文本建议区内时选择图形键盘12的一个或多个键的手势输入的指示(即,忽略字符串的指示,诸如通过继续提供选择图形键盘12的键的手势输入),文本建议模块8可以减小与该候选字符串相关联的词典概率加权因子。作为另一示例,响应于接收到选择不同于显示候选字符串的文本建议区的文本建议区的手势输入的指示(即,拒绝候选字符串的指示),文本建议模块8可以减小与该候选字符串相关联的词典概率加权因子。
在一些示例中,响应于接收到当候选字符串被显示在文本建议区内时忽略该候选字符串的手势输入的指示,文本建议模块8可以使与候选字符串相关联的词典概率加权因子减小第一值,并且响应于接收到当候选字符串被显示在文本建议区内时拒绝该候选字符串的手势输入的指示,文本建议模块8可以使与候选字符串相关联的词典概率加权因子减小第二不同值。例如,包括过去用户输入(例如过去用户决定)的表示的过去交互数据可以指示缺少或不存在与该特定候选字符串有关的输入。第二值(例如,响应于接收到拒绝候选字符串的指示,文本建议模块8使词典概率加权因子减小的值)的幅值可以大于第一值(例如,响应于接收到忽略候选字符串的指示,文本建议模块8使词典概率加权因子减小的值)的幅值。
例如,与响应于忽略候选字符串的用户决定,词典概率加权因子减小相比,响应于拒绝候选字符串的用户决定,文本建议模块8可以使词典概率加权因子减小因子1、2、3等等。作为一个非限定示例,响应于拒绝候选字符串的用户决定,文本建议模块8可以使与候选字符串相关联的词典概率加权因子减小一值,诸如5%。继续该示例,响应于忽略候选字符串的用户决定,文本建议模块8可以使与该候选字符串相关联的词典概率加权因子减小更小值,诸如1%。因此,文本建议模块8可以确定一个或多个词典概率加权因子,每一词典概率加权因子与候选字符串相关联,该词典概率加权因子包括当相应候选字符串先前被显示在一个或多个文本建议区中时对应于相应候选字符串的过去用户决定的表示。
如图1所示,文本建议模块8可以确定与字符串26相关联的加权词典概率60、与字符串28相关联的加权词典概率62、与字符串30相关联的加权词典概率64和与字符串32相关联的加权词典概率66。文本建议模块8可以将与候选字符串相关联的词典概率加权因子应用于与候选字符串相关联的词典概率来确定与候选字符串相关联的加权词典概率,诸如通过将词典概率乘以词典概率加权因子来确定加权词典概率。例如,文本建议模块8可以将词典概率加权因子52应用于词典概率44来确定加权词典概率60,诸如通过将词典概率44乘以词典概率加权因子52来确定加权词典概率60。类似地,文本建议模块8可以将词典概率加权因子54应用于词典概率46来确定加权词典概率62、将词典概率加权因子56应用于词典概率48来确定加权词典概率64,以及将词典概率加权因子58应用于词典概率50来确定加权词典概率66。
如所示,文本建议模块8可以将多个候选字符串的每一个与相应排名相关联,使得排名顺序34表示根据每一相应候选字符串的加权词典概率的多个候选字符串的顺序排列。例如,在图1的示例中,排名顺序34包括第一排名36、第二排名38、第三排名40和第四排名42。在该示例中,排名36、38、40和42分别对应于相关联的候选字符串表示包括在文本显示区14中的多个词短语的下一词的加权词典概率。此外,在图1的示例中,按加权词典概率的降序排列排名36、38、40和42,使得排名36与对应于候选字符串表示包括在文本显示区14中的多个词短语的下一词的最高相对加权词典概率的候选字符串相关联,以及排名42与对应于候选字符串表示包括在文本显示区14中的多个词短语的下一词的最低相对加权词典概率的候选字符串相关联。
在其他示例中,文本建议模块8可以确定排名顺序34,使得排名36、38、40和42按概率的升序排列。类似地,在一些示例中,诸如当多个候选字符串包括4个以上候选字符串或少于4个候选字符串时,文本建议模块8可以将排名顺序34确定为包括4个以上排名或少于4个排名。在某些示例中,文本建议模块8可以将排名顺序34确定为包括等于包括在多个候选字符串中的候选字符串的数目的多个排名,使得多个候选字符串的每一个与排名顺序34内的排名相关联。在一些示例中,包括在排名顺序(例如,排名顺序34)内的候选字符串的排名在包括在候选字符串的列表内的候选字符串的顺序方面是隐含的,不一定需要与候选字符串相关联地存储实际排名值。
此外,文本建议模块8可以将文本建议区16A-16C的每一个与对应于在相应文本建议区16内显示的候选字符串的概率的相应排名相关联。以这种方式,文本建议模块8可以确定文本建议区16的排名顺序,使得文本建议区16的每一个与对应于所关联的候选字符串的相应排名(例如,在与候选字符串相关联的数据结构中存储的排名,与文本建议区16的排名的顺序或基数对应的多个候选字符串的顺序或基数)相关联。例如,在图1的示例中,文本建议模块8确定文本建议区16的排名顺序,使得文本建议区16A对应于最高概率候选字符串、文本建议区16B对应于第二最高概率候选字符串,以及文本建议区16C对应于第三最高概率候选字符串。在其他示例中,文本建议模块8可以确定文本建议区16的不同排名顺序,诸如将文本建议区16B与最高概率候选字符串相关联的排名顺序。通常,文本建议模块8可以确定文本建议区16的任何排名顺序,使得每个相应文本建议区16对应于将相应文本建议区16与多个候选字符串内的相应排名相关联的不同排名。
根据排名顺序34,文本建议模块8可以使UI设备4输出多个候选字符串26、28、30和32的一个或多个以在文本建议区16内的GUI10A处显示。例如,如图1所示,根据排名顺序34,文本建议模块8可以使UI设备4输出候选字符串26、28、30和32,以在文本建议区16内显示。即,在该示例中,文本建议模块8可以确定候选字符串26与排名36(即,排名顺序34的最高排名)相关联,该排名36匹配与文本建议区16A相关联的排名(即,文本建议区16的排名顺序的最高排名)。作为响应,文本建议模块8可以使UI设备4输出候选字符串26,以在文本建议区16A内显示。类似地,文本建议模块8可以确定候选字符串28与排名38(即,排名顺序34的第二最高排名)相关联,该排名38匹配与文本建议区16B相关联的排名(即,文本建议区16的排名顺序的第二最高排名),并且可以使UI设备4输出候选字符串28,以在文本建议区16B内显示。最后,文本建议模块8可以确定候选字符串30与排名40(即,排名顺序34的第三最高排名)相关联,该排名40匹配与文本建议区16C相关联的排名(即,文本建议区16的排名顺序的第三最高排名),并且可以使UI设备4输出候选字符串30,以在文本建议区16C内显示。以这种方式,根据排名顺序34,文本建议模块8可以使UI设备4输出候选字符串26、28、30和32中的一个或多个(即,包括候选字符串26、28和30的多个候选字符串中的一个或多个),以在文本建议区16内显示。
UI模块6可以接收选择在文本建议区16的一个内显示的候选字符串、在UI设备4的位置处检测到的手势输入的指示。例如,UI模块6可以接收在GUI10A的位置23处检测到的手势输入的指示。作为响应,UI模块6可以诸如通过确定位置23对应于显示文本建议区16A的UI设备4的位置,选择候选字符串26(即,在文本建议区16A内显示的候选字符串)。UI模块6可以使UI设备4输出候选字符串26(即,包括字符“this”的候选字符串),以在文本显示区14内显示。以这种方式,计算设备2可以使计算设备2的用户选择(例如,自动完成)字符串以在文本显示区14内显示,而不要求用户提供选择与在字符串中包括的每一字符相关联的图形键盘12的键的手势输入。
此外,当UI模块6接收到选择图形键盘12的一个或多个键的手势输入的指示(例如,在图形键盘12的位置18和20处检测到的手势输入的指示)时,文本建议模块8可以确定手势输入的上下文,响应于此上下文,文本建议模块8确定多个候选字符串。如图1所示,上下文33可以包括对应于被选“T”键22的字符“T”的表示和对应于被选“H”键24的字符“H”的表示(例如,该示例中的字符串“th”)。作为另一示例,手势输入的上下文可以包括图形键盘12的一个或多个键的表示,诸如“T”键22和“H”键24。如另一示例,手势输入的上下文可以包括位置18的表示和图形键盘12的位置20的表示,诸如对应于UI设备4(例如,存在敏感和/或触摸敏感设备,诸如存在敏感和/或触摸敏感屏幕)的位置18的触摸点的一组像素的矩心和对应于UI设备4的位置20的触摸点的一组像素的矩心。作为又一示例,手势输入的上下文可以包括对应于图形键盘12的位置18的GUI10A的相对位置的表示和对应于图形键盘12的位置20的GUI10A的相对位置的表示,诸如如从GUI10A的预定基准点,诸如GUI10A的左上角确定的位置18和20的每一个的X-Y坐标对。
在一些示例中,上下文可以包括相对于一个或多个被选字符的在前和/或后续词和/或字符。在某些示例中,上下文可以包括诸如用来输入字符的应用的类型和/或版本、用来输入字符的输入字段的类型(例如,文本输入字段、密码字段、日期字段或其他类型字段)、计算设备2接收到势输入的指示的时刻、当计算设备2接收手势输入的指示时的计算设备2的地理位置等等的信息等等。通常,文本建议模块8可以将手势输入的上下文确定为手势输入的任何特性,其响应于手势输入,文本建议模块8确定多个候选字符串,识别、特征化和/或伴随手势输入的手势输入。在一些示例中,上下文可以唯一地识别手势输入。
在某些示例中,当UI模块6接收到选择图形键盘12的一个或多个键的手势输入的指示时,文本建议模块8连续地确定手势输入的上下文。在一些示例中,响应于接收到选择下一词或语句的手势输入,诸如选择图形键盘12的分隔符键(例如,空格键、标点键或其他分隔符键),文本建议模块8启动和/或重启手势输入的上下文的确定。
在一些示例中,文本建议模块8生成将候选字符串与词典概率加权因子相关联的数据结构(例如,过去交互数据结构)。在某些示例中,文本建议模块8生成将候选字符串、词典概率加权因子和手势输入的上下文相关联的数据结构,响应于该手势输入的上下文,文本建议模块8确定候选字符串。例如,在图1的示例中,文本建议模块8可以将候选字符串26的上下文33确定为字符串“th”(即,包括与“T”键22和“H”键24相关联的字符串)。响应于接收到选择在文本建议区16A内显示的候选字符串26、在GUI10A的位置23处检测到的手势输入的指示,文本建议模块8可以生成和/或维护将字符串“th”(例如,该示例中的上下文33)与候选字符串26(即,字符串“this”)和词典加权因子52相关联的数据结构。
文本建议模块8可以类似地维护数据结构来反映当至少一个候选字符串先前被显示在一个或多个文本建议区的至少一个内时对应于该至少一个候选字符串的过去用户决定。例如,如在图1的示例中,文本建议模块8可以维护数据结构来通过至少增加与字符串26相关联的词典概率加权因子52,反映当字符串26被显示在文本建议区16中的一个内时选择字符串26的用户决定,如在下文进一步所述。作为另一示例,文本建议模块8可以维护数据结构来通过至少减小与字符串28相关联的词典概率加权因子54和减小与字符串30相关联的词典概率加权因子56,反映拒绝字符串28和字符串30(例如,选择在不同文本建议区内显示的不同字符串,诸如在该示例中,在文本建议区16A内显示的字符串26)的用户决定。在其他示例中,诸如当UI模块6接收到当多个候选字符串中的一个或多个被显示在一个或多个文本建议区中时选择图形键盘12的键(例如,用户继续提供选择图形键盘的键的手势输入的指示,诸如继续敲击词或短语的字符)的指示时,文本建议模块8可以维护数据结构来通过至少减小与多个候选字符串的一个或多个相关联的一个或多个词典概率加权因子,反映忽略多个候选字符串中的一个或多个的用户决定。以这种方式,文本建议模块8可以生成和/或维护将多个候选字符串(例如,数十、数百、数千或其他数目的候选字符串)的每一个与相关联的词典概率加权因子和/或手势输入的上下文相关联的数据结构,响应于该手势输入的上下文,文本建议模块8确定候选字符串。
根据在此所述的技术,当UI模块6接收到选择图形键盘12的一个或多个键的后续手势输入时,文本建议模块8可以遍历数据结构并且至少部分地基于所接收的手势输入,确定多个候选字符串。文本建议模块8可以至少部分地基于包括当来自多个候选字符串中的至少一个候选字符串先前被显示在一个或多个文本建议区的至少一个内时对应于该至少一个候选字符串的过去用户决定的表示的过去交互数据,确定多个候选字符串的排名顺序。因此,文本建议模块8可以使UI设备4输出当候选字符串被显示在文本建议区中的一个或多个内时最可能被选择的那些候选字符串(例如自动完成)。
例如,如图1所示,UI模块6可以使UI设备4输出GUI10B以(例如,在存在敏感显示器处)显示。在图1的示例中,GUI10B表示在接收到在位置23处检测到的手势输入的指示和选择候选字符串26,以在文本显示区14内显示后,由UI模块6输出以显示的GUI10的示例。即,在图1的示例中,当一起考虑GUI10A和10B时,图示在第一时间,计算设备2输出GUI10A并且接收选择在文本建议区16A中显示的候选字符串26的手势输入的指示,然后在第二不同时间随后输出GUI10B(例如,在计算设备2的随后上电周期期间,在计算设备2的一个或多个处理器上执行的特定应用的单独实例期间,在计算设备2的一个或多个处理器上执行的单独应用的实例期间)的示例。
如图1所示,UI模块6可以使UI设备4输出包括图形键盘12、文本显示区14和文本建议区16的GUI10B。如由相同数字所示,GUI10B的图形键盘12、文本显示区14和文本建议区16可以基本上与GUI10A的图形键盘12、文本显示区14和文本建议区16类似。如所示,UI模块6可以接收在图形键盘12的位置19和21处检测到的手势输入的指示。响应于接收到在位置19处检测到的手势输入的指示,UI模块6可以将“T”键22选择为图形键盘12的第一被选键。类似地,响应于接收到在位置21处检测到的手势输入的指示,UI模块6可以将“H”键24选择为图形键盘12的第二被选键。
响应于将“T”键22和“H”键24选择为图形键盘12的被选键,文本建议模块8可以确定字符串“th”是其前缀的多个候选字符串。例如,如关于GUI10A的示例类似所述,文本建议模块8可以确定包括候选字符串26、28、30和32的多个候选字符串。
文本建议模块8可以确定多个候选字符串26、28、30和32的排名顺序68。例如,文本建议模块8可以将候选字符串26、28、30和32的每一个与语言模型,诸如n-gram语言模型比较来确定与候选字符串26、28、30和32的每一个相关联的词典概率。在该示例中,每一相应词典概率可以指示每一相应候选字符串在文本显示区14内显示的字符串“Better”后的概率。如所示,文本建议模块8可以确定与候选字符串26相关联的词典概率70、与候选字符串32相关联的词典概率72、与候选字符串28相关联的词典概率74和与候选字符串30相关联的词典概率76。
如图1的示例所示,文本建议模块8确定候选字符串32(即,候选字符串“than”与候选字符串表示在文本显示区14内显示的多个词短语的下一词的最高相对词典概率(例如,多个候选字符串26、28、30和32内的最高词典概率)相关联。即,在该示例中,文本建议模块8确定多词短语“Betterthan”与比分别对应于候选字符串26、28和30的多词短语“Betterthis”、“Betterthe”和“Betterthat”的每一个更高的词典概率相关联。类似地,在该示例中,文本建议模块8确定字符串26(即,候选字符串“this”)与多个候选字符串26、28、30和32内的最低相对词典概率相关联。
文本建议模块8可以至少部分地基于过去交互数据,确定排名顺序68,该过去交互数据包括当来自多个候选字符串的至少一个候选字符串先前被显示在一个或多个文本建议区的至少一个中时对应于该至少一个候选字符串的过去用户决定的表示。例如,文本建议模块8可以确定与候选字符串26相关联的词典概率加权因子78、与候选字符串32相关联的词典概率加权因子80、与候选字符串28相关联的词典概率加权因子82和与候选字符串30相关联的词典概率加权因子84。
文本建议模块8可以将每一相应词典概率加权因子应用于与相应候选字符串相关联的词典概率来确定与多个候选字符串相关联的多个加权词典概率。例如,如图1所示,文本建议模块8可以将词典概率加权因子78应用于词典概率70来确定与候选字符串26相关联的加权词典概率86(例如通过将词典概率70乘以词典概率加权因子78来确定加权词典概率86)。类似地,文本建议模块8可以将词典概率加权因子80应用于词典概率72来确定与候选字符串32相关联的加权词典概率88、将词典加权因子82应用于词典概率74来确定与候选字符串28相关联的加权词典概率90,以及将词典概率加权因子84应用于词典概率76来确定与候选字符串30相关联的加权词典概率92。
文本建议模块8可以至少部分地基于与候选字符串26、28、30和32的每一个相关联的相应加权词典概率,确定多个候选字符串26、28、30和32的排名顺序68。例如,如在图1的示例中,文本建议模块8可以确定候选字符串26与多个加权词典概率内的最高相对加权词典概率(即,本示例中的加权词典概率86)相关联。因此,文本建议模块8可以将候选字符串26与对应于排名顺序68内的最高排名的排名36相关联。类似地,文本建议模块8可以将候选字符串32与对应于排名顺序68内的第二最高排名的排名38相关联,将候选字符串28与对应于排名顺序68内的第三最高排名的排名40相关联,以及将候选字符串30与对应于排名顺序68内的第四最高排名的排名42相关联。以这种方式,文本建议模块8可以至少部分地基于过去交互数据,确定排名顺序68的排名,该过去交互数据包括当来自多个候选字符串的至少一个候选字符串先前被显示在一个或多个文本建议区的至少一个内时对应于该至少一个候选字符串的过去用户决定的表示。例如,如关于图1的GUI10A的示例所示,文本建议模块8可以至少部分地基于过去交互数据,确定排名顺序68,该过去交互数据包括当候选字符串26先前被显示在文本建议区16A内时选择候选字符串26(例如,候选字符串“this”)的过去用户决定的表示。
同样地,文本建议模块8可以根据反映当一个或多个候选字符串先前被显示在文本建议区中的一个或多个内时选择、忽略和拒绝所述候选字符串中的一个或多个的过去用户决定的排名顺序,输出候选字符串以在一个或多个文本建议区内显示。因此,文本建议模块8可以增加将选择被输出以在文本建议区内显示的候选字符串的概率(例如自动完成),由此可能增加将利用文本建议区来增加可以使用计算设备2录入文本的速率的可能性。
图2是根据该公开的一个或多个方面,图示图1所示的计算设备的一个示例的进一步细节的框图。图2仅图示计算设备2的一个特定示例,并且计算设备2的许多其他示例可以用在其他实例中。
如图2的具体示例所示,计算设备2包括一个或多个处理器100、一个或多个输入设备102、UI设备4、一个或多个通信单元104、一个或多个输出设备106和一个或多个存储设备108。如所示,计算设备2可以进一步包括可由计算设备2(例如,由一个或多个处理器100)执行的UI模块6、文本建议模块8和操作系统112。类似地,如所示,文本建议模块8可以包括可由计算设备2执行的候选字符串模块114、过去交互模块116和排序模块118。在一个示例中,计算设备2进一步包括语言模型120和过去交互数据结构122。
可以互连(物理、通信和/或操作地)组件4、100、102、104、106和108的每一个,用于组件间通信。在一些示例中,通信信道110可以包括系统总线、网络连接、过程间通信数据结构或用于传送数据的任何其他方法。如图2中的一个示例,组件4、100、102、104、106和108可以通过一个或多个通信信道110耦接。UI模块6、文本建议模块8、候选字符串模块114、过去交互模块116和排序模块118也可以相互和与计算设备2的其他组件,诸如语言模型120和过去交互数据结构122传送信息。
在一个示例中,处理器100被配置成实施用于在计算设备2内执行的功能和/或过程指令。例如,处理器100可以能够处理在存储设备108中存储的指令。处理器100的示例可以包括微处理器、控制器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或等效的离散或集成逻辑电路中的任何一个或多个。
一个或多个存储设备108可以被配置成在操作期间键信息存储在计算设备2内。在一些示例中,存储设备108被描述为计算机可读存储介质。在一些示例中,存储设备108是临时存储器,意指存储设备108的主要目的不是长期存储。在一些示例中,存储设备108被描述为易失存储器,意指当关闭计算机时存储设备108不保持所存储的内容。易失性存储器的示例包括随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)和本领域中公知的其他形式的易失性存储器。在一些示例中,使用存储设备108来存储用于由处理器100执行的程序指令。在一个示例中,存储设备108可以由在计算设备2上运行的软件或应用(例如,文本建议模块8)使用来在程序执行期间临时地存储信息。
在一些示例中,存储设备108还包括一个或多个计算机可读存储媒介。存储设备108可以被配置成存储比易失性存储器更大量的信息。存储设备108可以进一步被配置成长期存储信息。在一些示例中,存储设备108包括非易失性存储元件。这样的非易性失存储元件的示例包括磁硬盘、光盘、软盘、闪存、或电可编程存储器(EPROM)或电可擦可编程(EEPROM)存储器的形式。
在一些示例中,计算设备2还包括一个或多个通信单元104。在一个示例中,计算设备2利用通信单元104来经由诸如一个或多个无线网络的一个或多个网络与外部设备通信。通信单元104可以是网络接口卡,诸如以太网卡、光收发器、射频收发器或能发送和接收信息的任何其他类型的设备。这样的网络接口的其他示例可以包括蓝牙、3G和WiFi无线电计算设备以及通用串行总线(USB)。在一些示例中,计算设备2利用通信单元104来与诸如服务器的外部设备无线地通信。
在一个示例中,计算设备2还包括一个或多个输入设备102。在一些示例中,输入设备102被配置成通过触觉、音频或视频反馈,从用户接收输入。输入设备102的示例包括存在敏感输入设备和/或显示器、鼠标、键盘、语音应答系统、视频相机、麦克风或用于检测来自用户的命令的任何其他类型的设备。在一些示例中,存在敏感输入设备和/或显示器包括存在敏感屏幕。
一个或多个输出设备106也可以包括在计算设备2中。在一些示例中,输出设备106被配置成使用触觉、音频或视频刺激来向用户提供输出。在一个示例中,输出设备106包括存在敏感显示器、声卡、视频图形适配卡或用于将信号转换成可由人或机器理解的适当形式的任何其他类型的设备。输出设备106的另外的示例包括扬声器、阴极射线管(CRT)监视器、液晶显示器(LCD)或能生成用户能理解的输出的任何其他类型的设备。
在一些示例中,UI设备4可以包括输入设备102和/或输出设备106的功能性。在一个示例中,UI设备4可以是触摸敏感屏幕。在图2的示例中,UI设备4可以是存在敏感显示器。在一些示例中,存在敏感显示器可以检测存在敏感显示器的屏幕处和/或附近的物体,诸如输入单元(例如用户的手指、笔、铁笔等等)。作为一个示例范围,存在敏感显示器可以检测在存在敏感显示器的物理屏幕的2英寸或更少内的输入单元。存在敏感显示器可以确定检测输入单元的存在敏感显示器的一个或多个位置(例如,(x,y)坐标)。在另一示例范围中,存在敏感显示器可以检测与存在敏感显示器的物理屏幕6英寸或更少的物体,并且其他示例性范围也是可能的。存在敏感显示器可以使用电容、电感和/或光学识别技术,确定由输入单元选择的显示器的位置。在一些示例中,存在敏感显示器使用触觉、音频或视频刺激,向用户提供输出,如关于输出设备106所述。
计算设备2可以包括操作系统112。在一些示例中,操作系统112控制计算设备2的组件的操作。例如,在一个示例中,操作系统112促进UI模块6、文本建议模块8、候选字符串模块114、过去交互模块116和/或排序模块118与处理器100、通信单元104、存储设备108、输入设备102和输出设备106的通信。UI模块6、文本建议模块8、候选字符串模块114、过去交互模块166和排序模块118可以分别包括可由计算设备2执行的程序指令和/或数据。作为一个示例,文本建议模块8可以包括使计算设备2执行在本公开中所述的操作和动作中的一个或多个的指令。
存储模块108可以包括语言模型120。语言模型120可以包括词典。在一些示例中,词典可以包括字的列表并且可以包括有关列出的词的附加信息。词典可以由一个或多个数据结构,诸如由一个或多个阵列、列表、树或其他数据结构表示。例如,语言模型120可以包括以特里(trie)数据结构存储的词典。在一些示例中,语言模型120可以是安装在计算设备2上的缺省字典。在某些示例中,语言模型120可以包括安装在计算设备2上的一组预定短语。在其他示例中,语言模型120可以包括多个词典源,其可以存储在计算设备2处或存储在可经由一个或多个通信信道,计算设备2可访问的一个或多个远程计算设备处。在一些示例中,语言模型120可以以计算设备2的固件实实施。
语言模型120可以包括诸如n-gram语言模型的语言模型频率信息。n-gram语言模型可以基于序列(即,P(xi|xi-(n-1),...,xi-1))中的在前项,提供用于连续项序列中的项xi(字母、词、标点符号或其他分隔符)的概率分布。例如,bigram语法语言模型(n-gram,其中n=2)可以提供字母“i”在字母序列“th”后的概率。作为另一示例,bigram语言模型可以提供词“this”在词“better”之后的概率。在一些示例中,语言模型120包括具有集成语言模型频率信息的词典特里。例如,词典特里的每一节点可以包括字母的表示和概率值。
计算设备2可以包括将候选字符串与当候选字符串先前被在至少一个文本建议区内时对应于该候选字符串的过去用户决定的表示相关联的过去交互数据结构122。在某些示例中,过去交互数据结构122将候选字符串的上下文与候选字符串和对应于候选字符串的过去用户决定的表示相关联,响应于该候选字符串的上下文,计算设备2确定候选字符串。过去交互数据结构122的示例可以包括但不限于阵列、表格、列表、树、散列表或能将候选字符串与当候选字符串先前被显示在至少一个文本建议区内时对应于该候选字符串的过去用户决定的表示和/或手势输入的上下文相关联的其他数据结构,响应于该手势输入的上下文,计算设备确定候选字符串。在一些示例中,过去交互数据结构122和语言模型120可以表示为单一数据结构。
本公开的技术可以潜在地提高用户能将文本录入到计算设备中的速度。使用本公开的技术,计算设备可以至少部分地基于当至少一个候选字符串先前被显示在至少一个文本建议区中时对应于至少一个候选字符的过去用户决定的表示的过去交互数据,输出至少一个候选字符串以在文本建议区内显示。同样地,根据在此所述的技术,计算设备可以增加当候选字符串被显示在文本建议区内时将选择该候选字符串的可能性,由此可能增加用户可以使用计算设备录入文本的速率。
UI模块6可以输出包括图形键盘和一个或多个文本建议区的图形用户界面以(例如,在显示设备,诸如UI设备4处)显示。例如,UI模块6可以输出包括图形键盘12和文本建议区16的图形用户界面以在UI设备4(例如,存在敏感和/或触摸敏感输入设备)处显示。UI模块6可以接收在存在敏感输入设备处检测到的手势输入的指示。例如,UI模块6可以接收在UI设备4的位置18和20处检测到的手势输入的指示。
UI模块6可以至少部分地基于手势输入的指示,选择图形键盘的至少一个键。例如,UI模块6可以至少部分地基于在UI设备4的位置18处检测到的手势输入的指示,选择“T”键22。类似地,UI模块6可以至少部分地基于在UI设备4的位置20处检测到的手势输入的指示,选择“H”键24。候选字符串模块114可以至少部分地基于与至少一个键相关联的至少一个字符,确定多个候选字符串。例如,候选字符串模块114可以确定包括候选字符串26(例如,字符串“this”)、候选字符串28(例如,字符串“the”)、候选字符串30(例如,字符串“that”)和候选字符串32(例如,字符串“than”)的多个候选字符串。候选字符串模块114可以至少部分地基于与至少一个键相关联的至少一个字符,确定多个候选字符串,诸如通过确定包括与至少一个键相关联的字符的字符串是其前缀的多个候选字符串。
过去交互模块116可以确定包括当来自多个候选字符串的至少一个候选字符串先前被显示在一个或多个文本建议区的至少一个中时对应于该至少一个候选字符串的过去用户决定的表示的过去交互数据。例如,过去交互模块116可以访问(例如,遍历)过去交互数据结构122来确定与来自多个候选字符串中的至少一个候选字符串相关联的词典概率加权因子。词典概率加权因子可以反映以下中的一个或多个:当至少一个候选字符串先前被显示在一个或多个文本建议区中的一个中时选择该至少一个候选字符串的过去用户决定、当至少一个候选字符串先前被显示在一个或多个文本建议区中的一个内时忽略该至少一个候选字符串的过去用户决定(例如,当用户继续提供当至少一个候选字符串先前被显示在文本建议区内时选择图形键盘12的键的手势输入时)、以及当至少一个候选字符串先前被显示在一个或多个文本建议区中的一个内时拒绝至少一个候选字符串的过去用户决定(例如,在当至少一个候选字符串先前被显示在文本建议区内时用户选择不同文本建议区内显示的不同候选字符串时)。
在一些示例中,响应于接收到当至少一个候选字符串被显示在一个或多个文本建议区中的一个内时选择一个或多个文本建议区中的一个内显示的候选字符串和/或选择图形键盘12的一个或多个键的手势输入,过去交互模块116可以维护过去交互数据结构122来反映关于至少一个候选字符串的用户决定。作为一个示例,响应于接收到当候选字符串被显示在文本建议区中时选择该候选字符串的手势输入的指示,过去交互模块116可以通过至少增加与该候选字符串相关联的词典概率加权因子,维护过去交互数据结构122。作为另一示例,响应于接收到当候选字符串被显示在文本建议区内时选择图形键盘12的至少一个键的手势输入的指示(例如,忽略候选字符串的用户决定),过去交互模块116可以通过至少减小与该候选字符串相关联的词典概率加权因子,维护过去交互数据结构122。作为另一示例,响应于接收到选择在第一文本建议区内显示的第一候选字符串的手势输入的指示,过去交互模块116可以通过在当第一候选字符串被显示在第一文本建议区内时选择该第一候选字符串时,至少减小与在第二不同文本建议区内显示的第二不同候选字符串相关联的词典概率加权因子,维护过去交互数据结构122。
排序模块118可以至少部分地基于过去交互数据的确定,输出至少一个候选字符串以在一个或多个文本建议区中的一个内显示。例如,排序模块118可以访问语言模型120来确定与多个候选字符串的每一个相关联的词典概率。排序模块118可以访问过去交互数据结构122来确定与多个候选字符串的每一个相关联的词典概率加权因子。排序模块118可以将与候选字符串的至少一个相关联的词典概率加权因子应用于与候选字符串的至少一个相关联的词典概率来确定与候选字符串的至少一个相关联的至少一个加权词典概率。
排序模块118可以至少部分地基于多个候选字符串的加权词典概率,确定多个候选字符串的排名顺序。例如,排序模块118可以至少部分地基于分别与候选字符串26、28、30和32相关联的加权词典概率86、88、90和92,确定排名顺序68。排序模块118可以至少部分地基于排名顺序,输出候选字符串中的一个或多个以在文本建议区中的一个或多个内显示。例如,排序模块118可以基于排序模块118确定候选字符串的排名顺序内的候选字符串的排名与文本建议区的排名顺序内的文本建议区的排名匹配,输出多个候选字符串中的一个或多个以在文本建议区中的一个或多个内显示。
以这种方式,不是仅基于候选字符串表示包括在词典中的词的概率,输出候选字符串以在一个或多个文本建议区内显示,而是计算设备2可以至少部分地基于当候选字符串先前被显示在文本建议区内时对应于关于该候选字符串的过去用户决定的过去交互数据,输出候选字符串以在一个或多个文本建议区内显示。同样地,根据本公开的技术,计算设备2可以增加当候选字符串被显示在文本建议区内时将选择该候选字符串输出以在文本建议区内显示(例如,自动完成),由此可能增加用户可以使用计算设备2录入文本的速率。
图3是根据本公开的一个或多个方面,图示输出图形内容以在远程设备处显示的示例计算设备的框图。图形内容通常可以包括可以被输出以显示的任何视觉信息,诸如文本、图像、一组运动图像等等。图3所示的示例包括计算设备130、存在敏感显示器132、通信单元134、投影仪146、投影屏148、平板设备152和视觉显示设备156。尽管为示例目的,在图1和2中示为独立的计算设备2,但计算设备通常可以是包括处理器或用于执行软件指令的其他适当计算环境并且例如不需要包括存在敏感显示器的任何组件或系统。
如图3的示例中所示,计算设备130可以是包括如关于图2的处理器100所述的功能的处理器。在这样的示例中,计算设备130可以通过通信信道136A可操作地耦接到存在敏感显示器132,该通信信道136A可以是系统总线或其他适当的连接。计算设备130还可以通过通信信道136B可操作地耦接到如下进一步描述的通信单元134,该通信信道136B也可以是系统总线或其他适当的连接。尽管在图3的示例中单独地示出,但计算设备130可以通过任何数目的一个或多个通信信道可操作地耦接到存在敏感显示器132和I/O设备134。
在其他示例中,诸如先前图1-2中所示,计算设备130可以是指便携式或移动设备,诸如移动电话(包括智能电话)、膝上型计算机等等。在一些示例中,计算设备130可以是台式计算机、平板电脑、智能电视平台、相机、个人数字助理(PDA)、服务器、大型机等等。
存在敏感显示器132,如图1所示的UI设备4,可以包括显示设备133和存在敏感输入设备135。显示设备133可以例如从计算设备130接收数据并且显示图形内容。在一些示例中,存在敏感输入设备135可以使用电容、电感和/或光学识别技术,确定存在敏感显示器132处的一个或多个用户输入(例如,连续手势、多触摸手势、单触摸手势),并且使用通信信道136A将这样的用户输入的指示发送到计算设备130。在一些示例中,存在敏感输入设备135可以物理地位于显示设备133的上方,使得当用户将输入单元定位在由显示设备133显示的图形元素上时,存在敏感输入设备135的位置对应于显示图形元素的显示设备133的位置。
如图3所示,计算设备130还可以包括和/或可操作地耦接通信单元134。通信单元134可以包括如图2所述的通信单元104的功能。通信单元134的示例可以包括网络接口卡、以太网卡、光收发器、射频收发器或能发送和接收信息的任何其他类型的设备。这样的通信单元的其他示例可以包括蓝牙、3G和WiFi无线电和通用串行总线(USB)接口。计算设备130还可以包括和/或可操作地耦接图3中为简化和示例目的未示出的一个或多个其他设备,例如,输入设备、输出设备、存储器、存储设备等等。
图3还图示投影仪146和投影屏148。投影设备的其他这样的示例可以包括电子白板、全息显示设备和用于显示图形内容的任何其他适当的设备。投影仪146和投影屏148可以包括使得相应设备能够与计算设备130通信的一个或多个通信单元。在一些示例中,一个或多个通信单元可以使得投影仪146和投影屏148之间能够进行通信。投影仪146可以从计算设备130接收包括图形内容的数据。响应于接收到该数据,投影仪146可以将图形内容投影在投影屏148上。在一些示例中,投影仪146可以使用光学识别或其他适当的技术来确定投影屏处的一个或多个用户输入(例如,连续手势、多触摸手势、单触摸手势)并且使用一个或多个通信单元将这样的用户输入的指示发送到计算设备130。
在一些示例中,投影屏148可以包括存在敏感显示器150。存在敏感显示器150可以包括如在本公开中所述的UI设备4的功能的子集或所有功能。在一些示例中,存在敏感显示器150可以包括另外的功能。投影屏148(例如,电子白板)可以从计算设备130接收数据并且显示图形内容。在一些示例中,存在敏感显示器150可以使用电容、电感和/或光学识别技术来确定投影屏148处的一个或多个用户输入(例如,连续手势、多触摸手势、单触摸手势),并且使用一个或多个通信单元将这样的用户输入的指示发送到计算设备130。
图3还示出了平板设备152和视觉显示设备156。平板设备152和视觉显示设备156可以每个都包括计算和连接能力。平板设备152的示例可以包括电子阅读设备、可转换笔记本设备和混合平板设备。视觉显示设备156的示例可以包括电视和计算机监视器。如图3所示,平板设备152可以包括存在敏感显示器154。视觉显示设备156可以包括存在敏感显示器158。存在敏感显示器154、158可以包括如在本公开中所述的UI设备4的功能的子集或所有功能。在一些示例中,存在敏感显示器154、158可以包括另外的功能。在任一情况下,存在敏感显示器158例如可以从计算设备130接收数据并且显示图形内容。在一些示例中,存在敏感显示器158可以使用电容、电感和/或光学识别技术来确定投影屏处的一个或多个用户输入(例如,连续手势、多触摸手势、单触摸手势)并且使用一个或多个通信单元将这样的用户输入的指示发送到计算设备130。
如上所述,在一些示例中,计算设备130可以输出图形内容以在通过系统总线或其他适当的通信信道耦接到计算设备130的存在敏感显示器132处显示。计算设备130也可以输出图形内容以在诸如投影仪146、投影屏148、平板设备152和视觉显示设备156的一个或多个远程设备处显示。例如,计算设备130可以执行根据本公开的技术的一个或多个指令来生成和/或修改图形内容。计算设备130可以将包括图形内容的数据输出到计算设备130的通信单元,诸如通信单元134。通信单元134可以将数据发送到诸如投影仪146、投影屏148、平板设备152和/或视觉显示设备156的远程设备中的一个或多个。以这种方式,处理器152可以输出图形内容以在远程设备中的一个或多个处显示。在一些示例中,远程设备中的一个或多个可以在包括在相应远程设备中和/或可操作地与之耦接的存在敏感显示器处输出图形内容。
在一些示例中,计算设备130可以不在可操作地耦接到计算设备130的存在敏感显示器132处输出图形内容。在其他示例中,计算设备130可以输出图形内容以在通过通信信道136A耦接到计算设备130的存在敏感显示器132和一个或多个远程设备二者处都显示。在这样的示例中,可以在每一个相应设备处基本上同时显示图形内容。例如,可以由将包括图形内容的数据发送到远程设备的通信延迟引入某个时延。在一些示例中,由计算设备130生成并且输出以在存在敏感显示器132处显示的图形内容可以不同于输出以在一个或多个远程设备处显示的图形内容显示。
计算设备130可以使用任何适当的通信技术来发送和接收数据。例如,计算设备130可以使用网络链路138A可操作地耦接到外部网络140。图3所示的远程设备中的每一个可以通过相应网络链路138B、138C和138D的一个,可操作地耦接到网络外部网络140。外部网络140可以包括可操作地互耦由此在计算设备130和图3所示的远程设备之间交换信息的网络集线器、网络交换机、网络路由器等等。在一些示例中,网络链路138A-138D可以是以太网、ATM或其他网络连接。这样的连接可以是无线和/或有线连接。
在一些示例中,使用直接设备通信144,计算设备130可操作地耦接到图3中包括的远程设备中的一个或多个。直接设备通信144可以包括计算设备130可以通过其使用有线或无线通信来与远程设备直接发送和接收数据的通信。也就是说,在直接设备通信144的一些示例中,由计算设备130发送的数据在远程设备处被接收前可以不由一个或多个另外的设备转发,并且反之亦然。直接设备通信144的示例可以包括蓝牙、近场通信(NFC)、通用串行总线(USB)、WiFi、红外等等。图3所示的远程设备中的一个或多个可以通过通信链路142A-142D可操作地与计算设备130耦接。在一些示例中,通信链路138A-138D可以是使用蓝牙、近场通信、通用串行总线、红外等等的连接。这样的连接可以是无线和/或有线连接。
根据本公开的技术,计算设备130可以使用外部网络140可操作地耦接到视觉显示器156。计算设备130可以输出包括例如图形键盘和一个或多个文本建议区的图形用户界面以在存在敏感显示器158处显示。例如,计算设备130可以将包括图形用户界面的表示的数据发送到通信单元134。通信单元134可以使用外部网络140将包括图形用户界面的表示的数据发送到视觉显示设备156。响应于使用外部网络140接收到数据,视觉显示设备156可以使存在敏感显示器158输出图形用户界面。响应于用户在存在敏感显示器158处执行手势来选择键盘的一个或多个键,视觉显示设备156可以使用外部网络140,将手势输入的指示发送到计算设备130。通信单元134可以接收手势的指示并且将指示发送到计算设备130。
计算设备130可以至少部分地基于手势输入的指示,确定多个候选字符串。在一些示例中,计算设备130可以确定包括当来自多个候选字符串的至少一个候选字符串先前被显示在一个或多个文本建议区的至少一个中时对应于该至少一个候选字符串的过去用户决定的表示的过去交互数据。计算设备130可以至少部分地基于确定该过去交互数据,输出至少一个候选字符串,以在一个或多个文本建议区中的一个内显示。例如,计算设备130可以将包括至少一个候选字符串的数据发送到通信单元134,该通信单元134反过来使用外部网络140,将该数据发送到视觉显示设备156。在接收到该数据后,视觉显示设备156可以使存在敏感显示器158在图形用户界面的一个或多个文本建议区中的一个内显示至少一个候选字符串。以这种方式,处理器152可以根据本公开的技术,输出候选字符串以在存在敏感屏幕158处显示。
图4是根据本公开的一个或多个方面,图示可以用来输出至少一个候选字符串以在图形用户界面的文本建议区中显示的计算设备的示例操作的流程图。为示例目的,在下文中,在如图1和2所示的计算设备2的上下文内描述示例操作。
计算设备2可以输出包括图形键盘和一个或多个文本建议区的图形用户界面以显示(160)。例如,在计算设备2的一个或多个处理器100上执行的UI模块6可以输出包括图形键盘12和文本建议区16的GUI10A以在UI设备4处显示。计算设备2可以接收在存在敏感输入设备处检测到的手势输入的指示(162)。例如,计算设备2可以接收在UI设备4(例如,存在敏感和/或触摸敏感输入设备)的位置18和20处检测的手势输入的指示。计算设备2可以至少部分地基于该手势输入的指示,选择图形键盘的至少一个键(164)。例如,UI模块6可以至少部分地基于在UI设备4的位置18处检测到的手势输入的指示,选择“T”键22。类似地,UI模块6可以至少部分地基于在UI设备4的位置20处检测到的手势输入的指示,选择“H”键24。
计算设备2可以至少部分地基于与至少一个键相关联的至少一个字符,确定多个候选字符串(166)。例如,在计算设备2的处理器100上执行的候选字符串模块114可以至少部分地基于与“T”键22相关联的“T”字符和与“H”键24相关联的“H”字符的至少一个,确定包括候选字符串26(例如,字符串“this”)、候选字符串28(例如,字符串“the”)、候选字符串30(例如,字符串“that”)和候选字符串32(例如字符串“than”)的多个候选字符串。
计算设备2可以输出至少一个候选字符串以在文本建议区中的一个或多个中显示(168)。例如,在计算设备2的一个或多个处理器100上执行的排序模块118可以输出候选字符串26以在文本建议区16A中显示、候选字符串28以在文本建议区16B中显示以及候选字符串30以在文本建议区16C中显示。
计算设备2可以接收在存在敏感输入设备处检测到的手势输入的指示(170)。例如,UI模块6可以接收在UI设备4的位置23处检测到的手势输入的指示。响应于接收到手势输入的指示,计算设备2可以维护包括当至少一个候选字符串先前被显示在一个或多个文本建议区中的至少一个中时对应于多个候选字符串的至少一个候选字符串的过去用户决定的表示的过去交互数据(172)。例如,过去交互模块116可以维护过去交互数据结构122来反映当候选字符串被显示在一个或多个文本建议区中的一个时选择该候选字符串的用户决定、当候选字符串被显示在一个或多个文本建议区中的一个时忽略该候选字符串的用户决定(例如,继续提供当候选字符串被显示在一个或多个文本建议区中的一个时选择图形键盘12的一个或多个键的手势输入)和当候选字符串被显示在一个或多个文本建议区中的一个时拒绝该候选字符串的用户决定的至少一个。
图5是根据本公开的一个或多个方面,图示可以用来输出至少一个候选字符串以在图形用户界面的文本建议区内显示的计算设备的示例操作的流程图。为示例目的,在下文中,在如图1和2所示的计算设备2的上下文内描述示例操作。
计算设备2可以输出包括图形键盘和一个或多个文本建议区的图形用户界面以显示(180)。例如,在计算设备2的处理器100上执行的UI模块6可以输出包括图形键盘12和文本建议区16的GUI10A以在UI设备4处显示。计算设备2可以接收在存在敏感输入设备处检测到的手势输入的指示(182)。例如,计算设备2可以接收在UI设备4(例如,存在敏感和/或触摸敏感输入设备)的位置18和20处检测到的手势输入的指示。计算设备2可以至少部分地基于手势输入的指示,选择图形键盘的至少一个键(184)。例如,UI模块6可以至少部分地基于在UI设备4的位置18处检测到的手势输入的指示,选择“T”键22。类似地,UI模块6可以至少部分地基于在UI设备4的位置20处检测到的手势输入的指示,选择“H”键24。
计算设备2可以至少部分地基于与至少一个键相关联的至少一个字符,确定多个候选字符串(186)。例如,在计算设备2的一个或多个处理器100上执行的候选字符串模块114可以至少部分地基于与“T”键22相关联的“T”字符和与“H”键24相关联的“H”字符的至少一个,确定包括候选字符串26(例如,字符串“this”)、候选字符串28(例如,字符串“the”)、候选字符串30(例如,字符串“that”)和候选字符串32(例如,字符串“than”)的多个候选字符串。
计算设备2可以确定包括当多个候选字符串的至少一个候选字符串先前被显示在一个或多个文本建议区中的至少一个中时对应于该至少一个候选字符串的过去用户输入的表示的过去交互数据(188)。例如,在计算设备2的一个或多个处理器100上执行的过去交互模块116可以访问(例如,遍历)过去交互数据结构122来确定与多个候选字符串,诸如包括候选字符串26、28、30和32的多个候选字符串的中一个或多个相关联的一个或多个词典概率加权因子。
计算设备2可以至少部分地基于过去交互数据,输出至少一个候选字符串以在一个或多个文本建议区中的一个中显示(190)。例如,在计算设备2的一个或多个处理器100上执行的排序模块118可以访问语言模型120来确定候选字符串的词典概率(例如,候选字符串表示包括在词典中的候选词的概率)。排序模块118可以访问过去交互数据结构122来确定与候选字符串相关联的词典概率加权因子。词典概率加权因子可以反映当候选字符串先前被显示在文本建议区中时对应于该候选字符串的过去用户输入。排序模块118可以将词典概率加权因子应用于词典概率来确定与候选字符串相关联的加权词典概率。排序模块118可以至少部分地基于与候选字符串相关联的加权词典概率,确定多个候选字符串的排名顺序。排序模块118可以至少部分地基于多个候选字符串的排名顺序,输出至少一个候选字符串以在一个或多个文本建议区中的一个中显示。
在一个示例中,对应于多个候选字符串的至少一个候选字符串的过去用户输入的表示包括下述至少一个:当所述至少一个候选字符串先前被显示在所述一个或多个文本建议区中的至少一个中时选择所述至少一个候选字符串的过去用户输入的表示;当所述至少一个候选字符串先前被显示在所述一个或多个文本建议区中的至少一个中时忽略所述至少一个候选字符串的过去用户输入的表示;以及当所述至少一个候选字符串先前被显示在所述一个或多个文本建议区中的至少一个中时拒绝所述至少一个候选字符串的过去用户输入的表示。
在一个示例中,操作进一步包括由计算设备2确定多个候选字符串的每一相应候选字符串的词典概率;以及由计算设备2并且至少部分地基于每一相应候选字符串的词典概率和包括对应于至少一个候选字符串的过去用户输入的表示的过去交互数据,确定多个候选字符串的排名顺序。在这种示例中,输出至少一个候选字符串以在一个或多个文本建议区中的一个中显示包括至少部分地基于多个候选字符串的排名顺序,输出至少一个候选字符串以在一个或多个文本建议区中的一个中显示。
在一个示例中,确定所述多个候选字符串的所述排名顺序进一步包括:由所述计算设备2并且至少部分地基于所述过去交互数据,确定与所述至少一个候选字符串相关联的至少一个词典概率加权因子;由所述计算设备2将所述至少一个词典概率加权因子应用于所述至少一个候选字符串的所述词典概率来确定与所述至少一个候选字符串相关联的加权词典概率;以及由所述计算设备2并且至少部分地基于与所述至少一个候选字符串相关联的所述加权词典概率,确定所述多个候选字符串的所述排名顺序。
在一个示例中,所述一个或多个文本建议区包括所述一个或多个文本建议区的排名顺序,所述一个或多个文本建议区中的所述一个与所述一个或多个文本建议区的所述排名顺序内的排名相关联,以及输出所述至少一个候选字符串以在所述一个或多个文本建议区中的所述一个中显示进一步包括:至少部分地基于由所述计算设备2确定所述至少一个候选字符串与所述多个候选字符串的所述排名顺序内的特定排名相关联,输出所述至少一个候选字符串以在所述一个或多个文本建议区中的所述一个中显示,所述特定排名匹配与所述一个或多个文本建议区中的所述一个相关联的排名。
在一个示例中,接收所述手势输入的所述指示包括接收第一手势输入的指示,并且所述操作进一步包括:由所述计算设备2接收在所述存在敏感输入设备处检测到的第二手势输入的指示;响应于接收到所述第二手势输入的所述指示,由所述计算设备2当所述至少一个候选字符串被显示在所述一个或多个文本建议区中的所述一个中时选择所述至少一个候选字符串;以及响应于当所述至少一个候选字符串被显示在所述一个或多个文本建议区中的所述一个中时选择所述至少一个候选字符串,由所述计算设备2维护过去交互数据以反映当所述至少一个候选字符串先前被显示在所述一个或多个文本建议区中的所述一个中时选择所述至少一个候选字符串的过去用户输入。
在一个示例中,维护包括对应于所述至少一个候选字符串的所述过去用户输入的所述表示的所述过去交互数据以反映当所述至少一个候选字符串先前被显示在所述一个或多个文本建议区中的所述一个内时选择所述至少一个候选字符串的所述过去用户输入包括:通过至少增加与所述至少一个候选字符串相关联的词典概率加权因子,维护所述过去交互数据。
在一个示例中,接收所述手势输入的所述指示包括接收第一手势输入的指示,所述图形键盘的所述至少一个键包括所述图形键盘的第一键,以及,所述操作进一步包括:由所述计算设备2接收在所述存在敏感输入设备处检测到的第二手势输入的指示;由所述计算设备2并且至少部分地基于所述第二手势输入的所述指示,选择所述图形键盘的第二键;以及响应于当所述至少一个候选字符串被显示在所述一个或多个文本建议区中时选择所述图形键盘的所述第二键,由所述计算设备2维护包括对应于所述过去用户输入的所述表示的所述过去交互数据以反映当所述至少一个候选字符串先前被显示在所述一个或多个文本建议区的所述一个中时忽略所述至少一个候选字符串的过去用户输入。
在一个示例中,维护包括对应于所述至少一个候选字符串的所述过去用户输入的所述表示的所述过去交互数据以反映当所述至少一个候选字符串先前被显示在所述一个或多个文本建议区中的所述一个中时忽略所述至少一个候选字符串的所述过去用户输入包括:通过至少减小与所述至少一个候选字符串相关联的词典概率加权因子,维护所述过去交互数据。在一个示例中,通过至少减小与所述至少一个候选字符串相关联的所述词典概率加权因子来维护所述过去交互数据包括使与所述至少一个候选字符串相关联的所述词典概率加权因子减小第一值,以及其中,所述第一值的幅值小于第二值的幅值,所述第二值与维护所述过去交互数据以反映当所述至少一个候选字符串先前被显示在所述一个或多个文本建议区中的所述一个中时拒绝所述至少一个候选字符串的过去用户输入相关联。
在一个示例中,接收所述手势输入的所述指示包括接收第一手势输入的指示,所述输出所述至少一个候选字符串以在所述一个或多个文本建议区中的所述一个中显示包括输出第一候选字符串以在所述一个或多个文本建议区中的第一个中显示,以及,所述操作进一步包括:由所述计算设备2输出第二候选字符串以在所述一个或多个文本建议区中的第二个内显示,其中,所述第二候选字符串不同于所述第一候选字符串,以及其中,所述一个或多个文本建议区中的所述第二个不同于所述一个或多个文本建议区中的所述第一个;由所述计算设备2接收在所述存在敏感输入设备处检测到的第二手势输入的指示;由所述计算设备2并且至少部分地基于所述第二手势输入的所述指示,当所述第二候选字符串被显示在所述一个或多个文本建议区中的所述第二个中时,选择所述第二候选字符串;以及响应于当所述第二候选字符串被显示在所述一个或多个文本建议区中的所述第二个中时选择所述第二候选字符串,由所述计算设备2维护包括对应于所述第一候选字符串的所述过去用户输入的所述表示的所述过去交互数据以反映当所述第一候选字符串先前被显示在所述一个或多个文本建议区中的所述一个中时拒绝所述第一候选字符串的过去用户输入。
在一个示例中,维护包括对应于所述第一候选字符串的所述过去用户输入的所述表示的所述过去交互数据以反映当所述第一候选字符串先前被显示在所述一个或多个文本建议区中的所述一个中时拒绝所述第一候选字符串的所述过去用户输入包括:通过至少减小与所述第一候选字符串相关联的词典概率加权因子,维护所述过去交互数据。在一个示例中,通过至少减小与所述第一候选字符串相关联的所述词典概率加权因子来维护所述过去交互数据包括使与所述第一候选字符串相关联的所述词典概率加权因子减小第一值,以及其中,所述第一值的幅值大于第二值的幅值,所述第二值与维护所述过去交互数据以反映当所述第一候选字符串先前被显示在所述一个或多个文本建议区中的所述一个中时忽略所述第一候选字符串的过去用户输入相关联。
示例1:一种方法,包括:由计算设备输出包括图形键盘和一个或多个文本建议区的图形用户界面以显示;由所述计算设备接收在存在敏感输入设备处检测到的手势输入的指示;由所述计算设备并且至少部分地基于所述手势输入的所述指示,选择所述图形键盘的至少一个键;由所述计算设备并且至少部分地基于与所述至少一个键相关联的至少一个字符,确定多个候选字符串;由所述计算设备确定包括当所述多个候选字符串的至少一个候选字符串先前被显示在所述一个或多个文本建议区的至少一个中时对应于所述至少一个候选字符串的过去用户输入的表示的过去交互数据;以及由所述计算设备并且至少部分地基于所述过去交互数据,输出所述至少一个候选字符串以在所述一个或多个文本建议区中的一个中显示。
示例2:如示例1所述的方法,其中,对应于所述多个候选字符串的所述至少一个候选字符串的所述过去用户输入的所述表示包括下述至少一个:当所述至少一个候选字符串先前被显示在所述一个或多个文本建议区中的至少一个中时选择所述至少一个候选字符串的过去用户输入的表示;当所述至少一个候选字符串先前被显示在所述一个或多个文本建议区中的至少一个中时忽略所述至少一个候选字符串的过去用户输入的表示;以及当所述至少一个候选字符串先前被显示在所述一个或多个文本建议区中的至少一个中时拒绝所述至少一个候选字符串的过去用户输入的表示。
示例3.如示例1-2的任何一个所述的方法,进一步包括:由所述计算设备确定所述多个候选字符串的每一相应候选字符串的词典概率;以及由所述计算设备并且至少部分地基于每一相应候选字符串的所述词典概率和所述过去交互数据,确定所述多个候选字符串的排名顺序,其中,输出所述至少一个候选字符串以在所述一个或多个文本建议区中的一个中显示包括至少部分地基于所述多个候选字符串的所述排名顺序,输出所述至少一个候选字符串以在所述一个或多个文本建议区中的一个内显示。
示例4.如示例1-3的任何一个所述的方法,其中,确定所述多个候选字符串的所述排名顺序进一步包括:由所述计算设备并且至少部分地基于所述过去交互数据,确定与所述至少一个候选字符串相关联的至少一个词典概率加权因子;由所述计算设备将所述至少一个词典概率加权因子应用于所述至少一个候选字符串的所述词典概率来确定与所述至少一个候选字符串相关联的加权词典概率;以及由所述计算设备并且至少部分地基于与所述至少一个候选字符串相关联的所述加权词典概率,确定所述多个候选字符串的所述排名顺序。
示例5.如示例1-4的任何一个所述的方法,其中,所述一个或多个文本建议区包括所述一个或多个文本建议区的排名顺序,其中,所述一个或多个文本建议区中的所述一个与所述一个或多个文本建议区的所述排名顺序内的排名相关联,以及其中,输出所述至少一个候选字符串以在所述一个或多个文本建议区中的所述一个中显示进一步包括:至少部分地基于由所述计算设备确定所述至少一个候选字符串与所述多个候选字符串的所述排名顺序内的特定排名相关联,输出所述至少一个候选字符串以在所述一个或多个文本建议区中的所述一个中显示,所述特定排名匹配与所述一个或多个文本建议区中的所述一个相关联的排名。
示例6.如示例1-5的任何一个所述的方法,其中,接收所述手势输入的所述指示包括接收第一手势输入的指示,所述方法进一步包括:由所述计算设备接收在所述存在敏感输入设备处检测到的第二手势输入的指示;响应于接收到所述第二手势输入的所述指示,由所述计算设备当所述至少一个候选字符串被显示在所述一个或多个文本建议区中的所述一个中时选择所述至少一个候选字符串;以及响应于当所述至少一个候选字符串被显示在所述一个或多个文本建议区中的所述一个中时选择所述至少一个候选字符串,由所述计算设备维护过去交互数据以反映当所述至少一个候选字符串先前被显示在所述一个或多个文本建议区中的所述一个中时选择所述至少一个候选字符串的过去用户输入。
示例7.如示例1-6的任何一个所述的方法,其中,维护包括对应于所述至少一个候选字符串的所述过去用户输入的所述表示的所述过去交互数据以反映当所述至少一个候选字符串先前被显示在所述一个或多个文本建议区中的所述一个内时选择所述至少一个候选字符串的所述过去用户输入包括:通过至少增加与所述至少一个候选字符串相关联的词典概率加权因子,维护所述过去交互数据。
示例8.如示例1-7的任何一个所述的方法,其中,接收所述手势输入的所述指示包括接收第一手势输入的指示,其中,所述图形键盘的所述至少一个键包括所述图形键盘的第一键,以及其中,所述方法进一步包括:由所述计算设备接收在所述存在敏感输入设备处检测到的第二手势输入的指示;由所述计算设备并且至少部分地基于所述第二手势输入的所述指示,选择所述图形键盘的第二键;以及响应于当所述至少一个候选字符串被显示在所述一个或多个文本建议区中时选择所述图形键盘的所述第二键,由所述计算设备维护包括对应于所述过去用户输入的所述表示的所述过去交互数据以反映当所述至少一个候选字符串先前被显示在所述一个或多个文本建议区的所述一个中时忽略所述至少一个候选字符串的过去用户输入。
示例9.如示例1-8的任何一个所述的方法,其中,维护包括对应于所述至少一个候选字符串的所述过去用户输入的所述表示的所述过去交互数据以反映当所述至少一个候选字符串先前被显示在所述一个或多个文本建议区中的所述一个中时忽略所述至少一个候选字符串的所述过去用户输入包括:通过至少减小与所述至少一个候选字符串相关联的词典概率加权因子,维护所述过去交互数据。
示例10.如示例1-9的任何一个所述的方法,其中,通过至少减小与所述至少一个候选字符串相关联的所述词典概率加权因子来维护所述过去交互数据包括使与所述至少一个候选字符串相关联的所述词典概率加权因子减小第一值,以及其中,所述第一值的幅值小于第二值的幅值,所述第二值与维护所述过去交互数据以反映当所述至少一个候选字符串先前被显示在所述一个或多个文本建议区中的所述一个中时拒绝所述至少一个候选字符串的过去用户输入相关联。
示例11.如示例1-10的任何一个所述的方法,其中,接收所述手势输入的所述指示包括接收第一手势输入的指示,其中,所述输出所述至少一个候选字符串以在所述一个或多个文本建议区中的所述一个中显示包括输出第一候选字符串以在所述一个或多个文本建议区中的第一个中显示,以及其中,所述方法进一步包括:由所述计算设备输出第二候选字符串以在所述一个或多个文本建议区中的第二个内显示,其中,所述第二候选字符串不同于所述第一候选字符串,以及其中,所述一个或多个文本建议区中的所述第二个不同于所述一个或多个文本建议区中的所述第一个;由所述计算设备接收在所述存在敏感输入设备处检测到的第二手势输入的指示;由所述计算设备并且至少部分地基于所述第二手势输入的所述指示,当所述第二候选字符串被显示在所述一个或多个文本建议区中的所述第二个中时,选择所述第二候选字符串;以及响应于当所述第二候选字符串被显示在所述一个或多个文本建议区中的所述第二个中时选择所述第二候选字符串,由所述计算设备维护包括对应于所述第一候选字符串的所述过去用户输入的所述表示的所述过去交互数据以反映当所述第一候选字符串先前被显示在所述一个或多个文本建议区中的所述一个中时拒绝所述第一候选字符串的过去用户输入。
示例12.如示例1-11的任何一个所述的方法,其中,维护包括对应于所述第一候选字符串的所述过去用户输入的所述表示的所述过去交互数据以反映当所述第一候选字符串先前被显示在所述一个或多个文本建议区中的所述一个中时拒绝所述第一候选字符串的所述过去用户输入包括:通过至少减小与所述第一候选字符串相关联的词典概率加权因子,维护所述过去交互数据。
示例13.如示例1-12的任何一个所述的方法,其中,通过至少减小与所述第一候选字符串相关联的所述词典概率加权因子来维护所述过去交互数据包括使与所述第一候选字符串相关联的所述词典概率加权因子减小第一值,以及其中,所述第一值的幅值大于第二值的幅值,所述第二值与维护所述过去交互数据以反映当所述第一候选字符串先前被显示在所述一个或多个文本建议区中的所述一个中时忽略所述第一候选字符串的过去用户输入相关联。
示例14.一种设备,包括:至少一个处理器,所述处理器可操作地耦接到存在敏感输入设备;以及至少一个模块,所述模块可由所述至少一个处理器操作来执行如权利要求1-13的任何一项所述的方法。
示例15.一种编码有指令的计算机可读存储介质,所述指令当被执行时,使计算设备的至少一个处理器执行如示例1-13的任何一项所述的方法。
示例16.一种设备,包括:用于输出包括图形键盘和一个或多个文本建议区的图形用户界面以显示的装置;用于接收在存在敏感输入设备处检测到的手势输入的指示的装置;用于至少部分地基于所述手势输入的所述指示,选择所述图形键盘的至少一个键的装置;用于至少部分地基于与所述至少一个键相关联的至少一个字符,确定多个候选字符串的装置;用于确定包括当所述多个候选字符串的至少一个候选字符串先前被显示在所述一个或多个文本建议区的至少一个中时对应于所述所述至少一个候选字符串的过去用户输入的表示的过去交互数据的装置;以及用于至少部分地基于所述过去交互数据,输出所述至少一个候选字符串以在所述一个或多个文本建议区中的一个中显示的装置。
在本公开中描述的技术至少部分可以由硬件、软件、固件或其任意组合实施。例如,所述技术的各个方面可以在一个或多个处理器内实施,包括一个或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、或任何其他等效集成或离散逻辑电路、以及这些组件的任意组合。术语“处理器”或“处理电路”通常可以指上述逻辑电路中的任何一个,单独或与其他逻辑电路组合,或任何其他等效的电路。包括硬件的控制单元也可以执行本公开的技术中的一个或多个。
可以在同一设备内或在单独的设备内实施这样的硬件、软件和固件来支持在本公开中所述的各种技术。此外,上述单元、模块或组件中的任何一个可以一起或单独地实施为分立但可互操作的逻辑器件。将不同特征描述为模块或单元旨在突出不同功能方面,而不一定暗指这样的模块或单元必须由单独的硬件、固件或软件组件实现。相反,与一个或多个模块或单元相关联的功能可以由单独的硬件、固件或软件组件实现,或集成在公用或单独的硬件、固件或软件组件内。
在本公开中所述的技术也可以体现或编码在包括编码有指令的计算机可读存储介质的制品中。在包括被编码的计算机可读存储介质的制品中嵌入或编码的指令可以使一个或多个可编程处理器或其他处理器实施在此所述的技术中的一个或多个,诸如当包括或编码在计算机可读存储介质中的指令由一个或多个处理器执行时。计算机可读存储媒介可以包括随机存取存储器(RAM)、只读存储器(ROM)、可编程只读存储器(PROM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、闪存、硬盘、光盘ROM(CD-ROM)、软盘、磁带、磁媒介、光学媒介或其他计算机可读存储媒介。在一些示例中,制品可以包括一个或多个计算机可读存储媒介。
计算机可读存储介质包括非瞬时介质。术语“非瞬时”指示不是以载波或传播信号体现的存储介质。在某些示例中,非瞬时存储介质可以存储能随时间改变的数据(例如,在RAM或高速缓冲存储器中)。
已经描述了各种示例。这些和其他示例在所附权利要求的范围内。

Claims (16)

1.一种方法,包括:
由计算设备输出包括图形键盘和一个或多个文本建议区的图形用户界面以显示;
由所述计算设备接收在存在敏感输入设备处检测到的手势输入的指示;
由所述计算设备并且至少部分地基于所述手势输入的所述指示,选择所述图形键盘的至少一个键;
由所述计算设备并且至少部分地基于与所述至少一个键相关联的至少一个字符,确定多个候选字符串;
由所述计算设备确定包括当所述多个候选字符串中的至少一个候选字符串先前被显示在所述一个或多个文本建议区的至少一个中时对应于所述至少一个候选字符串的过去用户输入的表示的过去交互数据;以及
由所述计算设备并且至少部分地基于所述过去交互数据,输出所述至少一个候选字符串以在所述一个或多个文本建议区中的一个中显示。
2.如权利要求1所述的方法,其中,对应于所述多个候选字符串中的所述至少一个候选字符串的所述过去用户输入的所述表示包括下述至少一个:
当所述至少一个候选字符串先前被显示在所述一个或多个文本建议区中的所述至少一个中时选择所述至少一个候选字符串的过去用户输入的表示;
当所述至少一个候选字符串先前被显示在所述一个或多个文本建议区中的所述至少一个中时忽略所述至少一个候选字符串的过去用户输入的表示;以及
当所述至少一个候选字符串先前被显示在所述一个或多个文本建议区中的所述至少一个中时拒绝所述至少一个候选字符串的过去用户输入的表示。
3.如权利要求1-2的任何一项所述的方法,进一步包括:
由所述计算设备确定所述多个候选字符串的每一相应候选字符串的词典概率;以及
由所述计算设备并且至少部分地基于每一相应候选字符串的所述词典概率和所述过去交互数据,确定所述多个候选字符串的排名顺序,
其中,输出所述至少一个候选字符串以在所述一个或多个文本建议区中的所述一个中显示包括至少部分地基于所述多个候选字符串的所述排名顺序,输出所述至少一个候选字符串以在所述一个或多个文本建议区中的所述一个内显示。
4.如权利要求1-3的任何一项所述的方法,其中,确定所述多个候选字符串的所述排名顺序进一步包括:
由所述计算设备并且至少部分地基于所述过去交互数据,确定与所述至少一个候选字符串相关联的至少一个词典概率加权因子;
由所述计算设备将所述至少一个词典概率加权因子应用于所述至少一个候选字符串的所述词典概率来确定与所述至少一个候选字符串相关联的加权词典概率;以及
由所述计算设备并且至少部分地基于与所述至少一个候选字符串相关联的所述加权词典概率,确定所述多个候选字符串的所述排名顺序。
5.如权利要求1-4的任何一项所述的方法,
其中,所述一个或多个文本建议区包括所述一个或多个文本建议区的排名顺序,
其中,所述一个或多个文本建议区中的所述一个与所述一个或多个文本建议区的所述排名顺序内的排名相关联,以及
其中,输出所述至少一个候选字符串以在所述一个或多个文本建议区中的所述一个中显示进一步包括:至少部分地基于由所述计算设备确定所述至少一个候选字符串与所述多个候选字符串的所述排名顺序内的特定排名相关联,输出所述至少一个候选字符串以在所述一个或多个文本建议区中的所述一个中显示,所述特定排名匹配与所述一个或多个文本建议区中的所述一个相关联的排名。
6.如权利要求1-5的任何一项所述的方法,其中,接收所述手势输入的所述指示包括接收第一手势输入的指示,所述方法进一步包括:
由所述计算设备接收在所述存在敏感输入设备处检测到的第二手势输入的指示;
响应于接收到所述第二手势输入的所述指示,由所述计算设备当所述至少一个候选字符串被显示在所述一个或多个文本建议区中的所述一个中时选择所述至少一个候选字符串;以及
响应于当所述至少一个候选字符串被显示在所述一个或多个文本建议区中的所述一个中时选择所述至少一个候选字符串,由所述计算设备维护过去交互数据以反映当所述至少一个候选字符串先前被显示在所述一个或多个文本建议区中的所述一个中时选择所述至少一个候选字符串的过去用户输入。
7.如权利要求1-6的任何一项所述的方法,其中,维护包括对应于所述至少一个候选字符串的所述过去用户输入的所述表示的所述过去交互数据以反映当所述至少一个候选字符串先前被显示在所述一个或多个文本建议区中的所述一个内时选择所述至少一个候选字符串的所述过去用户输入包括:通过至少增加与所述至少一个候选字符串相关联的词典概率加权因子,维护所述过去交互数据。
8.如权利要求1-7的任何一项所述的方法,其中,接收所述手势输入的所述指示包括接收第一手势输入的指示,其中,所述图形键盘的所述至少一个键包括所述图形键盘的第一键,以及其中,所述方法进一步包括:
由所述计算设备接收在所述存在敏感输入设备处检测到的第二手势输入的指示;
由所述计算设备并且至少部分地基于所述第二手势输入的所述指示,选择所述图形键盘的第二键;以及
响应于当所述至少一个候选字符串被显示在所述一个或多个文本建议区中时选择所述图形键盘的所述第二键,由所述计算设备维护包括对应于所述过去用户输入的所述表示的所述过去交互数据以反映当所述至少一个候选字符串先前被显示在所述一个或多个文本建议区的所述一个中时忽略所述至少一个候选字符串的过去用户输入。
9.如权利要求1-8的任何一项所述的方法,其中,维护包括对应于所述至少一个候选字符串的所述过去用户输入的所述表示的所述过去交互数据以反映当所述至少一个候选字符串先前被显示在所述一个或多个文本建议区中的所述一个中时忽略所述至少一个候选字符串的所述过去用户输入包括:通过至少减小与所述至少一个候选字符串相关联的词典概率加权因子,维护所述过去交互数据。
10.如权利要求1-9的任何一项所述的方法,其中,通过至少减小与所述至少一个候选字符串相关联的所述词典概率加权因子了来维护所述过去交互数据包括:使与所述至少一个候选字符串相关联的所述词典概率加权因子减小第一值,以及其中,所述第一值的幅值小于第二值的幅值,所述第二值与维护所述过去交互数据以反映当所述至少一个候选字符串先前被显示在所述一个或多个文本建议区中的所述一个中时拒绝所述至少一个候选字符串的过去用户输入相关联。
11.如权利要求1-10的任何一项所述的方法,其中,接收所述手势输入的所述指示包括接收第一手势输入的指示,其中,所述输出所述至少一个候选字符串以在所述一个或多个文本建议区中的所述一个中显示包括输出第一候选字符串以在所述一个或多个文本建议区中的第一个中显示,以及其中,所述方法进一步包括:
由所述计算设备输出第二候选字符串以在所述一个或多个文本建议区中的第二个内显示,其中,所述第二候选字符串不同于所述第一候选字符串,以及其中,所述一个或多个文本建议区中的所述第二个不同于所述一个或多个文本建议区中的所述第一个;
由所述计算设备接收在所述存在敏感输入设备处检测到的第二手势输入的指示;
由所述计算设备并且至少部分地基于所述第二手势输入的所述指示,当所述第二候选字符串被显示在所述一个或多个文本建议区中的所述第二个中时,选择所述第二候选字符串;以及
响应于当所述第二候选字符串被显示在所述一个或多个文本建议区中的所述第二个中时选择所述第二候选字符串,由所述计算设备维护包括对应于所述第一候选字符串的所述过去用户输入的所述表示的所述过去交互数据以反映当所述第一候选字符串先前被显示在所述一个或多个文本建议区中的所述一个中时拒绝所述第一候选字符串的过去用户输入。
12.如权利要求1-11的任何一项所述的方法,其中,维护包括对应于所述第一候选字符串的所述过去用户输入的所述表示的所述过去交互数据以反映当所述第一候选字符串先前被显示在所述一个或多个文本建议区中的所述一个中时拒绝所述第一候选字符串的所述过去用户输入包括:通过至少减小与所述第一候选字符串相关联的词典概率加权因子,维护所述过去交互数据。
13.如权利要求1-12的任何一项所述的方法,其中,通过至少减小与所述第一候选字符串相关联的所述词典概率加权因子来维护所述过去交互数据包括:使与所述第一候选字符串相关联的所述词典概率加权因子减小第一值,以及其中,所述第一值的幅值大于第二值的幅值,所述第二值与维护所述过去交互数据以反映当所述第一候选字符串先前被显示在所述一个或多个文本建议区中的所述一个中时忽略所述第一候选字符串的过去用户输入相关联。
14.一种设备,包括:
至少一个处理器,所述处理器可操作地耦接到存在敏感输入设备;以及至少一个模块,所述模块可由所述至少一个处理器操作来执行如权利要求1-13的任何一项所述的方法。
15.一种编码有指令的计算机可读存储介质,所述指令当被执行时,使计算设备的至少一个处理器执行如权利要求1-13的任何一项所述的方法。
16.一种设备,包括:
用于输出包括图形键盘和一个或多个文本建议区的图形用户界面以显示的装置;
用于接收在存在敏感输入设备处检测到的手势输入的指示的装置;
用于至少部分地基于所述手势输入的所述指示,选择所述图形键盘的至少一个键的装置;
用于至少部分地基于与所述至少一个键相关联的至少一个字符,确定多个候选字符串的装置;
用于确定包括当所述多个候选字符串的至少一个候选字符串先前被显示在所述一个或多个文本建议区的至少一个中时对应于所述所述至少一个候选字符串的过去用户输入的表示的过去交互数据的装置;以及
用于至少部分地基于所述过去交互数据,输出所述至少一个候选字符串以在所述一个或多个文本建议区中的一个中显示的装置。
CN201480021906.XA 2013-04-16 2014-04-09 使用过去交互数据的文本建议输出 Pending CN105122185A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201361812526P 2013-04-16 2013-04-16
US61/812,526 2013-04-16
US13/909,275 2013-06-04
US13/909,275 US8825474B1 (en) 2013-04-16 2013-06-04 Text suggestion output using past interaction data
PCT/US2014/033458 WO2014172157A1 (en) 2013-04-16 2014-04-09 Text suggestion output using past interaction data

Publications (1)

Publication Number Publication Date
CN105122185A true CN105122185A (zh) 2015-12-02

Family

ID=51400098

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480021906.XA Pending CN105122185A (zh) 2013-04-16 2014-04-09 使用过去交互数据的文本建议输出

Country Status (4)

Country Link
US (2) US8825474B1 (zh)
EP (1) EP2987055B1 (zh)
CN (1) CN105122185A (zh)
WO (1) WO2014172157A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107430448A (zh) * 2015-03-24 2017-12-01 谷歌公司 针对文本录入中的自适应语言模型的反学习技术
CN109164921A (zh) * 2018-07-09 2019-01-08 北京康夫子科技有限公司 聊天框动态显示输入建议的控制方法及装置

Families Citing this family (155)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
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
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
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
US10255566B2 (en) 2011-06-03 2019-04-09 Apple Inc. Generating and processing 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
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
US10984387B2 (en) 2011-06-28 2021-04-20 Microsoft Technology Licensing, Llc Automatic task extraction and calendar entry
US10475050B2 (en) 2011-07-08 2019-11-12 Netflix, Inc. Identifying similar items based on global interaction history
US10311386B2 (en) * 2011-07-08 2019-06-04 Netflix, Inc. Identifying similar items based on interaction history
US10134385B2 (en) 2012-03-02 2018-11-20 Apple Inc. Systems and methods for name pronunciation
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
KR20230137475A (ko) 2013-02-07 2023-10-04 애플 인크. 디지털 어시스턴트를 위한 음성 트리거
WO2014142818A1 (en) * 2013-03-13 2014-09-18 Intel Corporation Sharing information between computing devices
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
US9665246B2 (en) 2013-04-16 2017-05-30 Google Inc. Consistent text suggestion output
US8825474B1 (en) 2013-04-16 2014-09-02 Google Inc. Text suggestion output using past interaction data
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
EP3937002A1 (en) 2013-06-09 2022-01-12 Apple Inc. Device, method, and graphical user interface for enabling conversation persistence across two or more instances of a digital assistant
CN104885037A (zh) * 2013-09-23 2015-09-02 宇龙计算机通信科技(深圳)有限公司 关联提示输入方法、系统和终端
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
AU2015266863B2 (en) 2014-05-30 2018-03-15 Apple Inc. Multi-command single utterance input method
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US9818400B2 (en) 2014-09-11 2017-11-14 Apple Inc. Method and apparatus for discovering trending terms in speech requests
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
KR101645674B1 (ko) * 2014-11-04 2016-08-05 주식회사 케이티 자동완성 후보 단어 제공 방법 및 장치
US10587541B2 (en) * 2014-12-02 2020-03-10 Facebook, Inc. Device, method, and graphical user interface for lightweight messaging
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US10567477B2 (en) 2015-03-08 2020-02-18 Apple Inc. Virtual assistant continuity
US9678664B2 (en) * 2015-04-10 2017-06-13 Google Inc. Neural network for keyboard input decoding
US10361981B2 (en) 2015-05-15 2019-07-23 Microsoft Technology Licensing, Llc Automatic extraction of commitments and requests from communications and content
US20160335572A1 (en) * 2015-05-15 2016-11-17 Microsoft Technology Licensing, Llc Management of commitments and requests extracted from communications and content
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
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
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US10101822B2 (en) * 2015-06-05 2018-10-16 Apple Inc. Language input correction
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
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal 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
EP3395019B1 (en) 2015-12-21 2022-03-30 Google LLC Automatic suggestions and other content for messaging applications
WO2017112786A1 (en) 2015-12-21 2017-06-29 Google Inc. Automatic suggestions for message exchange threads
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US20170293678A1 (en) * 2016-04-11 2017-10-12 Nuance Communications, Inc. Adaptive redo for trace text input
JP6691818B2 (ja) * 2016-05-23 2020-05-13 シャープ株式会社 インターフェース、文字入力ガイド方法及びプログラム
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
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
CN106200962A (zh) * 2016-07-08 2016-12-07 北京光年无限科技有限公司 面向智能机器人的交互方法及系统
US10387461B2 (en) 2016-08-16 2019-08-20 Google Llc Techniques for suggesting electronic messages based on user activity and other context
US10546061B2 (en) * 2016-08-17 2020-01-28 Microsoft Technology Licensing, Llc Predicting terms by using model chunks
US10474753B2 (en) 2016-09-07 2019-11-12 Apple Inc. Language identification using recurrent neural networks
US10015124B2 (en) * 2016-09-20 2018-07-03 Google Llc Automatic response suggestions based on images received in messaging applications
CN109716727B (zh) 2016-09-20 2021-10-15 谷歌有限责任公司 获取访问与用户相关联的数据的许可的方法及系统
US10547574B2 (en) 2016-09-20 2020-01-28 Google Llc Suggested responses based on message stickers
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
US10416846B2 (en) 2016-11-12 2019-09-17 Google Llc Determining graphical element(s) for inclusion in an electronic communication
US11281993B2 (en) 2016-12-05 2022-03-22 Apple Inc. Model and ensemble compression for metric learning
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
US10146768B2 (en) 2017-01-25 2018-12-04 Google Llc Automatic suggested responses to images received in messages using language model
US10417266B2 (en) 2017-05-09 2019-09-17 Apple Inc. Context-aware ranking of intelligent response suggestions
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. USER INTERFACE FOR CORRECTING RECOGNITION ERRORS
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
DK180048B1 (en) 2017-05-11 2020-02-04 Apple Inc. MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK201770429A1 (en) 2017-05-12 2018-12-14 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
DK201770432A1 (en) 2017-05-15 2018-12-21 Apple Inc. Hierarchical belief states for digital assistants
DK201770431A1 (en) 2017-05-15 2018-12-20 Apple Inc. Optimizing dialogue policy decisions for digital assistants using implicit feedback
DK179560B1 (en) 2017-05-16 2019-02-18 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
US10303715B2 (en) 2017-05-16 2019-05-28 Apple Inc. Intelligent automated assistant for media exploration
US10403278B2 (en) 2017-05-16 2019-09-03 Apple Inc. Methods and systems for phonetic matching in digital assistant services
US10846477B2 (en) * 2017-05-16 2020-11-24 Samsung Electronics Co., Ltd. Method and apparatus for recommending word
US10891485B2 (en) 2017-05-16 2021-01-12 Google Llc Image archival based on image categories
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
US10657328B2 (en) 2017-06-02 2020-05-19 Apple Inc. Multi-task recurrent neural network architecture for efficient morphology handling in neural language modeling
US10404636B2 (en) 2017-06-15 2019-09-03 Google Llc Embedded programs and interfaces for chat conversations
US10348658B2 (en) 2017-06-15 2019-07-09 Google Llc Suggested items for use with embedded applications in chat conversations
US10445429B2 (en) 2017-09-21 2019-10-15 Apple Inc. Natural language understanding using vocabularies with compressed serialized tries
US10755051B2 (en) 2017-09-29 2020-08-25 Apple Inc. Rule-based natural language processing
US10636424B2 (en) 2017-11-30 2020-04-28 Apple Inc. Multi-turn canned dialog
US10891526B2 (en) 2017-12-22 2021-01-12 Google Llc Functional image archiving
US10733982B2 (en) 2018-01-08 2020-08-04 Apple Inc. Multi-directional dialog
US10453560B2 (en) * 2018-01-30 2019-10-22 Perkinelmer Informatics, Inc. Context-aware virtual keyboard for chemical structure drawing applications
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
US10592604B2 (en) 2018-03-12 2020-03-17 Apple Inc. Inverse text normalization for automatic speech recognition
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
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US10984780B2 (en) 2018-05-21 2021-04-20 Apple Inc. Global semantic word embeddings using bi-directional recurrent neural networks
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
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
US10504518B1 (en) 2018-06-03 2019-12-10 Apple Inc. Accelerated task performance
US11151986B1 (en) * 2018-09-21 2021-10-19 Amazon Technologies, Inc. Learning how to rewrite user-specific input for natural language understanding
US11010561B2 (en) 2018-09-27 2021-05-18 Apple Inc. Sentiment prediction from textual data
US10839159B2 (en) 2018-09-28 2020-11-17 Apple Inc. Named entity normalization in a spoken dialog system
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
US11170166B2 (en) 2018-09-28 2021-11-09 Apple Inc. Neural typographical error modeling via generative adversarial networks
US11475898B2 (en) 2018-10-26 2022-10-18 Apple Inc. Low-latency multi-speaker speech recognition
US11638059B2 (en) 2019-01-04 2023-04-25 Apple Inc. Content playback on multiple devices
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
US11475884B2 (en) 2019-05-06 2022-10-18 Apple Inc. Reducing digital assistant latency when a language is incorrectly determined
US11423908B2 (en) 2019-05-06 2022-08-23 Apple Inc. Interpreting spoken requests
WO2020229889A1 (en) 2019-05-10 2020-11-19 Yseop Sa Natural language text generation using semantic objects
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
US11663498B2 (en) 2019-05-21 2023-05-30 Sisense Ltd. System and method for generating organizational memory using semantic knowledge graphs
US11687553B2 (en) 2019-05-21 2023-06-27 Sisense Ltd. System and method for generating analytical insights utilizing a semantic knowledge graph
US11496600B2 (en) 2019-05-31 2022-11-08 Apple Inc. Remote execution of machine-learned models
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. USER ACTIVITY SHORTCUT SUGGESTIONS
DK201970511A1 (en) 2019-05-31 2021-02-15 Apple Inc Voice identification in digital assistant systems
US11289073B2 (en) 2019-05-31 2022-03-29 Apple Inc. Device text to speech
US11360641B2 (en) 2019-06-01 2022-06-14 Apple Inc. Increasing the relevance of new available information
US11227599B2 (en) 2019-06-01 2022-01-18 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
WO2021056255A1 (en) 2019-09-25 2021-04-01 Apple Inc. Text detection using global geometry estimators
US11295088B2 (en) 2019-11-20 2022-04-05 Apple Inc. Sanitizing word predictions
US11501088B1 (en) * 2020-03-11 2022-11-15 Yseop Sa Techniques for generating natural language text customized to linguistic preferences of a user
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
US11038934B1 (en) 2020-05-11 2021-06-15 Apple Inc. Digital assistant hardware abstraction
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
US20220214801A1 (en) * 2021-01-06 2022-07-07 Typewise Ltd. Methods and systems for modifying user input processes

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050210402A1 (en) * 1999-03-18 2005-09-22 602531 British Columbia Ltd. Data entry for personal computing devices
US20070074131A1 (en) * 2005-05-18 2007-03-29 Assadollahi Ramin O Device incorporating improved text input mechanism
US20090109067A1 (en) * 2007-10-29 2009-04-30 Sony Ericsson Mobile Communications Ab Method, apparatus, and computer program for text input
US20090192786A1 (en) * 2005-05-18 2009-07-30 Assadollahi Ramin O Text input device and method
US20100131447A1 (en) * 2008-11-26 2010-05-27 Nokia Corporation Method, Apparatus and Computer Program Product for Providing an Adaptive Word Completion Mechanism
US20100265181A1 (en) * 2009-04-20 2010-10-21 ShoreCap LLC System, method and computer readable media for enabling a user to quickly identify and select a key on a touch screen keypad by easing key selection
CN102591472A (zh) * 2011-01-13 2012-07-18 新浪网技术(中国)有限公司 一种汉字输入方法和装置

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5953541A (en) 1997-01-24 1999-09-14 Tegic Communications, Inc. Disambiguating system for disambiguating ambiguous input sequences by displaying objects associated with the generated input sequences in the order of decreasing frequency of use
US6111985A (en) * 1997-06-06 2000-08-29 Microsoft Corporation Method and mechanism for providing partial results in full context handwriting recognition
KR100327209B1 (ko) 1998-05-12 2002-04-17 윤종용 첨펜의자취를이용한소프트웨어키보드시스템및그에따른키코드인식방법
US7750891B2 (en) 2003-04-09 2010-07-06 Tegic Communications, Inc. Selective input system based on tracking of motion parameters of an input device
EP1192716B1 (en) 1999-05-27 2009-09-23 Tegic Communications, Inc. Keyboard system with automatic correction
US7030863B2 (en) 2000-05-26 2006-04-18 America Online, Incorporated Virtual keyboard system with automatic correction
EP1303805B1 (de) 2000-07-21 2010-02-10 Speedscript AG Verfahren für ein schnellschreibsystem und schnellschreibgerät
US7042443B2 (en) 2001-10-11 2006-05-09 Woodard Scott E Speed Writer program and device with Speed Writer program installed
US7075520B2 (en) 2001-12-12 2006-07-11 Zi Technology Corporation Ltd Key press disambiguation using a keypad of multidirectional keys
US7151530B2 (en) 2002-08-20 2006-12-19 Canesta, Inc. System and method for determining an input selected by a user through a virtual interface
US7199786B2 (en) 2002-11-29 2007-04-03 Daniel Suraqui Reduced keyboards system using unistroke input and having automatic disambiguating and a recognition method using said system
US7251367B2 (en) 2002-12-20 2007-07-31 International Business Machines Corporation System and method for recognizing word patterns based on a virtual keyboard layout
US7098896B2 (en) 2003-01-16 2006-08-29 Forword Input Inc. System and method for continuous stroke word-based text input
US7453439B1 (en) 2003-01-16 2008-11-18 Forward Input Inc. System and method for continuous stroke word-based text input
SG135918A1 (en) 2003-03-03 2007-10-29 Xrgomics Pte Ltd Unambiguous text input method for touch screens and reduced keyboard systems
US20040183833A1 (en) * 2003-03-19 2004-09-23 Chua Yong Tong Keyboard error reduction method and apparatus
US7250938B2 (en) 2004-01-06 2007-07-31 Lenovo (Singapore) Pte. Ltd. System and method for improved user input on personal computing devices
US7706616B2 (en) 2004-02-27 2010-04-27 International Business Machines Corporation System and method for recognizing word patterns in a very large vocabulary based on a virtual keyboard layout
US7508324B2 (en) 2004-08-06 2009-03-24 Daniel Suraqui Finger activated reduced keyboard and a method for performing text input
US20060176283A1 (en) 2004-08-06 2006-08-10 Daniel Suraqui Finger activated reduced keyboard and a method for performing text input
US8117540B2 (en) * 2005-05-18 2012-02-14 Neuer Wall Treuhand Gmbh Method and device incorporating improved text input mechanism
EP1923796B1 (en) 2006-11-20 2016-01-06 Nokia Technologies OY Method and device incorporating improved text input mechanism
EP2109046A1 (en) 2008-04-07 2009-10-14 ExB Asset Management GmbH Predictive text input system and method involving two concurrent ranking means
US8036878B2 (en) 2005-05-18 2011-10-11 Never Wall Treuhand GmbH Device incorporating improved text input mechanism
US8059101B2 (en) 2007-06-22 2011-11-15 Apple Inc. Swipe gestures for touch screen keyboards
US8661340B2 (en) * 2007-09-13 2014-02-25 Apple Inc. Input methods for device having multi-language environment
US8756527B2 (en) 2008-01-18 2014-06-17 Rpx Corporation Method, apparatus and computer program product for providing a word input mechanism
US8589149B2 (en) * 2008-08-05 2013-11-19 Nuance Communications, Inc. Probability-based approach to recognition of user-entered data
US8135582B2 (en) 2009-10-04 2012-03-13 Daniel Suraqui Keyboard system and method for global disambiguation from classes with dictionary database from first and last letters
US9104312B2 (en) * 2010-03-12 2015-08-11 Nuance Communications, Inc. Multimodal text input system, such as for use with touch screens on mobile phones
JP5615583B2 (ja) 2010-04-08 2014-10-29 京セラ株式会社 文字入力装置、文字入力方法および文字入力プログラム
US8918734B2 (en) 2010-07-28 2014-12-23 Nuance Communications, Inc. Reduced keyboard with prediction solutions when input is a partial sliding trajectory
JP5731281B2 (ja) 2011-05-31 2015-06-10 Kddi株式会社 文字入力装置およびプログラム
US20140063067A1 (en) 2012-08-31 2014-03-06 Research In Motion Limited Method to select word by swiping capacitive keyboard
US9348429B2 (en) 2013-03-15 2016-05-24 Blackberry Limited Method and apparatus for word prediction using the position of a non-typing digit
US8825474B1 (en) 2013-04-16 2014-09-02 Google Inc. Text suggestion output using past interaction data

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050210402A1 (en) * 1999-03-18 2005-09-22 602531 British Columbia Ltd. Data entry for personal computing devices
US20070074131A1 (en) * 2005-05-18 2007-03-29 Assadollahi Ramin O Device incorporating improved text input mechanism
US20090192786A1 (en) * 2005-05-18 2009-07-30 Assadollahi Ramin O Text input device and method
US20090109067A1 (en) * 2007-10-29 2009-04-30 Sony Ericsson Mobile Communications Ab Method, apparatus, and computer program for text input
US20100131447A1 (en) * 2008-11-26 2010-05-27 Nokia Corporation Method, Apparatus and Computer Program Product for Providing an Adaptive Word Completion Mechanism
US20100265181A1 (en) * 2009-04-20 2010-10-21 ShoreCap LLC System, method and computer readable media for enabling a user to quickly identify and select a key on a touch screen keypad by easing key selection
CN102591472A (zh) * 2011-01-13 2012-07-18 新浪网技术(中国)有限公司 一种汉字输入方法和装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107430448A (zh) * 2015-03-24 2017-12-01 谷歌公司 针对文本录入中的自适应语言模型的反学习技术
CN109164921A (zh) * 2018-07-09 2019-01-08 北京康夫子科技有限公司 聊天框动态显示输入建议的控制方法及装置

Also Published As

Publication number Publication date
US9684446B2 (en) 2017-06-20
EP2987055A1 (en) 2016-02-24
EP2987055B1 (en) 2017-06-07
WO2014172157A1 (en) 2014-10-23
US8825474B1 (en) 2014-09-02
US20140372931A1 (en) 2014-12-18

Similar Documents

Publication Publication Date Title
CN105122185A (zh) 使用过去交互数据的文本建议输出
CN105164616B (zh) 用于输出候选字符串的方法、计算设备及存储介质
CN105308551B (zh) 用于连续手势输入的多图形键盘
US9081482B1 (en) Text input suggestion ranking
US9552080B2 (en) Incremental feature-based gesture-keyboard decoding
CN104020943B (zh) 字符串替换
US9304595B2 (en) Gesture-keyboard decoding using gesture path deviation
US20150160855A1 (en) Multiple character input with a single selection
US8701050B1 (en) Gesture completion path display for gesture-based keyboards
US20120254783A1 (en) Modifying numeric data presentation on a display
CN105074643B (zh) 非词典字符串的手势键盘输入
CN104718545A (zh) 递增的多词识别
US9009624B2 (en) Keyboard gestures for character string replacement
JP6640893B2 (ja) 文字を入力する方法及び装置
CN105630327A (zh) 便携式电子设备和控制可选元素的显示的方法
CN104718512A (zh) 特定于上下文的自动分隔符
CN104756062A (zh) 解码用于图形键盘的不准确手势
CN104391644A (zh) 一种输入方法及装置
JP5881831B2 (ja) 携帯端末における文字入力装置及び文字入力方法
WO2023040724A1 (zh) 信息显示方法、装置、电子设备和存储介质
KR101202835B1 (ko) 문자 생성 방법 및 그 장치

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
CB02 Change of applicant information

Address after: American California

Applicant after: Google limited liability company

Address before: American California

Applicant before: Google Inc.

RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20151202