CN110073349B - 考虑频率和格式化信息的词序建议 - Google Patents

考虑频率和格式化信息的词序建议 Download PDF

Info

Publication number
CN110073349B
CN110073349B CN201780077614.1A CN201780077614A CN110073349B CN 110073349 B CN110073349 B CN 110073349B CN 201780077614 A CN201780077614 A CN 201780077614A CN 110073349 B CN110073349 B CN 110073349B
Authority
CN
China
Prior art keywords
word
electronic document
suggestions
application
list
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201780077614.1A
Other languages
English (en)
Other versions
CN110073349A (zh
Inventor
A·N·P·史密斯
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
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN110073349A publication Critical patent/CN110073349A/zh
Application granted granted Critical
Publication of CN110073349B publication Critical patent/CN110073349B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/232Orthographic correction, e.g. spell checking or vowelisation
    • 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
    • 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/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/0489Interaction 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 dedicated keyboard keys or combinations thereof
    • G06F3/04895Guidance during keyboard input operation, e.g. prompting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/258Heading extraction; Automatic titling; Numbering
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Machine Translation (AREA)

Abstract

本公开内容的非限制性示例描述了用于改进针对拼写错误词语的建议的处理。本文所描述的示例涉及由客户端设备或者经由分布式网络连接的计算设备执行的处理。在一个例子中,访问包括拼写错误词语的电子文档。基于示例性词序建议模型的应用来确定针对拼写错误词语的词语建议的顺序,该示例性词序建议模型基于以下来分析拼写错误词语:对于电子文档内的内容的未格式化状态的分析、以及对于与电子文档的内容相关联的格式化的分析。词序建议模型还可以对包括文件元数据的电子文档的其它方面进行分析。提供了针对拼写错误词语的建议的列表,其中该列表中包括的词语建议的顺序是基于词序建议模型的应用来确定的。

Description

考虑频率和格式化信息的词序建议
背景技术
拼写检查常用于各种各样的应用程序。一种示例应用程序是文字处理应用程序。目前,对文字处理应用程序的拼写检查获取未识别的词语(即,假设拼写错误的词语)并且突出显示对于文档作者来说未识别的词语。文档作者可以右键单击拼写错误的词语,并且基于一个或多个活动词典来提供词语建议。拼写检查通常不考虑用户正在使用的文档的上下文。词语建议呈现为主要是基于其与一个或多个参考词典中的词语的相似性来给出建议。但是,这可能导致不相关以及错误的词语建议,这给文字处理应用程序的用户会带来挫折感。举例而言,用户可能不得不花费额外的资源(时间和处理操作)来识别用于预期词语的正确拼写。通常,用户需要在另一个应用程序中查找拼写错误词语的校正。因此,本申请的示例针对于在提供拼写错误的建议时,与提高处理效率和准确性相关的通常技术环境、以及其它示例。
发明内容
本公开内容的非限制性示例描述了用于改进针对拼写错误词语的建议的处理。本文所描述的示例涉及由客户端设备或者经由分布式网络连接的一个或多个设备执行的处理操作。在一个例子中,访问包括拼写错误词语的电子文档。基于示例性词序建议模型的应用来确定针对拼写错误词语的词语建议的顺序,该示例性词序建议模型基于以下来分析拼写错误词语:对于电子文档内的内容的未格式化状态的分析、以及对于与电子文档的内容相关联的格式化的分析。词序建议模型还可以对包括文件元数据的电子文档的其它方面进行分析。提供了针对拼写错误词语的建议的列表,其中该列表中包括的词语建议的顺序是基于词序建议模型的应用来确定的。
提供本概括部分以便用简化的形式介绍将在以下的详细描述中进一步描述的概念选择。本概括部分并不是旨在标识本发明的关键特征或本质特征,也不是用于限制本发明的保护范围。示例的另外方面、特征和/或优点将在下面的描述中进行部分地阐述,并且通过该描述将变得显而易见,或者可以通过本公开内容的实践来学习。
附图说明
参照下面的附图来描述非限制性和非详尽的示例。
图1是示出可以使用其来实现本公开内容的方面的计算设备的例子的框图。
图2A和图2B是可以使用其来实现本公开内容的方面的移动计算设备的简化框图。
图3是可以实现本公开内容的方面的分布式计算系统的简化框图。
图4A是对于可以实现本公开内容的方面的示例性词序建议模型的管理的示例性过程流。
图4B和图4C提供了可以用于实现本公开内容的方面,在示出针对拼写错误词语的建议的示例性列表之前和之后的用户界面视图。
图5是可以用于实现本公开内容的方面,与针对拼写错误词语的建议的示例性列表的管理有关的示例性方法。
图6示出了可以在能够实施本公开内容的方面的一个或多个计算设备上实现的示例性系统。
具体实施方式
本公开内容的非限制性示例描述了用于改进针对拼写错误词语的建议的处理。本文所描述的示例涉及由客户端设备或者经由分布式网络连接的一个或多个设备执行的处理操作。在一个例子中,访问包括拼写错误词语的电子文档。电子文档是以电子格式呈现的内容的记录。电子文档的示例包括但不限于:文件、网页和媒体对象、以及其它示例。基于示例性词序建议模型的应用来确定针对拼写错误词语的词语建议的顺序,该词序建议模型评估电子文档的不同方面以生成针对拼写错误词语的建议的列表。该词序建议模型可以为示例性电子文档的不同方面的评估分配权重,其包括对以下任何内容的分析:对于电子文档内的内容的未格式化状态的分析、对于与电子文档的内容相关联的格式化的分析、以及对于与电子文档相关联的文件元数据的分析和其它示例。
在一个例子中,词序建议模型的应用基于以下的分析,来确定词语建议和词语建议的顺序:对于电子文档内的内容的未格式化状态的分析、以及对于与电子文档的内容相关联的格式化的分析。在评估电子文档的内容的未格式化状态时,所述一个或多个模型可以被配置为评估拼写错误词语与电子文档的其它词语之间的相似性。例如,可以评估电子文档中使用的词语的频率。可以基于对于电子文档中的词语的频率的评估,来确定至少一个词语建议和/或用于排序词语建议的优先级。关于对于电子文档的内容的格式化的分析,词序建议模型可以被配置为基于与特定词语相关联的格式化来评估电子文档的特定词语的重要性。可以基于对于与电子文档的词语相关联的格式化的分析,来确定词语建议和/或用于排序词语建议的优先级。
在另外的例子中,词序建议模型的应用可以进一步分析与电子文档相关联的文件元数据,以确定针对拼写错误词语的建议的排序。对于与电子文档相关联的文件元数据的评估可以包括评估下面中的一个或多个:电子文档的标题和与该电子文档和/或一个或多个相关联的电子文档相对应的文件路径信息。可以基于对于与示例性电子文档相关联的文件元数据的评估,来确定至少一个词语建议(和/或用于排序词语建议的优先级)。
提供了建议的列表,其中列表中包括的词语建议的顺序是基于词序建议模型的应用来确定的。应当理解,建议的示例性列表可以不仅包括词语建议。在图4C中示出了基于使用示例性词序建议模型的处理生成的示例性列表。但是,用户界面视图430仅仅是示例性列表的一个例子。本领域普通技术人员应当认识到,在不脱离本公开内容的精神的基础上,在建议的示例性列表中呈现的数据可以改变。
举例而言,针对拼写错误词语的建议的列表可以由执行示例性生产力应用程序的客户端计算设备生成。生产力应用程序是用于提供示例性电子文档的任何应用程序。在替代的例子中,针对拼写错误词语的建议的列表可以由分布式网络的一个或多个设备来生成。在示例性列表由分布式服务生成的例子中,可以将该列表发送到客户端计算设备,例如,用于与执行的生产力应用程序一起显示。在一些例子中,可以基于本文所描述的词序建议模型的应用来新生成建议的列表。在其它例子中,词语建议的列表可以是基于词序建议模型的应用来重新排序的。例如,诸如文字处理应用程序之类的应用程序可以生成词语建议的列表。可以基于本文所描述的词序建议模型的应用,对生成的词语建议的列表进行重新排序。在至少一个例子中,词语建议的列表的重新排序包括:基于词序建议模型的应用,将至少一个新词语建议添加到生成的列表中。
虽然本文描述的示例涉及针对拼写错误词语的示例性词语建议的列表的生成和/对词语建议的列表的重新排序,但应当理解的是,用于分析拼写错误词语的建模(如本文所描述的)可以被配置为:为用户生成其它类型的内容。例如,可以提供上下文建议/推荐以基于对于电子文档的内容的分析来增强用户体验。举例而言,示例性列表可以包括:针对用户可以访问以获得其它信息的相关内容的链接。在其它例子中,可以识别用户的关联文件(本地存储或者存储在分布式网络上)。在一些例子中,可以在多个用户之间共享相关联的文件。
此外,可以应用示例性词序建议模型(如本文所述)以基于电子文档的上下文来检测潜在的拼写错误词语。举例而言,当用户打算输入“Braille”一词时,用户可能输入了“brale”拼写。由于“brale”可能被认为是一个认识的词,因此传统的拼写检查可能不会将“brale”的使用标记为潜在拼写错误的词。示例性词序建议模型被配置为基于电子文档的上下文来识别和标记可能拼写错误的词。例如,可以向用户提供用于标识潜在的非预期/拼写错误词语的词语建议以及词语可能是非预期/拼写错误的。例如,用户可能没有注意到输入了错误的词或者非预期的词。举例而言,示例性词序建议模型的应用可以标记可能非预期的词,并且提供用于给出为何提供词语建议的原因的用户界面(UI)特征(例如,气泡、呼出等等)。
因此,本公开内容提供了包括但不限于以下的多个技术优点:示例性词序建议模型的生成、包括针对拼写错误词语的更准确建议的改进列表的生成、通过在第一遍分析中识别最合适的词语建议时获得改进的准确性来实现处理设备的更高效操作(例如,节省计算周期/计算资源)、改进用户与用于呈现示例性电子文档的生产力应用程序的交互、以及将本文所描述的处理操作集成到各种不同的应用程序/服务的可扩展性、以及其它示例。
图1到图3以及相关联的描述提供了可以实现本发明的例子的各种操作环境的讨论。但是,参照图1到图3所示出和讨论的设备和系统只是用于举例和说明目的,而不是对本文所描述的可以用于实现本发明的例子的众多数量的计算设备配置进行限制。
图1是示出可以实现本公开内容的例子的计算设备102(例如,移动处理设备)的物理部件的框图。具体而言,计算设备102可以是被配置为执行示例性词序建议模型的示例性计算设备,其中该示例性词序建议模型用于提供针对拼写错误词语的建议,如本文所描述的。在基本配置中,计算设备102可以包括至少一个处理单元104和系统存储器106。根据计算设备的配置和类型,系统存储器106可以包括但不限于:易失性存储(如,随机存取存储器)、非易失性存储(如,只读存储器)、闪存或者这些存储器的任意组合。系统存储器106可以包括操作系统107和适合于运行软件程序/模块120(例如,IO管理器124、其它效用126和应用128)的一个或多个程序模块108。举例而言,系统存储器106可以存储用于执行的指令。系统存储器106的其它例子可以存储与应用相关联的数据。例如,操作系统107可以适合于对计算设备102的操作进行控制。此外,本发明的示例可以结合图形库、其它操作系统或者任何其它应用程序来实现,并且不受限于任何特定的应用或系统。在图1中,通过位于虚线122之内的那些部件来示出该基本配置。计算设备102可以具有另外的特征或功能。例如,计算设备102还可以包括另外的数据存储设备(可移动和/或不可移动),比如磁盘、光盘或磁带。在图1中通过移动存储设备109和非移动存储设备110的方式,来示出这种另外的存贮设备。
如上所述,在系统存储器106中,可以存储多个程序模块和数据文件。当在处理单元104上执行时,程序模块108(例如,输入/输出(I/O)管理器124、其它效用126和应用128)可以执行包括但不限于贯穿本公开内容所描述的操作的一个或多个阶段的处理。可以根据本发明的例子使用的其它程序模块可以包括电子邮件和联系人应用程序、文字处理应用程序、电子表格应用程序、数据库应用程序、幻灯片应用程序、绘图或计算机辅助应用程序、照片编辑应用程序、创作应用程序等等。
此外,本发明的例子可以使用包括离散电子元件的电子电路来实现,封装或者集成为包含逻辑门、使用微处理器的电路的电子芯片,或者实现在包含电子元件或微处理器的单一芯片上。例如,可以经由片上系统(SOC)来实现本发明的例子,其中,图1中所示出的部件里的每一个或大部分可以集成到单一集成电路上。这种SOC设备可以包括一个或多个处理单元、图形单元、通信单元、系统虚拟化单元和各种应用功能,所有这些作为单一集成电路集成(或者“烧”)到芯片基底上。当经由SOC进行操作时,本文所描述的功能可以经由与计算设备102的其它部件集成在单一集成电路(芯片)上的专用逻辑来进行操作。此外,本公开内容的例子还可以使用能够执行诸如与(AND)、或(OR)和非(NOT)之类的逻辑操作的其它技术来实现,这些技术包括但不限于:机械、光、流体和量子技术。此外,还可以在通用计算机或者任何其它电路或系统中实现本发明的例子。
此外,计算设备102还可以具有诸如键盘、鼠标、笔、声音输入设备、用于语音输入/识别的设备、触摸输入设备等等之类的一个或多个输入设备112。此外,还可以包括诸如显示器、扬声器、打印机等等之类的输出设备114。前述的设备只是示例性的,可以使用其它设备。计算设备104可以包括允许与其它计算设备118进行通信的一个或多个通信连接116。适当通信连接116的例子包括但不限于:RF发射机、接收机和/或收发机电路;通用串行总线(USB)、并口和/或串口。
如本文所使用的术语计算机可读介质可以包括计算机存储介质。计算机存储介质可以包括利用存储信息(如,计算机可读指令、数据结构或程序模块)的任何方法或技术来实现的易失性和非易失性、可移动和不可移动介质。系统存储器106、可移动存储设备109和不可移动存储设备110都是计算机存储介质的例子(即,存储器存贮)。计算机存储介质可以包括RAM、ROM、电可擦除只读存储器(EEPROM)、闪存或其它存储器技术、CD-ROM、数字多用途光盘(DVD)或其它光存储技术、盒式磁带、磁带、磁盘存储或其它磁存储设备、或者可以用于存储信息并能由计算设备102进行存取的任何其它制品。任何这种计算机存储介质可以是计算设备102的一部分。计算机存储介质不包括载波波形或者其它传播或调制的数据信号。
通信介质可以通过计算机可读指令、数据结构、程序模块、或者调制的数据信号(如,载波波形或其它传输机制)中的其它数据来体现,并包括任何信息传送介质。术语“调制的数据信号”可以描述具有一个或多个特性的信号,其中这些特性是以关于将信息编码在信号之中的方式来进行设置或者改变的。举例而言,但非做出限制,通信介质可以包括诸如有线网络或直接有线连接之类的有线介质、以及诸如声波、射频(RF)、红外线和其它无线介质之类的无线介质。
图2A和图2B示出了可以使用其来实现本发明的例子的移动计算设备200(例如,移动电话、智能电话、个人数据助理、平板个人计算机、平板电脑、平板手机、膝上型计算机等等)。移动计算设备200可以是被配置为执行示例性词序建议模型的示例性计算设备,该示例性词序建议模型用于提供针对拼写错误词语的建议,如本文所描述的。可以为在诸如移动计算设备200之类的计算设备上执行的应用,提供应用命令控制。应用命令控制涉及通过用户界面(UI)或图形用户界面(GUI)结合应用来使用的命令的呈现和控制。在一个例子中,可以对应用命令控制进行编程以工作于单一应用。在其它例子中,可以对应用命令控制进行编程以跨一个以上的应用进行工作。参见图2A,该图示出了用于实现这些示例的移动计算设备200的一个例子。在基本配置中,移动计算设备200是具有输入单元和输出单元的手持计算机。通常,移动计算设备200包括显示器205和用于允许用户向该移动计算设备200输入信息的一个或多个输入按键210。移动计算设备200的显示器205也可以充当为输入设备(例如,触摸屏显示器)。如果包括的话,可选的侧输入单元215也允许另外的用户输入。侧输入单元215可以是旋转开关、按键或者任何其它类型的手动输入单元。在替代的例子中,移动计算设备200可以合并更多或更少的输入单元。例如,在一些例子中,显示器205可以不是触摸屏。在另一个替代的例子中,移动计算设备200是便携式电话系统,例如,蜂窝电话。此外,移动计算设备200还可以包括可选的键盘235。可选的键盘235可以是物理键盘或者在触摸屏显示器上生成的“软”键盘或者任何其它软输入面板(SIP)。在各个例子中,输出单元包括用于显示GUI的显示器205、视觉指示器220(例如,发光二极管)和/或音频换能器225(例如,扬声器)。在一些例子中,移动计算设备200合并振动换能器,以向用户提供触觉反馈。在另一个例子中,移动计算设备200合并输入和/或输出端口,例如,音频输入(如,麦克风插孔)、音频输出(如,耳机插孔)和视频输出(如,HDMI端口),以向外部设备发送信号或者从外部设备接收信号。
图2B是示出移动计算设备的一个例子的架构的框图。也就是说,移动计算设备200可以合并系统(即,架构)202来实现一些例子。在一个例子中,将系统202实现成能够运行一个或多个应用(例如,浏览器、电子邮件、日历、联系人管理器、消息客户端、游戏和媒体客户端/播放器)的“智能电话”。在一些例子中,将系统202集成为计算设备,例如,集成的个人数字助理(PDA)、平板设备和无线电话。
一个或多个应用程序266可以装载到存储器262中,在操作系统264上运行或者关联操作系统264来运行。这些应用程序的例子包括电话拨号程序、电子邮件程序、个人信息管理(PIM)程序、文字处理程序、电子表格程序、互联网浏览器程序、消息程序等等。此外,系统202还包括位于存储器262中的非易失性存贮区域268。非易失性存贮区域268可以用于存储当系统202关闭时,不应当丢失的持久信息。应用程序266可以使用非易失性存贮区域268中的信息,例如,电子邮件或者电子邮件应用所使用的其它消息等等。此外,同步应用(没有示出)也位于系统202上,并被编程为与位于主机计算机上的相应同步应用进行交互,以保持非易失性存贮区域268中存储的信息与主机计算机处存储的相应信息相同步。应当理解的是,其它应用也可以装载到存储器262中,并运行在本文所描述的移动计算设备200(例如,系统202)上。
系统202具有电源270,其中电源270可以实现成一个或多个电池。此外,电源270还可以包括外部电源,例如,AC适配器或者对电池进行补充或充电的供电对接支座。
系统202可以包括外围设备端口层230,其执行促进系统202与一个或多个外围设备之间的连接的功能。在操作系统(OS)264的控制下,进行去往和来自外围设备端口230的传输。换言之,可以经由操作系统264将外围设备端口230接收的通信传播到应用程序266,反之亦然。
此外,系统202还可以包括用于执行发送和接收无线电频率通信的功能的无线电接口层272。无线电接口层272有助于经由通信载波或服务提供商,实现系统202和“外部世界”之间的无线连接。在操作系统264的控制下,进行去往和来自无线电接口层272的传输。换言之,可以经由操作系统264将无线电装置272接收的通信传播到应用程序266,反之亦然。
可以使用视觉指示器220来提供视觉通知,和/或可以使用音频接口274来经由音频换能器225(如在移动计算设备200的说明中所描述的)提供可听见的通知。在所示出的例子中,视觉指示器220是发光二极管(LED),音频换能器225是扬声器。这些设备可以直接地耦合到电源270,使得当被激活时,它们仍保持通知机制所指示的持续时间(即使处理器260和其它部件关闭以节省电池电量)。可以对LED进行编程以无限期地保持开启,直到用户采取动作来指示该设备的开机状态为止。音频接口274用于向用户提供可听见的信号和从用户接收可听见的信号。例如,除了耦合到(图2A中所示出的)音频换能器225之外,音频接口274还可以耦合到麦克风以接收可听见的输入,例如以便促进电话会话。根据本公开内容的例子,麦克风还可以服务成音频传感器,以有助于通知的控制,如下面所描述的。此外,系统202还可以包括视频接口276,后者实现板载摄像头230的操作以记录静止图像、视频流等等。
实现系统202的移动计算设备200可以具有另外的特征或功能。例如,该移动计算设备200还可以包括诸如磁盘、光盘或磁带之类的其它数据存储设备(可移动和/或不可移动)。在图2B中,通过非易失性存贮区域268的方式来示出这种另外的存贮。
由移动计算设备200生成或捕捉并且经由系统202来存储的数据/信息,可以本地地存储在移动计算设备200上(如上所述),或者该数据可以存储在任意数量的存储介质上,其中该设备可以经由无线电装置272或者经由移动计算设备200和与该移动计算设备200相关联的单独计算设备(例如,诸如互联网的分布式计算网络中的服务器计算机)之间的有线连接来访问该任意数量的存储介质。应当理解的是,移动计算设备200可以经由无线电装置272或者经由分布式计算网络,来访问该数据/信息。类似地,该数据/信息可以根据公知的数据/信息传送和存储方式(其包括电子邮件和协作式数据/信息共享系统),在计算设备之间进行容易地传送以进行存储和使用。
图3示出了一种系统的架构的一个例子,其中该系统提供可靠地访问存储系统上的目标数据并且处理针对一个或多个客户端设备的通信失败的应用,如上所述。图3的系统可以是被配置为执行示例性词序建议模型的示例性系统,其中该示例性词序建议模型用于提供针对拼写错误词语的建议,如本文所描述的。关联程序模块108和/或应用120和存贮设备/存储器(图1中所描述的)进行访问、交互或编辑的目标数据,可以存储在不同的通信信道或其它存贮设备类型中。例如,可以使用目录服务322、web门户324、邮箱服务326、即时消息存储328或社交网络站点330、应用128、IO管理器124、其它效用126来存储各种文档,存储系统可以使用这些类型的系统中的任何一种等等来实现数据利用,如本文所描述的。服务器320可以通过网络315,提供可供在通用计算设备102和移动设备200上操作的客户端使用的存储系统。举例而言,网络315可以包括互联网或者任何其它类型的局域网或广域网,可以实现用于连接到网络315的客户端节点。客户端节点的例子包括但不限于:在个人计算机、平板计算设备中体现的计算设备102、和/或通过移动计算设备200(例如,移动处理设备)体现的计算设备102。举例而言,客户端节点可以使用无线网络连接(例如,WiFi连接、蓝牙等等)来连接到网络315。但是,本文所描述的例子还可以扩展到经由硬连线来连接到网络315。客户端计算设备102或200的这些例子中的任何一个可以从存储316中获得内容。
图4A是对于可以实现本公开内容的方面的示例性词序建议模型的管理的示例性过程流400。示例性词序建议模型404可以被配置为识别针对拼写错误词语(例如,在示例性电子文档中)的建议。如上所述,电子文档是以电子格式呈现的内容的记录。举例而言,电子文档可以包括但不限于:文件、网页和媒体对象、以及其它示例。词序建议模型404被配置为通过评估电子文档的不同方面,在提供针对拼写错误词语的建议时考虑电子文档的上下文。建议可以包括词语建议以及其它类型的建议(例如,上下文建议、链接、人员等等)。
基于示例性词序建议模型404的应用来确定针对拼写错误词语的词语建议顺序,该词序建议模型404评估电子文档的不同方面以生成针对拼写错误词语的建议的列表。词序建议模型可以为示例性电子文档的不同方面的评估分配加权,其包括对于以下任何一项的分析:电子文档内的内容的未格式化状态、与电子文档的内容相关联的格式化以及与电子文档相关联的文件元数据、以及其它示例。
词序建议模型404可以接收多个输入402。示例性输入402包括:所选的语言模型、电子文档内的内容的未格式化状态、与电子文档的内容相关联的格式化、以及与电子文档相关联的文件元数据。在一些例子中,示例性词序建议模型404可以执行处理操作以获取与示例性电子文档相关的输入402。在一个例子中,词序建议模型可以解析和评估电子文档的不同方面,例如,电子文档的内容、与电子文档的内容相关联的格式化、以及与电子文档相关联的文件元数据、以及其它示例。在替代的例子中,示例性词序建议模型404可以与提供示例性输入402的其它资源进行交互。例如,被配置为生成和管理示例性词序建议模型404的计算设备可以与包括各种应用/服务的平台资源(例如,第一方、第二方或第三方资源)进行交互,这些应用/服务可扩展性地增强与示例性词序建议模型404相关联的一个或多个组件的处理能力。
示例性词序建议模型404可以选择性地应用一个或多个模型以适应由所选语言模型提供的词语建议。例如,词序建议模型404被配置为应用模型来评估电子文档的不同方面。在一个例子中,可以使用相同的模型来评估电子文档的内容、与电子文档的内容相关联的格式化、以及与电子文档相关联的文件元数据。在这样的实例中,可以对模型进行定制以向电子文档的不同方面应用权重从而进行诸如以下的确定:针对拼写错误词语的最适用的词语建议、以及如何针对拼写错误词语的词语建议进行优先次序排列/排序。在另一个例子中,可以应用第一模型来评估电子文档的内容,可以应用另一个模型来评估电子文档的其它方面(例如,与电子文档的内容相关联的格式化和与电子文档相关联的文件元数据)。例如,可以使用未加权模型来评估未格式化的内容(即,与格式化无关),可以利用加权模型来评估电子文档的其它方面。在另一个例子中,可以应用不同的模型来评估电子文档的不同方面,例如电子文档的内容、与内容相关联的格式化和文件元数据。因此,应当理解的是,示例性词序建议模型404可以被配置为例如根据处理设备能力、网络带宽等等,针对在提供相关建议时的处理效率和/或准确性进行优化。
(输入402的)选择语言模型被配置为提供可以应用于评估示例性电子文档的内容的一个或多个语言模型。用于选择的语言模型类型和所选语言模型的应用是本领域普通技术人员已知的。由所选语言模型提供的输入可以包括但不限于:语音/文本识别、字典分析、机器翻译、词性标记、解析/识别、手写识别、信息检索和针对拼写错误词语的建议的生成、以及其它示例。在一个例子中,选择语言模型可以基于由所选语言模型执行的分析来生成针对拼写错误词语的建议。针对拼写错误词语的建议可以包括通过语言模型处理识别的词语建议。在示例中,示例性词序建议模型404可以基于处理示例性电子文档的不同方面的应用,来接收这样的建议和重写/重新排序建议(其包括词语建议)。
(输入402的)电子文档的内容是由示例性词序建议模型404评估的电子文档的一个方面,例如,用于识别针对拼写错误词语的建议。内容可以包括任何类型的数据,其包括在示例性电子文档内包括的文本、媒体对象、图像、手写输入、音频文件等等。虽然本文描述的示例可以引用文本/词语,但应当理解的是,可以类似地评估其它形式的内容以进行识别,以确定与拼写错误词语的关联以及对建议(例如,词语建议、内容建议等)进行优先级排序。例如,可以应用图像处理和/或光学字符识别(OCR)来评估图像内容。
举例而言,可以以不依赖于与词语、段落、文本块等相关联的格式化的方式,来评估文本(例如,特定词语)和文本的上下文。可以应用处理操作来解析和识别内容的未格式化状态。也就是说,示例性词序建议模型404可以执行对于电子文档内的内容的未格式化状态的分析。如随后所描述的,在一些例子中,对于与内容的特定部分相关联的格式化的分析可以是用于识别特定文本的重要性的单独评估。但是,在其它例子中,词序建议模型404可以聚合对于内容的未格式化状态以及与内容相关联的格式化的评估。
在一个例子中,词序建议模型404可以被配置为生成电子文档中的词语的直方图。直方图是例如以图形形式对统计信息的显示。可以利用直方图来分析内容的未格式化状态,与运行更复杂的分析(例如,机器学习建模或使用深度神经网络的处理以及其它示例)相比,提供了处理效率优势。但是,直方图仅仅只是可以如何分析文档内容的一个例子。其它例子可以应用机器学习建模、深度神经网络建模或任何其它类型的数据分析处理操作。词序建议模型404可以应用直方图模型,该直方图模型被配置为分析电子文档的内容的未格式化状态,其中可以基于直方图建模分析来生成和/或排序建议(其包括词语建议)。在一个例子中,可以生成针对拼写错误词语的建议的示例性列表作为来自直方图模型处理的输出(输出406)。在其它例子中,可以基于对直方图建模的结果进行因子化的处理操作,结合对于电子文档的评估的其它方面的加权模型处理,来生成输出406。如在处理流400中可以看到的,可以将与电子文档的内容有关的输入402输入到直方图模型或加权模型。
可以基于电子文档中已存在的词语的频率来确定针对拼写错误词语的建议以及词语建议的排序。评估电子文档的内容(和特定内容的上下文)可以帮助识别更多的应用建议(例如,针对拼写错误词语的词语建议)、以及提供用于对词语建议的顺序进行优先级排序的基础。词序建议模型可以被配置为评估电子文档内的词语的频率,以及评估拼写错误词语和电子文档的其它词语之间的相似性。例如,可以使用直方图、加权模型等,来评估电子文档中使用的词语的频率。可以对来自建模的结果进行分析以从具有与拼写错误词语的相似性的电子文档中识别词语建议。例如,可以应用处理操作来评估字符、字母、数字、符号、排列位置等等中的任何一个的相似性。举例而言,词序建议模型404可以被配置为评估语音相似性,作为拼写错误词语和电子文档的其它词语之间相似性评估的基础。在一个实例中,可以基于语言理解处理来识别针对拼写错误词语的语音上相似的词语,该语言理解处理可以利用字典或其它知识资源来识别针对拼写错误词语的语音上类似的建议。在另外的例子中,对于词语的语音相似性的分析可以扩展到对于拼写错误词语和电子文档的其它词语之间的语音相似性的评估,例如,其中直方图建模和/或加权建模用于评估拼写错误词语和电子文档的其它词语之间的语音相似性。在一个例子中,所应用的建模可以生成拼写错误词语与电子文档内的其它词语之间的相似性得分。可以在针对拼写错误词语的建议的示例性列表内,输出一个或多个最高得分词语作为词语建议。在一些例子中,可以基于评估电子文档的内容的建模,来生成用于排序词语建议的优先级的指示。
关于对于电子文档中的词语的频率的评估,可能在整个文档中对一个词语正确拼写多次,但在文档中的稍后处拼写错误。考虑书写关于Braille的文档的案例(用于视觉障碍者的触觉书写系统)。“Braille”这个词通常拼写错误。在某些情况下,这个词的拼写错误可能很难使语言模型识别拼写“Braille”的意图。在这样的实例中,语言模型可能会为该词提供不准确的建议。关于“Braille”示例,这个词在前面的文本中已书写了很多次的事实,将表示“Braille”应该是提供的词语建议并且可能优先级地布置在提供给用户的词语建议的列表的顶部。由示例性词序建议模型404提供的处理可以解决这些问题。
可以进一步分析通过建模(例如,直方图、加权模型等)识别的词语以进行上下文分析。也可以分析和考虑与电子文档的内容相关的其它上下文方面(例如,词语(在句子、段落、电子文档等中)的放置和/或位置、词语的类型、其它相关联的词语的含义、提供上下文的另外检索的数据等等),以决定是否提供词语作为建议和/或如何对建议进行优先级排序。在一些情况下,词序建议模型404可以被配置为与用于处理和/或信息检索的其它平台资源进行交互。平台可以包括各种应用/服务(例如,第一方、第二方或第三方资源),这些应用/服务可扩展性地增强与示例性词序建议模型404相关联的一个或多个组件的处理能力。
考虑当用户意图输入单词“Braille”时,用户却输入“brale”的拼写的例子。因为“brale”是一个认识的词,因此传统的拼写检查可能不会将“brale”的使用标记为潜在的拼写错误词语。示例性词序建议模型404被配置为评估电子文档内的内容的上下文,这可以用于不仅识别拼写错误词语而且还可以针对文档的上下文识别非预期的词语。可以为用户提供用于识别可能非预期/拼写错误词语的词语建议以及为什么一个词可能是非预期/拼写错误的基本原因(例如,在针对拼写错误词语的建议的示例性列表(输出406)中)。例如,用户可能没有注意到输入了错误的词语或非预期的词语。举例而言,示例性词序建议模型的应用可以标记可能非期望的词语,并且提供用户界面(UI)特征(例如,泡沫、呼出等),其中该UI特征提供了为何提供词语建议的原因。可以将这样的建议提供为输出406(例如,在针对拼写错误词语的建议的示例性列表中),和/或提供为关于一个词可能拼写错误或者是非预期的UI指示。
(输入402的)内容的格式化是可以由示例性词序建议模型404评估的另一个方面。对于与电子文档的内容相关联的格式化的分析可以用于评估电子文档内的内容的特定部分(例如,文本/词语)的重要性。如过程流400中所示,与内容的格式化有关的输入402馈送到加权模型中,该加权模型用于对格式化的不同属性应用加权。例如,可以执行解析与电子文档和/或电子文档中的特定内容相关联的元数据(例如,文件数据/属性、源代码、脚本语言)的处理操作。然后,词序建议模型404可以评估内容的格式化属性。可以基于对于与电子文档的词语相关联的格式化的分析,来确定词语建议和/或用于排序词语建议的优先级。
在对文档中应当作为拼写校正而提供的词语进行预测时,某些词语比其它词语更重要。词序建议模型404可以利用加权模型,基于格式化来识别词语的重要性。示例性加权模型可以识别与内容相关联的格式化的类型/级别,并且为该类型/级别分配适当的加权。举例而言,可以为诸如由字体大小、缺少粗体文本、缺少斜体或包含在文本块中的文本之类的通常内容分配一定的权重。在一个例子中,可以在该模型中,为通常内容/文本分配最低权重。可以在该模型中,向通过颜色/粗体/斜体标识的突出显示的内容/文本赋予更大的权重。此外,可以在该模型中,向识别为标题(通过大小、下划线等确定)的标题内容/文本赋予更大的权重。还可以考虑其它格式化类型,其包括但不限于:关于内容的用户指示、来自一个或多个用户的评论的数量以及跟踪改变、以及其它示例。应当理解的是,开发人员可以包括对任何类型的格式化属性以及设置/操纵格式化属性的权重的任何评估。举例而言,该模型中一个词语的权重越大,则将在建议的列表中建议该词语的可能性越大,或者与通用字典处理相比,该词语将出现在列表中的更高位置上,而不是通过仅仅只使用拼写错误词语的相似性所通常处于的位置,以及其它示例。
(输入402)的文件元数据是可以由示例性词序建议模型404评估的另一个方面。文件元数据可以包括与文件有关的任何属性数据,其包括命名约定、文件路径信息、文件夹关联、关联文件、存储位置、文件的租赁者和/或所有者等等。如过程流400中所示,将与文件元数据有关的输入402馈送到加权模型中,该加权模型用于向电子文档的不同属性应用加权。例如,可以执行对于电子文档的文件元数据(例如,文件数据/属性、源代码、脚本语言)进行解析的处理操作。然后,词序建议模型404可以对文件元数据进行评估。在一些例子中,词序建议模型404的应用可以进一步分析与电子文档相关联的文件元数据,以确定针对拼写错误词语的建议的顺序。在其它例子中,还可以基于对于文件元数据的分析来生成词语建议。
对于文件元数据的分析可用于识别可能与提供针对拼写错误词语的建议相关的重要内容/文本。词序建议模型404可以利用加权模型来识别从文件元数据获得的词语的重要性,以提供建议。在一个例子中,当评估用于建议的内容和建议的优先级/排序时,与对于电子文档的评估的其它方面相比,可以向从文件元数据获得的词语进行更重地加权。但是,应当理解,应用于对于电子文档的评估的不同方面(其包括文件元数据)的加权可以根据开发者规范而变化。
举例而言,对于与电子文档相关联的文件元数据的评估可以包括评估以下中的一个或多个:电子文档的标题和与该电子文档和/或相关联的电子文档相对应的文件路径信息。可以基于对于与示例性电子文档相关联的文件元数据的评估,来确定至少一个词语建议和/或用于排序词语建议的优先级。
词序建议模型可以处理所接收的输入402以生成针对拼写错误词语的建议。在一个例子中,词序建议模型404可以评估由所选语言建议模型提供的建议的列表。来自对于其它所接收输入402的评估的模型处理(例如,电子文档的内容、内容的格式化和与电子文档相关联的文件元数据)可以用于修改由所选语言建议模型提供的建议。在一个例子中,基于词语建议顺序模型的应用,对所选语言建议模型提供的生成的词语建议的列表进行重新排序。在至少一个例子中,该重新排序包括:基于词语建议顺序模型的应用,添加至少一个新词语建议。在一些实例中,词语建议可以包括:使用与词序建议模型404交互的平台资源,通过信息检索而识别的诸如同义词和/或反义词的建议。
在为拼写错误词语生成建议的示例性列表(或建议的更新列表)时,词序建议模型404可以关于以下方面执行一个或多个策略决策确定:在示例性列表中包括哪些词语建议、以及如何对示例性列表中的词语建议进行排序。可以执行包括以下的进一步的策略决定:是否包括内容的上下文建议/推荐、超链接/链接、以及用于提供建议的理由的UI指示、以及其它示例。策略决策的执行可以包括:对一个或多个模型为了评估和排序词语建议所应用的加权进行聚合。在利用直方图模型来评估未格式化状态中的内容的例子中,可以基于对于电子文档创建的示例性直方图的分析来生成建议/推荐。由词序建议模型404执行的处理可以进一步对通过示例性直方图的分析生成的建议应用加权。可以执行处理以按比例分析用于包括在建议的示例性列表内的建议(例如,词语建议以及包括其它类型的建议/推荐内容的可能性)。
策略决策处理可以包括排名器的应用,该排名器可以向建议分配排名/评分,以用于确定将包括哪些建议以及如何对建议进行排序/优先级排序。策略决策处理可以包括统计分析建模的应用,其潜在地包括用于对内容的关系进行评估的回归分析。考虑上面提供的“Braille”示例。词序建议模型404可以被配置为执行电子文档的内容的语义分析。例如,可以根据词语、句子、段落、整个文档等等来评估电子文档的内容,以识别拼写错误词语和电子文档的其它内容之间的不一致。举一个具体的例子,dictionary.com将“brale”定义为“一种品牌的锥形钻石或钻石尖头工具,其具有以120°的角度相交的凸出弯曲的侧面,用作测试金属硬度的压头”。这与视障人士的通信无关。这种分析有助于确定要提供的建议以及如何对示例性建议进行排序。
如上所述,来自词序建议模型404的处理的示例性输出406可以包括针对拼写错误词语的建议的列表。示例性列表可以包括:基于通过应用词序建议模型404而执行的分析的针对拼写错误词语的词语建议以及其它上下文建议/推荐。可以基于对于电子文档的内容的分析来提供上下文建议/推荐以增强用户体验。举例而言,示例性列表可以包括:与用户可以访问以获得其它信息的相关内容的链接。举一个说明性示例,参见用户界面视图430(图4C),其突出显示了包含用户可能感兴趣的上下文链接。应当理解的是,包括媒体内容、音频文件、文本、富媒体等等的其它内容也可以包括在针对拼写错误词语的建议的示例性列表中。在其它例子中,可以在建议的示例性列表内标识用户的关联文件(其本地存储或者存储在分布式网络上)。在一些例子中,可以在多个用户之间共享关联的文件。
在替代的例子中,示例性输出406可以包括用于词语的潜在拼写错误的UI指示。如上所述,示例性词序建议模型404被配置为基于电子文档的上下文,来识别和标记可能拼写错误的词。例如,可以向用户提供标识潜在的非预期/拼写错误词语的词语建议以及词语为何可能是非预期/拼写错误的理由。例如,用户可能没有注意到输入了错误的词语或非预期的词语。举例而言,示例性词序建议模型的应用可以标记潜在的非预期词,并且提供UI特征(例如,气泡、呼出等),该UI特征提供了为何提供词语建议的原因。在上面提供的“Braille”示例中,UI特征可以指示提供“Braille”的词语建议作为“brale”的潜在替代,这是因为电子文档的上下文描述了用于视觉障碍者的书写语言。在一些实例中,示例性UI指示可以与针对拼写错误词语的建议的示例性列表分开。例如,可以在电子文档中自动突出显示单个词可能拼写错误的指示。用户可以执行关于该指示的动作,其中提供了UI指示,其给出为什么示例性词序建议模型404认为该词是拼写错误/非预期的解释/理由。在一些例子中,示例性输出406可以包括针对潜在拼写错误/非预期词的单个词语建议。在为可能拼写错误/非预期的词语提供指示的情况下,示例性词序建议模型404可以输出针对该词语的排名最高/优先级最高的词语建议。应当理解的是,任何词语建议、上下文建议和/或UI指示的输出406呈现可以改变,并且其不限于针对拼写错误词语的所有类型的建议的完整列表。
在确定“Braille”是优先词语建议时,词序建议模型404的处理可以将“Braille”词语建议添加到可能拼写错误词语“brale”的示例性列表中(并且优先级排序)。
图4B和4C提供了可以实现本公开内容的方面的用户界面视图(分别为420和430),它们提供了在示出针对拼写错误词语的建议的示例性列表之前和之后的视图。用户界面视图420(图4B)提供了由标准语言模型提供的词语建议的列表的示例。返回到“Braille”示例,用户可能输入了词语“brale”,其被识别为潜在拼写错误的词语。如在用户界面视图420中可以看到的,由标准语言模型提供的建议(bale、braw、brule、brake、branle)是基于字典的并且与涉及视觉障碍者的书写语言的电子文档无关。用户界面视图430(图4C)示出了基于如上所述的词序模型404的处理的建议的示例性列表。如在用户界面视图430中可以看到的,可以向潜在拼写错误词语“brale”的示例性列表添加诸如“Braille”的词语建议432(并且优先级排序)。例如,基于对于电子文档的不同方面的分析(结合利用示例性平台资源的信息检索),也可以在词语建议432的列表中推荐其它相关词语(例如,同义词、描述符、短语建议)。此外,在用户界面视图430中显示的建议的示例性列表可以包括用于用户的其它上下文建议/推荐434。如在用户界面视图430中可以看到的,其它上下文建议/推荐434包括用于“Braille”和“Louis Braille”的超链接,向用户提供对于其它内容的便利访问(如果需要的话)。用户界面视图430仅提供了其它上下文建议/推荐的一个例子。如上所述,可以为用户提供其它类型的内容和/或关联,其包括但不限于:丰富的交互式对象、媒体对象、以及与文件和/或用户的关联、以及其它示例。
图5是可以用于实现本公开内容的各方面,与针对拼写错误词语的建议的示例性列表的管理相关的示例性方法500。举例而言,方法500可以由示例性处理设备和/或系统(诸如图1-3中所示的那些)执行。在一些例子中,方法500可以在包括至少一个处理器的设备上执行,所述至少一个处理器被配置为存储和执行操作、程序或指令。在方法500中执行的操作可以对应于:由执行计算机程序、应用程序接口(API)、神经网络或机器学习处理等等的系统和/或服务所执行的操作。举例而言,在方法500中执行的处理操作可以由一个或多个硬件组件执行。在另一个例子中,在方法500中执行的处理操作可以由一个或多个软件组件执行。在一些例子中,在方法500中描述的处理操作可以由一个或多个应用程序/服务来执行,其中所述一个或多个应用程序/服务与访问多个应用程序/服务、设备、知识资源等等的web服务相关联。在方法500中描述的处理操作可以由通过分布式网络连接的一个或多个组件来实现,例如,如系统600(图6)中所描述的。
方法500开始于处理操作502,在操作502处,访问示例性电子文档。在包括过程流400(图4A)的描述的先前描述中已经提供了电子文档的例子。举例而言,该电子文档可以包括一个或多个拼写错误词语。在一些例子中,可能实时地向电子文档添加潜在的拼写错误/非预期词语。在一些例子中,可以通过客户端计算设备访问示例性电子文档,其中该电子文档本地存储在客户端计算设备上或者经由分布式网络连接通过应用程序/服务进行访问。
流程可以转到处理操作504处,确定词语建议和/或词语建议的顺序。可以基于对拼写错误词语进行分析的示例性词序建议模型的应用,来确定词语建议和拼写词语的词语建议的顺序/优先级。在过程流400(词序建议模型404)的描述中,描述了示例性词序建议模型。在一些例子中,处理操作504可以包括应用示例性词序建议模型,其中该词序建议模型可以被配置为提供:对于电子文档内的内容的未格式化状态的分析、以及对于与电子文档的内容相关联的格式化的分析。词序建议模型可以对包括文件元数据的电子文档的其它方面进行分析。此外,处理操作504可以包括检索内容的其它信息,其中示例性词序建议模型可以与平台资源进行交互以获得针对拼写错误词语的上下文信息、建议等等。
在评估电子文档的内容的未格式化状态时,所述一个或多个模型可以被配置为评估拼写错误词语与电子文档的其它词语之间的相似性。例如,可以评估在电子文档中使用的词语的频率。可以基于对于电子文档中的词语的频率的评估,来确定用于对词语建议进行排序的至少一个词语建议和/或优先级。关于对于电子文档的内容的格式化的分析,词序建议模型可以被配置为基于与电子文档的特定词语相关联的格式化,来评估该特定词语的重要性。可以基于对于与电子文档的词语相关联的格式化的分析,来确定词语建议和/或用于排序词语建议的优先级。
在另外的例子中,词序建议模型的应用可以进一步分析与电子文档相关联的文件元数据,以确定针对拼写错误词语的建议的排序。对于与电子文档相关联的文件元数据的评估可以包括评估以下中的一个或多个:电子文档的标题、以及与电子文档和/或相关联的电子文档相对应的文件路径信息。可以基于对于与示例性电子文档相关联的文件元数据的评估,来确定至少一个词语建议(和/或用于排序词语建议的优先级)。在一些实例中,处理操作504可以包括:基于词语建议顺序模型的应用,对所生成的词语建议的列表(即,标准语言模型的词语建议的列表)进行重新排序。该重新排序可以包括:基于词语建议顺序模型的应用来添加至少一个新词语建议。
流程可以转到判定操作506,确定是否接收到针对拼写错误词语的建议的请求。如在前述示例中所识别的,示例性词序建议模型的应用可以检测潜在的拼写错误/非预期词语。在一些例子中,可以在电子文档的观看期间,为用户自动地识别拼写错误词语。判定操作506可以检测是否接收到请求应用程序/服务提供针对拼写错误词语的建议的输入。输入的接收可以具有任何形式,其是本领域普通技术人员公知的。如果没有接收到输入,则流程转到分支NO,处理保持空闲直到接收到针对拼写错误词语的请求为止。在一些情况下,可以通过应用程序/服务提供示例性UI指示或通知,其指示可用于潜在拼写错误/非预期词语的建议。
在接收到请求为拼写错误词语提供建议的输入的例子中,流程转到分支YES,继续进行处理操作508。在处理操作508,例如基于所接收的建议请求,提供建议的示例性列表。在包括过程流400的描述(词序建议模型404)的先前描述中,已经描述了建议的示例性列表的例子。在一些例子中,在建议的示例性列表中包括的词语建议的顺序是基于词序建议模型的应用来确定的。
方法500的流程可以转到判定操作510,确定是否进行了建议的选择。如果没有,则流程转到分支NO,处理保持空闲。建议的选择可以包括:接收从建议的示例性列表中选择词语建议(或上下文建议)的输入。在做出对词语建议的选择的示例中,流程转到分支YES,继续进行处理操作512,其中在处理操作512处,可以替换拼写错误词语。在选择属于上下文建议的例子中,处理操作512可以指导计算设备访问与上下文建议/推荐相关联的内容。
在判定操作514处,确定是否存在对于电子文档的更新。对于电子文档的更新可以包括:添加包括一个或多个其它拼写错误/非预期词语的内容。在没有对于电子文档进行更新的例子中,流程转到分支NO,处理保持空闲。在对于电子文档进行更新的例子中,流程转到分支YES,处理返回到处理操作504。
图6示出了可在一个或多个计算设备上实现的示例性系统600,其中在这些计算设备上可以实现本公开内容的各方面。系统600可以是用于日志数据评估和基于日志数据评估的结果进行后续处理的示例性系统。系统600的组件可以是硬件组件或者在硬件组件上实现和/或由硬件组件执行的软件。举例而言,系统600可以包括硬件组件(例如,ASIC、用于执行/运行OS的其它设备)和在硬件上运行的软件组件(例如,应用程序、应用程序接口、模块、虚拟机、运行时库)中的任何一个。在一个例子中,示例性系统600可以提供用于软件组件运行的环境,遵守为操作设置的约束,并利用系统/处理设备的资源或设施,其中组件可以是在一个或多个处理设备上运行的软件(例如,应用、程序、模块)。例如,可以在诸如计算机、移动设备(例如,智能电话/电话、平板设备)和/或任何其它类型的设备之类的处理设备上执行软件(例如,应用、操作指令、模块)。举一个处理设备操作环境的例子,参考图1-3的操作环境。系统600的一个或多个组件可以被配置为执行至少在图4A的描述中所描述的方法400和图5的描述中所描述的方法500里描述的处理操作中的任何处理操作。在其它例子中,本文所公开的系统的组件可以分布在多个设备上。示例性系统600包括应用程序组件606,后者还包括:内容建议组件608和平台资源组件610。
一个或多个数据存储/存贮设备或其它存储器可以与系统600相关联。例如,系统600的组件可以具有与其相关联的一个或多个数据存储612(下面描述)。与系统600的组件相关联的数据可以存储在其上以及由系统600的组件执行的处理操作/指令。此外,呈现系统600的应用程序组件可以与其它应用服务进行接口。可以将应用服务提供为前面提到的平台资源。应用服务可以是可以扩展系统600的一个或多个组件的功能的任何资源。应用服务可以包括但不限于:个人智能助理服务、生产力应用、网络搜索服务、电子邮件应用、日历、设备管理服务、地址簿服务、信息服务、业务线(LOB)管理服务、客户关系管理(CRM)服务、调试服务、会计服务、工资单服务和/或由第三方托管或控制的服务和/或网站、以及其它示例。应用服务还可以包括由诸如社交媒体网站、照片共享网站、视频和音乐流媒体网站、搜索引擎网站、体育、新闻或娱乐网站等等之类的第三方托管的其它网站和/或应用程序。应用服务还可以与系统600的组件相关联地提供分析、数据编译和/或存储服务等等。
系统600可以包括一个或多个存贮设备612,其可以存储与系统600的一个或多个组件的操作相关联的数据。举例而言,存贮设备612可以与系统600的其它组件进行接口。与系统600的任何组件相关联的数据可以存储在存贮设备612中,其中组件可以通过包括云计算平台和基础设施服务的分布式网络连接到存贮设备612。示例性存贮设备612可以是第一方源、第二方源和第三方源中的任何一个。存贮设备612是任何物理或虚拟存储空间。存贮设备612可以存储用于处理由系统600的组件执行的操作的任何数据、保留的来自处理操作的数据、存储的程序、代码或应用程序接口(API)、训练数据、针对系统600内部和外部的资源和知识数据的链接以及其它示例。此外,举例而言,系统600的组件可以在系统600的组件的处理操作中利用知识数据。系统600的一个或多个组件可以使用知识来改进任何应用程序组件606的处理,其中可以从系统600内部和外部的资源获得知识数据。举例而言,可以将知识数据维持在存贮设备612中,或者通过知识获取操作从系统600外部的一个或多个资源检索。
在图6中,处理设备602可以是包括至少一个处理器和至少一个存储器/存贮设备的任何设备。处理设备602的示例可以包括但不限于:诸如桌面型计算机、服务器、电话、平板设备、平板手机、平板电脑、膝上型计算机、手表之类的处理设备、以及电子组件(具有一个或多个处理器或电路的设备)的任何其它集合。在一个例子中,处理设备602可以是正在执行应用/服务的用户的设备。在一些例子中,处理设备602可以经由网络604与应用程序组件606进行通信。在一个方面,网络404是分布式计算网络(例如,互联网)。应用服务可以经由网络604与应用程序组件606进行通信。处理设备602可以是如图1-3的描述中所描述的设备。在一些例子中,处理设备602可以包括多个连接的设备。处理设备602是用户计算设备的例子。
处理设备602可以执行包括通过用户帐户来访问应用程序/服务的能力的处理操作。在一个例子中,处理设备602可以将经认证的用户连接到示例性应用程序/服务,其为该应用程序/服务的一个或多个用户存储用户数据。示例性存储应用程序/服务可以向处理设备602的用户提供对存储在示例性数据中心中的数据的访问。在一个例子中,处理设备602可以经由分布式网络与存贮设备612连接,该分布式网络可以向用户提供对用户数据的访问。一个或多个租赁者资源(例如,租赁者资源A、租赁者资源B、租赁者资源C等)可以与处理设备602相关联。租赁者资源可以是与处理设备和/或分布式网络服务相关联的用户帐户。与租赁者资源相关联的数据可以存储在存贮设备612上,其中处理设备602和/或其它处理设备可以利用租赁者帐户来访问存储的数据。
应用程序组件606是一些组件的集合,这些组件进行接口以使得能够应用示例性词序建议模型,并且基于词序建议模型的应用来提供对于电子文档的内容的建议。在图4A-5的前述描述中,已经描述了词序建议模型的例子。如上所述,应用程序组件606可以包括:内容建议组件608和平台资源组件610。例如,可以通过分布式网络将与任何应用程序组件相关联的处理提供为服务。
内容建议组件608可以被配置为提供如前所述的示例性词序建议模型。诸如词序建议模型404(图4A)之类的示例性词序建议模型可以在示例性生产力应用程序内提供,或者可以提供为用于向生产力应用程序、计算设备的操作系统(OS)等等提供示例性建议的服务。生产力应用程序是用于提供示例性电子文档的任何应用程序。生产力应用程序的例子包括但不限于:web浏览器应用程序、文字处理应用程序、电子表格应用程序、演示应用程序、笔记应用程序等等。在替代的例子中,针对拼写错误词语的建议的列表可以由分布式网络的一个或多个设备生成。在示例性列表由分布式服务生成的例子中,可以将列表发送到客户端计算设备,例如用于与执行的生产力应用程序一起显示。
平台资源组件610是被配置为与内容建议组件608进行接口以扩展可由内容建议组件608访问的功能的组件。当正在执行示例性词序建议模型时,可以利用平台资源组件610提供用于信息检索、访问平台资源(例如,前面描述的应用服务)的其它功能。在将词序建议模型提供为服务的例子中,示例性平台资源组件610可以与内容建议组件608进行接口,以实现与诸如生产力应用程序之类的应用程序/服务的通信。
贯穿本说明书对于“一个例子”或者“某个例子”的引用,意味着在至少一个例子中包括具体描述的特征、结构或特性。因此,这些短语的使用可以不仅仅指代一个例子。此外,在一个或多个例子中,可以以任何适当的方式来组合所描述的特征、结构或特性。
但是,相关领域的普通技术人员可以认识到,可以在不具有这些具体细节中的一个或多个的情况下或者利用其它方法、资源、材料等等,来实现这些例子。在其它实例中,为了避免对这些例子的观察方面造成模糊,没有详细地示出或描述众所周知的结构、资源或操作。
虽然已经说明和描述了样本示例和应用,但应当理解的是,这些例子并不限于上述的精确配置和资源。对于本领域普通技术人员来说显而易见的是,在不脱离所主张的示例的范围的基础上,可以对本文所公开的方法和系统的布置、操作和细节进行各种修改、改变和变化。

Claims (15)

1.一种方法,其包括:
访问包括拼写错误词语的电子文档;
基于词序建议模型的应用来确定针对所述拼写错误词语的词语建议的顺序,所述词序建议模型基于以下操作来分析所述拼写错误词语:
对于所述电子文档内的内容的未格式化状态的分析,以及
对于与所述电子文档的所述内容相关联的格式化的分析;以及提供针对所述拼写错误词语的建议的列表,其中,所述列表中包括的词语建议的顺序是基于所述词序建议模型的所述应用来确定的,
其中,对于所述电子文档内的内容的未格式化状态的所述分析包括:评估在所述电子文档中使用的词语的频率,并且基于对于所述词语的频率的评估来确定用于对所述列表的词语建议进行排序的优先级。
2.根据权利要求1所述的方法,其中,所述词序建议模型的所述应用还基于对于与所述电子文档相关联的文件元数据的分析来分析所述拼写错误词语,并且其中,在分析所述文件元数据时,所述词序建议模型的所述应用评估所述电子文档的标题和与所述电子文档相对应的文件路径信息。
3.根据权利要求1所述的方法,其中,对于与所述电子文档的所述内容相关联的所述格式化的所述分析包括:基于与所述电子文档的特定词语相关联的格式化来评估所述特定词语的重要性,并且基于对于所述格式化的评估来确定用于对所述列表的词语建议进行排序的优先级。
4.根据权利要求1所述的方法,还包括:
接收从所述列表中选择词语建议的输入,并且使用所选择的词语建议来替换所述拼写错误词语。
5.根据权利要求1所述的方法,还包括:
接收用于提供针对所述拼写错误词语的建议的请求,并且其中,所述列表是基于所接收的请求来提供的。
6.根据权利要求1所述的方法,其中,所述确定还包括:基于所述词序建议模型的所述应用来重新排序生成的建议的列表,并且其中,所述重新排序包括:基于所述词序建议模型的所述应用,添加至少一个新词语建议。
7.一种系统,包括:
至少一个处理器;以及
与所述至少一个处理器操作地连接的存储器,所述存储器存储有计算机可执行指令,当所述计算机可执行指令被所述至少一个处理器执行时,使所述至少一个处理器执行包括以下的方法:
访问包括拼写错误词语的电子文档;
基于词序建议模型来确定针对所述拼写错误词语的词语建议的顺序,所述词序建议模型基于以下操作来分析所述拼写错误词语:
对于所述电子文档内的内容的未格式化状态的分析,以及
对于与所述电子文档的所述内容相关联的格式化的分析;以及
提供针对所述拼写错误词语的词语建议的列表,其中,所述列表中包括的词语建议的顺序是基于所述词序建议模型的所述应用来确定的,
其中,对于所述电子文档内的内容的未格式化状态的所述分析包括:评估在所述电子文档中使用的词语的频率,并且基于对于所述词语的频率的评估来确定用于对所述列表的词语建议进行排序的优先级。
8.根据权利要求7所述的系统,其中,所述词序建议模型的所述应用还基于对于与所述电子文档相关联的文件元数据的分析来分析所述拼写错误词语,并且其中,在分析所述文件元数据时,所述词序建议模型的所述应用评估所述电子文档的标题和与所述电子文档相对应的文件路径信息。
9.根据权利要求7所述的系统,其中,对于与所述电子文档的所述内容相关联的所述格式化的所述分析包括:基于与所述电子文档的特定词语相关联的格式化来评估所述特定词语的重要性,并且基于对于所述格式化的评估来确定用于对所述列表的词语建议进行排序的优先级。
10.根据权利要求7所述的系统,其中,由所述至少一个处理器执行的所述方法还包括:
接收从所述列表中选择词语建议的输入,并且使用所选择的词语建议来替换所述拼写错误词语。
11.根据权利要求7所述的系统,其中,由所述至少一个处理器执行的所述方法还包括:
接收用于提供针对所述拼写错误词语的建议的请求,并且其中,所述列表是基于所接收的请求来提供的。
12.根据权利要求7所述的系统,其中,所述确定还包括:基于所述词序建议模型的所述应用来重新排序生成的建议的列表,并且其中,所述重新排序包括:基于所述词序建议模型的所述应用,添加至少一个新词语建议。
13.一种存储计算机可执行指令的计算机可读介质,当所述计算机可执行指令由至少一个处理器执行时,使所述至少一个处理器执行包括以下的方法:
访问包括拼写错误词语的电子文档;
基于词序建议模型的应用来确定针对所述拼写错误词语的词语建议的顺序,所述词序建议模型基于以下操作来分析所述拼写错误词语:
对于所述电子文档内的内容的未格式化状态的分析,以及
对于与所述电子文档的所述内容相关联的格式化的分析;以及提供针对所述拼写错误词语的词语建议的列表,其中,所述列表中包括的词语建议的顺序是基于所述词序建议模型的所述应用来确定的,
其中,对于所述电子文档内的内容的未格式化状态的所述分析包括:评估在所述电子文档中使用的词语的频率,并且基于对于所述词语的频率的评估来确定用于对所述列表的词语建议进行排序的优先级。
14.根据权利要求13所述的计算机可读介质,其中,所述词序建议模型的所述应用还基于对于与所述电子文档相关联的文件元数据的分析来分析所述拼写错误词语,并且其中,在分析所述文件元数据时,所述词序建议模型的所述应用评估所述电子文档的标题和与所述电子文档相对应的文件路径信息。
15.根据权利要求13所述的计算机可读介质,其中,所述确定还包括:基于所述词序建议模型的所述应用来重新排序生成的建议的列表,并且其中,所述重新排序包括:基于所述词序建议模型的所述应用,添加至少一个新词语建议。
CN201780077614.1A 2016-12-15 2017-12-08 考虑频率和格式化信息的词序建议 Active CN110073349B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/380,840 2016-12-15
US15/380,840 US10089297B2 (en) 2016-12-15 2016-12-15 Word order suggestion processing
PCT/US2017/065217 WO2018111702A1 (en) 2016-12-15 2017-12-08 Word order suggestion taking into account frequency and formatting information

Publications (2)

Publication Number Publication Date
CN110073349A CN110073349A (zh) 2019-07-30
CN110073349B true CN110073349B (zh) 2023-10-10

Family

ID=60915628

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780077614.1A Active CN110073349B (zh) 2016-12-15 2017-12-08 考虑频率和格式化信息的词序建议

Country Status (4)

Country Link
US (2) US10089297B2 (zh)
EP (1) EP3555763A1 (zh)
CN (1) CN110073349B (zh)
WO (1) WO2018111702A1 (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11165694B2 (en) * 2018-07-31 2021-11-02 Mcafee, Llc Methods, systems, articles of manufacture and apparatus to identify applications
US11093510B2 (en) 2018-09-21 2021-08-17 Microsoft Technology Licensing, Llc Relevance ranking of productivity features for determined context
US11163617B2 (en) * 2018-09-21 2021-11-02 Microsoft Technology Licensing, Llc Proactive notification of relevant feature suggestions based on contextual analysis
US11244112B1 (en) 2019-04-26 2022-02-08 Bank Of America Corporation Classifying and grouping sentences using machine learning
US11783005B2 (en) 2019-04-26 2023-10-10 Bank Of America Corporation Classifying and mapping sentences using machine learning
US11423231B2 (en) 2019-08-27 2022-08-23 Bank Of America Corporation Removing outliers from training data for machine learning
US11526804B2 (en) 2019-08-27 2022-12-13 Bank Of America Corporation Machine learning model training for reviewing documents
US11556711B2 (en) 2019-08-27 2023-01-17 Bank Of America Corporation Analyzing documents using machine learning
US11449559B2 (en) 2019-08-27 2022-09-20 Bank Of America Corporation Identifying similar sentences for machine learning
US10915697B1 (en) * 2020-07-31 2021-02-09 Grammarly, Inc. Computer-implemented presentation of synonyms based on syntactic dependency

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006133136A2 (en) * 2005-06-03 2006-12-14 Microsoft Corporation Structuring data for word processing documents
CN103885938A (zh) * 2014-04-14 2014-06-25 东南大学 基于用户反馈的行业拼写错误检查方法
CN105528339A (zh) * 2014-10-20 2016-04-27 联想(新加坡)私人有限公司 基于上下文的文本校正的方法和设备
CN105981005A (zh) * 2013-12-13 2016-09-28 纽昂斯通信有限公司 使用统计语言模型改进文本输入

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5572423A (en) 1990-06-14 1996-11-05 Lucent Technologies Inc. Method for correcting spelling using error frequencies
US5761689A (en) 1994-09-01 1998-06-02 Microsoft Corporation Autocorrecting text typed into a word processing document
US5649222A (en) * 1995-05-08 1997-07-15 Microsoft Corporation Method for background spell checking a word processing document
US6085206A (en) * 1996-06-20 2000-07-04 Microsoft Corporation Method and system for verifying accuracy of spelling and grammatical composition of a document
US6131102A (en) 1998-06-15 2000-10-10 Microsoft Corporation Method and system for cost computation of spelling suggestions and automatic replacement
US6918086B2 (en) 2000-03-28 2005-07-12 Ariel S. Rogson Method and apparatus for updating database of automatic spelling corrections
CA2493443C (en) 2002-07-23 2011-07-19 Research In Motion Limited Systems and methods of building and using custom word lists
US7207004B1 (en) 2004-07-23 2007-04-17 Harrity Paul A Correction of misspelled words
US20060190447A1 (en) 2005-02-22 2006-08-24 Microsoft Corporation Query spelling correction method and system
US7584093B2 (en) * 2005-04-25 2009-09-01 Microsoft Corporation Method and system for generating spelling suggestions
US7797629B2 (en) 2006-04-05 2010-09-14 Research In Motion Limited Handheld electronic device and method for performing optimized spell checking during text entry by providing a sequentially ordered series of spell-check algorithms
US9275036B2 (en) * 2006-12-21 2016-03-01 International Business Machines Corporation System and method for adaptive spell checking
US7912700B2 (en) * 2007-02-08 2011-03-22 Microsoft Corporation Context based word prediction
US8612469B2 (en) * 2008-02-21 2013-12-17 Globalenglish Corporation Network-accessible collaborative annotation tool
US20090217196A1 (en) * 2008-02-21 2009-08-27 Globalenglish Corporation Web-Based Tool for Collaborative, Social Learning
US20090249198A1 (en) * 2008-04-01 2009-10-01 Yahoo! Inc. Techniques for input recogniton and completion
US20100114887A1 (en) * 2008-10-17 2010-05-06 Google Inc. Textual Disambiguation Using Social Connections
US20100318542A1 (en) * 2009-06-15 2010-12-16 Motorola, Inc. Method and apparatus for classifying content
US8316030B2 (en) * 2010-11-05 2012-11-20 Nextgen Datacom, Inc. Method and system for document classification or search using discrete words
US8438011B2 (en) 2010-11-30 2013-05-07 Microsoft Corporation Suggesting spelling corrections for personal names
US8805095B2 (en) 2010-12-03 2014-08-12 International Business Machines Corporation Analysing character strings
US8626681B1 (en) * 2011-01-04 2014-01-07 Google Inc. Training a probabilistic spelling checker from structured data
US20120297294A1 (en) * 2011-05-17 2012-11-22 Microsoft Corporation Network search for writing assistance
US9519883B2 (en) * 2011-06-28 2016-12-13 Microsoft Technology Licensing, Llc Automatic project content suggestion
CN103917968A (zh) * 2011-08-15 2014-07-09 平等传媒有限公司 用于管理具有交互式评论流的评论网络的系统和方法
US8290772B1 (en) * 2011-10-03 2012-10-16 Google Inc. Interactive text editing
US8881005B2 (en) * 2012-04-20 2014-11-04 King Abdulaziz City For Science And Technology Methods and systems for large-scale statistical misspelling correction
US9218344B2 (en) * 2012-06-29 2015-12-22 Thomson Reuters Global Resources Systems, methods, and software for processing, presenting, and recommending citations
KR101648318B1 (ko) * 2012-07-19 2016-08-23 엠파이어 테크놀로지 디벨롭먼트 엘엘씨 통신 네트워크 상에 포스팅하기 위한 컨텐츠 제안
US8959109B2 (en) * 2012-08-06 2015-02-17 Microsoft Corporation Business intelligent in-document suggestions
US9384244B1 (en) * 2012-11-28 2016-07-05 BloomReach Inc. Search with autosuggest and refinements
US9411510B2 (en) * 2012-12-07 2016-08-09 Apple Inc. Techniques for preventing typographical errors on soft keyboards
US9489372B2 (en) * 2013-03-15 2016-11-08 Apple Inc. Web-based spell checker
US9400840B2 (en) * 2013-03-25 2016-07-26 Salesforce.Com, Inc. Combining topic suggestions from different topic sources to assign to textual data items
US9122376B1 (en) * 2013-04-18 2015-09-01 Google Inc. System for improving autocompletion of text input
US20140365206A1 (en) * 2013-06-06 2014-12-11 Xerox Corporation Method and system for idea spotting in idea-generating social media platforms
GB2520265A (en) * 2013-11-13 2015-05-20 Ibm Ranking Textual Candidates of controlled natural languages
US9760559B2 (en) * 2014-05-30 2017-09-12 Apple Inc. Predictive text input
US20160103835A1 (en) * 2014-10-10 2016-04-14 Wriber Inc. Method and system for ranking suggestions
US9569728B2 (en) * 2014-11-14 2017-02-14 Bublup Technologies, Inc. Deriving semantic relationships based on empirical organization of content by users
US10049149B2 (en) * 2015-09-29 2018-08-14 Oath Inc. Computerized system and method for search query auto-completion
US10796233B2 (en) * 2016-10-10 2020-10-06 Facebook, Inc. Systems and methods for suggesting content

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006133136A2 (en) * 2005-06-03 2006-12-14 Microsoft Corporation Structuring data for word processing documents
CN105981005A (zh) * 2013-12-13 2016-09-28 纽昂斯通信有限公司 使用统计语言模型改进文本输入
CN103885938A (zh) * 2014-04-14 2014-06-25 东南大学 基于用户反馈的行业拼写错误检查方法
CN105528339A (zh) * 2014-10-20 2016-04-27 联想(新加坡)私人有限公司 基于上下文的文本校正的方法和设备

Also Published As

Publication number Publication date
US10565303B2 (en) 2020-02-18
US20180373690A1 (en) 2018-12-27
US20180173690A1 (en) 2018-06-21
EP3555763A1 (en) 2019-10-23
US10089297B2 (en) 2018-10-02
CN110073349A (zh) 2019-07-30
WO2018111702A1 (en) 2018-06-21

Similar Documents

Publication Publication Date Title
CN110073349B (zh) 考虑频率和格式化信息的词序建议
CN107924483B (zh) 通用假设排序模型的生成与应用
CN108139862B (zh) 多窗口键盘
US10733372B2 (en) Dynamic content generation
CN107924679B (zh) 计算机实施的方法、输入理解系统和计算机可读存储设备
US20200401983A1 (en) Extracting and surfacing user work attributes from data sources
US10846526B2 (en) Content based transformation for digital documents
US10929458B2 (en) Automated presentation control
CN111247778A (zh) 使用web智能的对话式/多回合的问题理解
US11681760B2 (en) Cross-application ingestion and restructuring of content
CN107112009B (zh) 用于生成混淆网络的方法、系统和计算机可读存储设备
US11113447B2 (en) Cross-application ingestion and restructuring of slide presentation content
US20230033622A1 (en) Context-aware observational entity recognition and capture
EP3403197B1 (en) Content authoring inline commands
US10546030B2 (en) Low latency pre-web classification
US20200042587A1 (en) Cross-application ingestion and restructuring of spreadsheet content
US20200042579A1 (en) Conversational user interface logic for cross-application ingestion and restructuring of content
US10534780B2 (en) Single unified ranker
CN108885535B (zh) 多窗口虚拟键盘
US11036356B2 (en) Service backed digital ruled paper templates
US20220414334A1 (en) Post-model filtering of predictive text
EP4381440A1 (en) Context-aware observational entity recognition and capture

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant