CN108664142B - 具有文档间自学习功能的输入法 - Google Patents

具有文档间自学习功能的输入法 Download PDF

Info

Publication number
CN108664142B
CN108664142B CN201710210513.9A CN201710210513A CN108664142B CN 108664142 B CN108664142 B CN 108664142B CN 201710210513 A CN201710210513 A CN 201710210513A CN 108664142 B CN108664142 B CN 108664142B
Authority
CN
China
Prior art keywords
word
electronic document
words
response
input
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710210513.9A
Other languages
English (en)
Other versions
CN108664142A (zh
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.)
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
Priority to CN201710210513.9A priority Critical patent/CN108664142B/zh
Publication of CN108664142A publication Critical patent/CN108664142A/zh
Application granted granted Critical
Publication of CN108664142B publication Critical patent/CN108664142B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/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

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Machine Translation (AREA)

Abstract

本公开的各种实施例提供了一种由输入法模块实现的方法。在该输入方法中,在第一电子文档中检测输入。响应于该输入对应于在所述输入法模块的已有词库之外、但是被包含在特定于第二电子文档的定制词库中的第一词,从定制词库获取第一词,第二电子文档与所述第一电子文档相关联。此外,将第一词显示在输入法模块的候选词窗口中,以供用户选择。

Description

具有文档间自学习功能的输入法
技术领域
本公开的实施例涉及信息输入,并且更具体地,涉及具有文档间自学习功能的输入法。
背景技术
输入法模块或简称输入法允许用户向诸如移动设备或者个人计算机(PC)之类的电子设备通过字符、表情等信息。在中文等输入法中,用户通过输入拼音字母来输入词。如已知的,很多输入法支持用户一次输入包含多个单字的词。因为在汉语中包含大量同音词,因此用户通常需要在对应于相同拼音的多个候选词中选择他/她想要输入的词。为此,已经提出了词频调整基数。
另外,当用户输入法模块的词库中没有的“新词”时,用户可能不得不逐个输入词中所包含的单字。为此,有些输入法能够随着用户的输入而学习用户创造的新词。这些学习到的新词可以被保存在词库中,例如特定于用户的新词词库中。这样,在用户随后在向例如其他文档输入之前创建的新词时,这些新词就可以作为候选词被提示给用户,从而方便用户的输入过程。
发明内容
为了进一步改进用户在使用输入法时的效率和体验,本公开的各种实施例提供了一种由输入法模块实现的方法。根据该方法,可以在第一电子文档中检测用户输入。如果检测到用户输入对应于在输入法模块的已有词库之外、但是被包含在特定于不同的第二电子文档的定制词库中的第一词,便可以从定制词库获取第一词并且将其显示在输入法模块的候选词窗口中以供用户选择,其中第二电子文档与所述第一电子文档不同并且彼此关联。这样,不需要随着用户的输入而在相对较长的时间段内学习新词,而是可以直接基于从已有的一个或多个参考电子文档的内容中学习到的新词,来辅助用户在当前电子文档中的输入,从而实现跨文档的新词学习。
提供发明内容部分是为了简化的形式来介绍对概念的标识,其在下文的具体实施方式中将被进一步描述。发明内容部分无意标识要求保护的主题的关键特征或主要特征,也无意限制要求保护的主题的范围。
附图说明
图1是示出根据本公开的实施例的计算机系统图;
图2示出了根据本公开的一个实施例的第一电子文档的示意图;
图3示出了根据本公开的一个实施例的显示在移动电话显示器上的第一电子文档的示意图;
图4示出了传统输入方法的用户界面;
图5示出了根据本公开的一个实施例的输入方法的流程图;
图6示出了根据本公开的一个实施例的输入方法的流程图;
图7示出了根据本公开的一个实施例的输入方法的用户界面;
图8示出了根据本公开的一个实施例的输入方法的用户界面;以及
图9示出了根据本公开的一个实施例的输入方法的用户界面。
这些附图中,相同或相似参考符号用于表示相同或相似元素。
具体实施方式
现在将参照若干示例实施例来论述本公开。应当理解,论述了这些实施例仅是为了使得本领域普通技术人员能够更好地理解且因此实现本公开,而不是暗示对本公开的范围的任何限制。
如本文所使用的,术语“包括”及其变体要被解读为意味着“包括但不限于”的开放式术语。术语“基于”要被解读为“至少部分地基于”。术语“一个实施例”和“一种实施例”要被解读为“至少一个实施例”。术语“另一个实施例”要被解读为“至少一个其他实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。
以下参考附图来说明本公开的基本原理和若干示例实施例。图1示出了能够实施本公开的多个实施例的设备100的框图。应当理解,图1所示出的设备100仅仅是示例性的,而不应当构成对本公开所描述的实施例的功能和范围的任何限制。如图1所示,设备100包括通用计算设备形式的设备100。设备100的组件可以包括但不限于一个或多个处理器或处理单元110、存储器120、存储设备130、一个或多个通信单元140、一个或多个输入设备150以及一个或多个输出设备160。
在一些实施例中,设备100可以被实现为各种用户终端或服务终端。服务终端可以是各种服务提供方提供的服务器、大型计算设备等。用户终端诸如是任意类型的移动终端、固定终端或便携式终端,包括移动手机、多媒体计算机、多媒体平板、互联网节点、通信器、台式计算机、膝上型计算机、笔记本计算机、上网本计算机、平板计算机、个人通信系统(PCS)设备、个人导航设备、个人数字助理(PDA)、音频/视频播放器、数码相机/摄像机、定位设备、电视接收器、无线电广播接收器、电子书设备、游戏设备或者其任意组合,包括这些设备的配件和外设或者其任意组合。还可预见到的是,设备100能够支持任意类型的针对用户的接口(诸如“可佩戴”电路等)。
处理单元110可以是实际或虚拟处理器并且能够根据存储器120中存储的程序来执行各种处理。在多处理器系统中,多个处理单元并行执行计算机可执行指令,以提高设备100的并行处理能力。处理单元110也可以被称为中央处理单元(CPU)、微处理器、控制器、微控制器。
设备100通常包括多个计算机存储介质。这样的介质可以是设备100可访问的任何可以获得的介质,包括但不限于易失性和非易失性介质、可拆卸和不可拆卸介质。存储器120可以是易失性存储器(例如寄存器、高速缓存、随机访问存储器(RAM))、非易失性存储器(例如,只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、闪存)或其某种组合。存储器120可以包输入法模块122,其被配置为执行本文所描述的各种实施例的功能。主语,在本公开中,“输入法”、“输入法模块”和“输入法平台”这两个术语可互换使用。输入法模块122可以由处理单元110访问和运行,以实现相应功能。存储设备130可以是可拆卸或不可拆卸的介质,并且可以包括机器可读介质,其能够用于存储信息和/或数据并且可以在设备100内被访问。
通信单元140实现通过通信介质与另外的计算设备进行通信。附加地,设备100的组件的功能可以以单个计算集群或多个计算机器来实现,这些计算机器能够通过通信连接进行通信。因此,设备100可以使用与一个或多个其他服务器、个人计算机(PC)或者另一个一般网络节点的逻辑连接来在联网环境中进行操作。设备100还可以根据需要通过通信单元140与一个或多个外部设备(未示出)进行通信,外部设备诸如存储设备、显示设备等,与一个或多个使得用户与设备100交互的设备进行通信,或者与使得设备100与一个或多个其他计算设备通信的任何设备(例如,网卡、调制解调器等)进行通信。这样的通信可以经由输入/输出(I/O)接口(未示出)来执行。
输入设备150可以是一个或多个各种输入设备,例如鼠标、键盘、触摸屏、追踪球、语音输入设备等。输出设备160可以是一个或多个输出设备,例如显示器、扬声器、打印机等。
下面以中文拼音输入法为例来讨论本公开的实施例的原理。然而,需要指出,本公开并不旨在限定输入法的具体类型。例如,用于英文等基于字母的语言或者日文等基于字根的语言的输入法均适用本公开的实施例。
用户可以借助于键盘等输入设备150输入英文、拼音字母或字根。输入法模块122中可以从输入设备150接收用户输入,并且将输出(例如,候选词等)提供给显示器等输出设备160以供用户选择。将会理解,输入法模块122与输入和输出模块150和160之间的通信可借助于设备100上的操作系统(OS)所提供的接口来实现。这种接口的示例包括但不限于各种应用编程接口(API)。
图1中还示意性地示出了第二电子文档200(也称“参考电子文档”)和第一电子文档300(也称“目标电子文档”)。总体上,
参考电子文档200与目标电子文档300是相互之间具有关联的两个不同文档(关联通过双向箭头250表示)。输入法模块122在目标电子文档300中检测用户输入,然后用户可以直接基于从参考电子文档200的内容210中学习到的新词,来辅助用户在目标电子文档300中的输入,从而实现跨文档的新词学习。
图2示出了根据本公开的一个实施例的显示在计算机显示器160上的第一电子文档200的示意图。图3示出了根据本公开的一个实施例的显示在移动设备(例如,智能手机)的显示器160上的第一电子文档200的示意图。
在本公开的各种实施例中,参考电子文档200是能够从中获取文字信息的任何形式的文档,诸如word文档、web页面、电子列表,等等。根据本公开的实施例,可以从参考电子文档中的任何文字部分获取词。例如,在如图2所示的示例中,可以从正文部分210获取一个或多个词,也可以从结尾处的参考文献部分、页眉或页脚(未示出)等任何部分获取词。
在一些实施例中,参考电子文档200可以是用户在设备100的本地创建的。备选地,在某些实施例中,参考电子文档200可以是该用户从设备100的远程接收到的文档,诸如通过电子邮件接收到的电子文档或通过网络(例如,互联网)而在线打开的电子文档。
以图2所示的参考电子文档200为例,该电子文档200包含如下内容210:
弦理论的雏形是在1968年由维内奇诺(Gabriele
Veneziano)发明。有说法称,他原本是要找能描述
原子核内的强作用力的数学函数,然后在一本老旧
的数学书里找到了有200年历史的欧拉贝他函数,
这函数能够描述他所要求解的强作用力。
现在,用户希望通过传统输入方法并参考该电子文档200中的内容210来对不同与该参考电子文档200的目标电子文档300进行编辑或后续输入,如在新建的空白word文档中输入文字。例如,在一个示例中,用户希望在一个word文档中输入在上述参考电子文档200的内容210中出现的词“维内奇诺”。如图4所示,在传统输入法中,用户首先需要输入与“维内奇诺”相对应的拼音字母序列“weineiqinuo”410。然后,传统输入法通过其界面400的候选词窗口返回一些候选词。例如,这些候选词可以包括“胃内奇诺”、“胃内”、“维内”等。
可以看出,在传统的输入法模块下,由于“维内奇诺”在大多数领域中并不常用,属于用户的自创新词,因此“维内奇诺”并没有作为候选词被显示出来。此时,用户不得不逐个选择“维”、“内”、“奇”、“诺”这四个单字,这增加了输入负担。在用户最初几次输入这个词时,已知的新词学习功能无法将用户期望的词显示在候选词窗口中。这不利于操作效率和用户体验,特别是对于一些相对生僻但是却在特定领域(例如,数学、物理学等学科)中需要频繁输入的词。
本公开的实施例所提出的输入法包括文档间(也称为跨文档)的自学习功能,即,在用户没有察觉或无需用户获知的情况下,从已有一个或几个参考电子文档中的内容中自动学习主词库等已有词库以外的一些所谓的“新词”。这样,当用户在参考这些文档而对另外的目标电子文档的后续编辑中需要再次输入这些新词时,这种自学习功能将主动地向用户推荐学习到的新词以供用户方便地选择。由此,显著提升操作效率和用户体验。
也就是说,不同于传统的随着用户输入过程而逐渐学习新词的“被动”学习,本公开的实施例可以直接从一个或多个参考电子文档中的已有内容中“主动地”学习新词,并随后将学习到的新词直接应用到这些参考电子文档相关联的目标电子文档的输入中。这样,新词学习的速度将会大幅提升。
图5示出了该输入法模块实现的方法500的流程图。将会理解,方法500可由输入法模块122来实现。图7示出了根据本公开的一个实施例的输入法模块122所提呈现的用户界面700。为了讨论方便,下文的描述仍然将参考图2所述的示例进行。
在510处,检测在目标电子文档300中的输入。例如,输入法模块122检测到用户在目标电子文档300中输入了拼音“weineiqinuo”710。作为响应,输入法模块122将检索在其已有词库之外、但是被包含在特定于参考电子文档200的定制词库中的词,来确定在该定制词库中是否存在与用户输入“weineiqinuo”710相对应的、先前从参考电子文档200中学习到的词。再次指出,该参考电子文档200是已经与目标电子文档300建立了关联的文档。
在520处,响应于在输入法模块122的定制词库中发现了与用户输入“weineiqinuo”710对应的词“维内奇诺”,于是从该定制词库获取该词。为讨论方便起见,将在520处由用户从定制词库获取的词称为“第一词”。接下来,在530处,将第一词“维内奇诺”显示在所述输入法模块122的候选词窗口中的例如第二位置处722,以供用户选择。
在某些实施例中,目标电子文档300与参考电子文档200之间的关联是响应于检测到预定义的关联条件而被建立的。在某些实施例中,关联条件包括从所述参考电子文档200向目标电子文档300的切换。注意,本文中所述的文档间“切换”应当被理解为既包含了直接切换也包含了间接切换。
作为一个示例,用户可能从上一时刻还在阅读的参考电子文档200(例如,web页面)直接切换到当前时刻待编辑的目标电子文档300(例如,word文档),而不经历任何其他中间过程或操作。又例如,用户可能需要不断地参考web页面才能完成对word文档的编辑。因此,用户可能会在web页面和待编辑的word文档之间不停地来回切换。
在另一些情况下,用户在切换到目标电子文档300之前可能会对参考电子文档200进行一些操作。例如,用户可能会将他/她感兴趣的一些内容复制到剪贴板中或将这些内容直接通过邮件或其他应用程序发送给他的/她的好友。在此之后,用户并不立即切换到待编辑的目标电子文档300,甚至可能会经历较长时间之后才切换到目标电子文档300。然而,需要指出的是,这种所谓的“间接”切换虽然可能经历较长的时间,但这并不妨碍在参考电子文档200与目标电子文档300之间建立关联。
本领域技术人员应当理解,用于在参考电子文档200与目标电子文档300之间建立关联的方式并不限于上述单独实施例,而是也可以通过一个或多个上述实施例的任意组合来实现。
如上所述,需要通过参考电子文档200中的已有内容来学习新词并形成特定于该参考电子文档的定制词库,以便用户在后续的、对与参考电子文档200相关联的目标电子文档300编辑时,从已形成定制词库中直接获取在参考电子文档200中出现的这些新词。以此方式,提高输入效率并改善用户体验。下面仍然参考图2和图3中的示例来描述从参考电子文档200的学习新词的过程。
图6示出了根据本公开的一个实施例的从参考电子文档学习新词的方法600的流程图。如图6所示,在610处,响应于检测到对参考电子文档200的操作而确定参考电子文档200中的一个或多个词。在某些实施例中,可以确定参考电子文档200中的当前交互位置,然后基于当前交互位置来确定所述一个或多个词。
图2中的光标220示出了用户与参考电子文档200的一个示例性交互位置,也即,光标220悬停在参考电子文档200上的一个位置。这种情况下,可以根据预先确定的算法或规则来确定该悬停位置的给定邻域内的一个或多个词。例如,在光标220悬停位置之前和之后的各1个、10个、20个或更多个字符。应当理解,这些数值仅仅是示例性的,无意以任何方式限制本公开的范围。
图3示出了显示在智能手机显示器300上的参考电子文档200的示例。在这种硬件环境下,虽然无法通过如图2中所示的光标220来确定交互位置(因为触摸显示器上可能并不存在光标),但仍然可以从例如用户手指的触摸位置来确定当前交互位置,从而基于用户的触摸位置来确定给定临域内的一个或多个词,以便输入法模块122从中选择出第一词。
这种基于交互位置的方式提供了一种较为智能的学习方式,即,不必在整篇文档(尤其是篇幅较长的文档)的范围内选择第一词,而是可以根据用户与参考电子文档200的特定的交互位置来预测出用户可能感兴趣的内容,并更加有针对性的进行学习。此外,这还节约了存储资源,避免输入法模块122占用过多的资源。
备选地或附加地,在某些实施例中,可以响应于检测到参考电子文档中的内容被复制到剪贴板中,从被复制的内容在参考电子文档中的给定邻域内获取一个或多个词。与上面基于交互位置的方式类似,可以从被复制的内容(例如,一个词或一段内容)之前和之后的各1个、10个、20个或更多个字符中获取一个或多个词。
在某些实施例中,也可以响应于检测到参考电子文档中的内容被复制到剪贴板中,从复制到剪贴板的全部内容中直接获取所述一个或多个词。
上述借助于剪贴板的功能,提供了一种更为可靠的学习方式。这是因为,与仅仅由光标或手指所指向的交互位置附近的内容相比,由用户复制到剪贴板中的内容(连同其邻域内的内容)很可能是用户更加感兴趣或真正感兴趣的内容。例如,图3中的区域211示意性地示出了已被复制到剪贴版中的内容。
本领域技术人员应当理解,用于从参考电子文档200获取一个或多个词的方法并不限于上述单独实施例,而是也可以通过一个或多个上述实施例的任意组合来实现。
在620处,从以上述方式中的任一方式确定的内容中获取一个或多个词,并继而从一个或多个词中获取第一词。在一些示例性实施例中,在620,可以通过切词来获取第一词。具体而言,继续参考图2,包含在参考电子文档200中的多个词(例如,文字段210中的词)可被分割为长度大于或等于两个汉字的多个词。此后,可以从分割后的多个词中选择未被包括在输入法模块122的已有词库中的词作为第一词。
在一个示例实施例中,对一个或多个词的分割可以通过诸如条件随机场(CRF)算法之类的基于人工智能的算法来实现,其具体过程是已知的,在此不再赘述。需要指出,CRF仅仅是一个示例,无意以任何方式限制本公开的范围。相反,任何能够实现词分割的方法均可与本公开的实施例结合使用,不论是现在已知的还是将来开发的。
在图2的示例中,借助于CRF算法,内容210可被分割如下:
弦理论/的/雏形/是/在/1968/年/由/维内奇诺/(/Gabriele//Veneziano/)/发明/。/有/说法/称/,/他/原本/是/要/找/能/描述/原子核/内/的/强/作用力/的/数学/函数/,/然后/在/一本/老旧/的/数学/书/里/找到了/有/200/年/历史/的/欧拉贝他/函数/,/这/函数/能够/描述/他/所要/求解/的/强/作用力/。/
然后,从分割后的上述内容210中提取词。例如,对于中文而言,可以提取长度大于或等于2的词。在这些长度大于或等于2的词之中,假设“弦理论”、“雏形”、“发明”、“说法”、“原本”、“描述”、“原子核”、“作用力”、“数学”、“函数”、“然后”、“一本”、“老旧”、“数学”、“找到了”、“历史”、“函数”、“能够”、“描述”、“所要”、“求解”和“作用力”是包含在已有词库(例如,主词库、热词库、或者任何其他特定于用户的词库)中。另一方面,“维内奇诺”和“欧拉贝他”则是在上述已有词库以外的第一词,并且因此可以被获取作为第一词。
继续参考图6,在630处,将在620处获取的第一词(在图2的例子中是“维内奇诺”和“欧拉贝他”)添加到输入法模块122的定制词库。如上所述,该定制词库特定于电子文档200并且不同于已有词库。
返回参考图5,输入法模块122可以继续操作以处理用户在目标电子文档300中的输入。如果在510处接收到与之前保存在定制词库中的任何一个词对应的用户输入,则在520处从定制词库中获取该词,并且在530将其作为候选词呈现给用户,以便用户选择从而输入到电子文档中。
图7示出了根据本公开的一个实施例的输入法模块122所呈现的用户界面700。继续参照图2中的示例,假设用户希望在目标电子文档300中再次输入“维内奇诺”。为此,用户通过界面700输入拼音“weineiqinuo”710。作为响应,输入法模块122检索定制词库,并且发现与用户输入对应的、先前从参考电子文档200中学习到的新词“维内奇诺”。该词由此从定制词库中被获取并且被呈现在用户界面700中。更具体地,在此例中,词“维内奇诺”被显示在候选词窗口720中的第二个位置722以供用户选择。
在某些实施例中,从参考电子文档200中学习到的新词在候选词窗口720中的位置,可以根据用户的交互行为而调整。例如,如果该新词被用户选择,则在用户在目标电子文档300中再次输入该词时,它可以被显示在候选词窗口720中的首位。这在图8中示出,在此示例中,响应于用户再次输入“weineiqinuo”710,对应的词“维内奇诺”被显示在候选词窗口720的首位721。
在某些情况下,从参考电子文档200的已有内容中学习到的新词可能由于各种原因而并不是用户所期望的。例如,学习到的新词中可能包含有拼写错误。由此,用户在后续操作中可能不会再选择该新词。在另一种情况下,学习到的新词可能本身就是比较冷僻的,因此被再次输入的可能性也就相对较低。此时,如果仍旧将这样词显示在候选窗口中比较靠前的位置,则会对用户的输入造成不良的影响。在本文中,可以将这种影响量化为对用户在认知心理学上的“干扰程度”,并且根据干扰程度来调整候选词的位置。
在某些实施例中,如果在620处学习到的第一词在作为候选词被显示之后并未被用户选择,则立刻决定后移该词在候选词窗口中被呈现的位置。也即,当下一次用户输入与该词对应的字母时,该词的位置被后移例如一位。当然,也可以根据任何适当的策略将候选词在候选词窗口中后移不止一位。
在另一些实施例中,如果所述第一词未被选择,可以基于该词先前未被选择的次数和其当前在候选窗口中所处的位置,来确定该词对用户输入造成的干扰程度。如果干扰程度达到了预定阈值,则可以将相关联的词从定制词库中移除。下面仍然参考图2来描述这样的实施例。
在图2所示的示例中,如果在学习到的第一词“维内奇诺”出现在候选词窗口之后,可以记录该词出现在候选词窗口中但未被选择的次数。同时,并且记录该词每一次出现在候选词窗口720中的位置。候选词窗口720中的每个位置被赋予相应的权重值。总体上,候选词窗口720中靠前的位置具有相对较高的权重。例如,表1示出了候选词位置的示例权重。在此示例中,候选词窗口中的第2个位置具有权重“3”,第3-5个位置具有权重“2”,第6-7个位置具有权重“1”,此后的所有位置(如果有的话)权重为“0”。应当理解,这些数值仅仅是示例性的,无意以任何方式限制本公开的范围。
表1.候选词窗口中的位置和对应权重
Figure BDA0001260870430000121
Figure BDA0001260870430000131
假设从定制词库中移除新词的阈值为6。在上表所示的示例中,如果定制词库中的一个给定词出现在候选词窗口中的第2位置处两次而不被选择时,其干扰程度可被认为是2*3=6,已经达到预定阈值,因此就将第一词从候选词窗口中删除。或者,当第一词出现在候选词窗口中的第3至5位置区间中的任何位置处三次而不被选择时,其干扰程度可被认为是3*2=6,已经达到预定阈值,因此就将第一词从候选词窗口中删除。或者,当第一词分别出现在候选词窗口中的第2位置处一次、出现在第3至5位置区间中的任何位置处一次、以及出现在第6至7位置区间中的任何位置处一次而均不被选择时,其干扰程度可被认为是1*3+1*2+1*1=6,已经达到预定阈值,因此就将第一词从候选词窗口中删除。当候选词出现在第7位置之后,可以将其视为不对用户的后续输入造成任何影响,因此,可以不删除出现在第7位置之后的第一词。
以此方式,上述包含拼写错误的词或是冷僻的词不会长时间占据候选词窗口而对用户的后续输入造成干扰,而是可以根据预先确定的阈值而被迅速地从候选词窗口中移除。
在某些实施例中,除了在620处学习的第一词之外,用户的后续输入还可能同时对应于输入法模块122的其他词库(例如,主词库)中的其他词,而这些词库的优先级可能高于定制词库。为讨论方便,这种更高级词库中的词被称为“第二词”。当第一词和第二词同时出现时,在某些实施例中,第二词在候选词窗口中被显示在第一词之前。
仍然参考图7,在此示例中,当用户输入“weineiqinuo”710时,同样与“weineiqinuo”710对应的、存储在已有词库中的第二词“胃内奇诺”被显示在学习到的第一词“维内奇诺”之前,并且只有当用户选择“维内奇诺”之后,才在用户下一次输入“weineiqinuo”710将第一词“维内奇诺”显示在第二词“胃内奇诺”之前,如图8所示。
上面描述的这种实施例可能是有益的。可以理解,相对于基于文档上下文学习而生成的定制词库而言,主词库等其他优先级更高的词库可能具有更高的可靠性和置信度。因此,将来自这些词库的候选词显示在来自定制词库的候选词之前,可能为用户更准确地推荐候选词。而且,以此方式,可以提供给用户多一次机会来确认学习到的词是否就是用户期望输入的正确的词。
上文已经以中文输入为例讨论了本公开的原理和思想。但是应当理解,上述本公开的实施例的原理同样适用于其他语言。下面仍然参考图6中所示的流程图600来描述英文输入实施例。此时。可以从已经被包含在参考电子文档中的一个或多个词中获取已有词库之外的单词或词组(框620)。例如,参考电子文档中包含有如下内容:
MircoSmartInput says:“Hello World”!
假设“MircoSmartInput”与“Hello World”分别为输入法模块122的已有词库以外的单词和词组。相应地,这些新词被添加到特定于文档的定制词库中(框630)。参见图9,当用户希望在该文档中再次输入“MircoSmartInput”而开始输入与其对应的英文字母序列的一部分时,例如“micro”910,可以从定制词库中检索到之前学习到的单词“MircoSmartInput”(框520),并且将其完整地显示在候选词窗口720中的例如第四位置724以供用户选择(框530)。类似地,用户可以方便地输入先前学习并且被保存在定制词库中的词。
应当注意,上文描述的所有特征均适用于汉语之外的其他语言,在此不再赘述。而且,汉语仅仅是基于字根的语言的示例,而英文是基于字母的语言的示例。本公开的实施例适用于任何其他语言,语言本身并不构成对本公开范围的任何限制。
以下列出了本公开的一些示例实施例。
根据一些实施例,提供了一种由输入法模块实现的方法。该方法包括:在第一电子文档中检测输入;响应于所述输入对应于在所述输入法模块的已有词库之外、但是被包含在特定于第二电子文档的定制词库中的第一词,从所述定制词库获取所述第一词,所述第二电子文档与所述第一电子文档相关联;以及将所述第一词显示在所述输入法模块的候选词窗口中,以供用户选择。
在一些实施例中,该方法还包括:响应于检测到预定义的关联条件,建立所述第一电子文档与所述第二电子文档之间的关联。
在一些实施例中,所述关联条件包括从所述第二电子文档向所述第一电子文档的切换。
在一些实施例中,该方法还包括:响应于检测到对所述第一电子文档的操作而确定所述第一电子文档中的一个或多个词;从确定的所述一个或多个词中获取所述第一词;以及将所述第一词添加到所述定制词库。
在一些实施例中,确定所述一个或多个词包括:确定所述第二电子文档中的当前交互位置;以及基于所述交互位置确定所述一个或多个词。
在一些实施例中,确定所述一个或多个词还包括:响应于检测到所述第二电子文档中的内容被复制到剪贴板中,从所述内容在所述第二电子文档的给定邻域内获取所述一个或多个词。
在一些实施例中,确定所述一个或多个词还包括:响应于检测到所述第二电子文档中的内容被复制到剪贴板中,从所述内容中获取所述一个或多个词。
在一些实施例中,该方法还包括:响应于所述第一词在至少一次后续操作中未被选择,降低所述第一词在所述候选词窗口中被呈现的位置。
在一些实施例中,降低所述第一词在所述候选词窗口中被呈现的位置包括:响应于所述第一词未被选择,基于所述第一词先前未被选择的次数和所述第一词当前在所述候选窗口中的位置,来确定所述第一词对用户输入造成的干扰程度;响应于所述干扰程度达到预定阈值,从所述定制词库中移除所述第一词。
在一些实施例中,所述已有词库的优先级高于所述定制词库,该方法还包括:响应于所述输入还与所述输入法模块的已有词库中不同于所述第一词的第二词相关联,在所述候选词窗口中在所述第一词之前显示所述第二词。
在一些实施例中,所述第一词为汉字并且与所述第一词相关联的输入为至少一个拼音字母,并且其中获取所述第一词包括:通过对所述电子文档中包含的内容进行分词来获得所述一个或多个词;以及从所述一个或多个词中选择所述已有词库以外的词作为所述第一词。
根据一些实施例,提供了一种设备,该设备包括:处理单元;以及存储器,耦合至所述处理单元并且存储有指令,所述指令在由所述处理单元执行时执行以下动作:在第一电子文档中检测输入;响应于所述输入对应于在所述输入法模块的已有词库之外、但是被包含在特定于第二电子文档的定制词库中的第一词,从所述定制词库获取所述第一词,所述第二电子文档与所述第一电子文档相关联;以及将所述第一词显示在所述输入法模块的候选词窗口中,以供用户选择。
在一些实施例中,所述动作还包括:响应于检测到预定义的关联条件,建立所述第一电子文档与所述第二电子文档之间的关联。
在一些实施例中,所述关联条件包括从所述第二电子文档向所述第一电子文档的切换。
在一些实施例中,所述动作还包括:响应于检测到对所述第一电子文档的操作而确定所述第一电子文档中的一个或多个词;从确定的所述一个或多个词中获取所述第一词;以及将所述第一词添加到所述定制词库。
在一些实施例中,确定所述一个或多个词包括:确定所述第二电子文档中的当前交互位置;以及基于所述交互位置确定所述一个或多个词。
在一些实施例中,确定所述一个或多个词还包括:响应于检测到所述第二电子文档中的内容被复制到剪贴板中,从所述内容在所述第二电子文档的给定邻域内获取所述一个或多个词。
在一些实施例中,确定所述一个或多个词还包括:响应于检测到所述第二电子文档中的内容被复制到剪贴板中,从所述内容中获取所述一个或多个词。
根据一些实施例,提供了一种计算机程序产品。该计算机程序产品被有形地存储在非瞬态计算机可读介质上并且包括机器可执行指令,所述机器可执行指令在被执行时使机器执行以下动作:在第一电子文档中检测输入;响应于所述输入对应于在所述输入法模块的已有词库之外、但是被包含在特定于第二电子文档的定制词库中的第一词,从所述定制词库获取所述第一词,所述第二电子文档与所述第一电子文档相关联;以及将所述第一词显示在所述输入法模块的候选词窗口中,以供用户选择。
在一些实施例中,所述动作还包括:响应于检测到预定义的关联条件,建立所述第一电子文档与所述第二电子文档之间的关联。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
此外,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。

Claims (19)

1.一种由输入法模块实现的方法,包括:
在第一电子文档中检测输入;
响应于所述输入对应于在所述输入法模块的已有词库之外、但是被包含在特定于第二电子文档的定制词库中的第一词,从所述定制词库获取所述第一词,所述第二电子文档与所述第一电子文档不同并且彼此关联;以及
将所述第一词显示在所述输入法模块的候选词窗口中,以供用户选择,
其中,所述方法还包括:
响应于所述第一词未被选择,基于所述第一词先前未被选择的次数和所述第一词当前在所述候选词窗口中的位置,来确定所述第一词对用户输入造成的干扰程度,其中,所述候选词窗口中的每个位置被赋予相应的权重值,并且所述干扰程度是至少利用所述第一词之前所出现在的每个位置的权重值和所述第一词出现在该位置的次数来确定的,以及
响应于所述干扰程度达到预定阈值,从所述定制词库中移除所述第一词。
2.根据权利要求1所述的方法,还包括:
响应于检测到预定义的关联条件,建立所述第一电子文档与所述第二电子文档之间的所述关联。
3.根据权利要求2所述的方法,其中所述关联条件包括从所述第二电子文档向所述第一电子文档的切换。
4.根据权利要求1所述的方法,还包括:
响应于检测到对所述第二电子文档的操作而确定所述第二电子文档中的一个或多个词;
从确定的所述一个或多个词中获取所述第一词;以及
将所述第一词添加到所述定制词库。
5.根据权利要求4所述的方法,其中确定所述一个或多个词包括:
确定所述第二电子文档中的当前交互位置;以及
基于所述交互位置确定所述一个或多个词。
6.根据权利要求4所述的方法,其中确定所述一个或多个词还包括:
响应于检测到所述第二电子文档中的内容被复制到剪贴板中,从所述内容在所述第二电子文档的给定邻域内获取所述一个或多个词。
7.根据权利要求4所述的方法,其中确定所述一个或多个词还包括:
响应于检测到所述第二电子文档中的内容被复制到剪贴板中,从所述内容中获取所述一个或多个词。
8.根据权利要求1所述的方法,还包括:
响应于所述第一词在至少一次后续操作中未被选择,降低所述第一词在所述候选词窗口中被呈现的位置。
9.根据权利要求1所述的方法,其中所述已有词库的优先级高于所述定制词库,所述方法还包括:
响应于所述输入还与所述输入法模块的已有词库中不同于所述第一词的第二词相关联,在所述候选词窗口中在所述第一词之前显示所述第二词。
10.一种设备,包括:
处理单元;以及
存储器,耦合至所述处理单元并且存储有指令,所述指令在由所述处理单元执行时执行以下动作:
在第一电子文档中检测输入;
响应于所述输入对应于在所述输入法模块的已有词库之外、但是被包含在特定于第二电子文档的定制词库中的第一词,从所述定制词库获取所述第一词,所述第二电子文档与所述第一电子文档不同并且彼此关联;以及
将所述第一词显示在所述输入法模块的候选词窗口中,以供用户选择,
其中,所述指令被所述处理单元执行以进一步执行以下动作:
响应于所述第一词未被选择,基于所述第一词先前未被选择的次数和所述第一词当前在所述候选词窗口中的位置,来确定所述第一词对用户输入造成的干扰程度,其中,所述候选词窗口中的每个位置被赋予相应的权重值,并且所述干扰程度是至少利用所述第一词之前所出现在的每个位置的权重值和所述第一词出现在该位置的次数来确定的,以及
响应于所述干扰程度达到预定阈值,从所述定制词库中移除所述第一词。
11.根据权利要求10所述的设备,其中所述动作还包括:
响应于检测到预定义的关联条件,建立所述第一电子文档与所述第二电子文档之间的关联。
12.根据权利要求11所述的设备,其中所述关联条件包括从所述第二电子文档向所述第一电子文档的切换。
13.根据权利要求10所述的设备,其中所述动作还包括:
响应于检测到对所述第二电子文档的操作而确定所述第二电子文档中的一个或多个词;
从确定的所述一个或多个词中获取所述第一词;以及
将所述第一词添加到所述定制词库。
14.根据权利要求13所述的设备,其中确定所述一个或多个词包括:
确定所述第二电子文档中的当前交互位置;以及
基于所述交互位置确定所述一个或多个词。
15.根据权利要求13所述的设备,其中确定所述一个或多个词还包括:
响应于检测到所述第二电子文档中的内容被复制到剪贴板中,从所述内容在所述第二电子文档的给定邻域内获取所述一个或多个词。
16.根据权利要求13所述的设备,其中确定所述一个或多个词还包括:
响应于检测到所述第二电子文档中的内容被复制到剪贴板中,从所述内容中获取所述一个或多个词。
17.一种计算机可读介质,包括机器可执行指令,所述机器可执行指令在被执行时使机器执行以下动作:
在第一电子文档中检测输入;
响应于所述输入对应于在所述输入法模块的已有词库之外、但是被包含在特定于第二电子文档的定制词库中的第一词,从所述定制词库获取所述第一词,所述第二电子文档与所述第一电子文档不同并且彼此关联;以及
将所述第一词显示在所述输入法模块的候选词窗口中,以供用户选择,
其中,所述机器可执行指令在被执行时使所述机器进一步执行以下动作:
响应于所述第一词未被选择,基于所述第一词先前未被选择的次数和所述第一词当前在所述候选词窗口中的位置,来确定所述第一词对用户输入造成的干扰程度,其中,所述候选词窗口中的每个位置被赋予相应的权重值,并且所述干扰程度是至少利用所述第一词之前所出现在的每个位置的权重值和所述第一词出现在该位置的次数来确定的,以及
响应于所述干扰程度达到预定阈值,从所述定制词库中移除所述第一词。
18.根据权利要求17所述的计算机可读介质,其中所述动作还包括:
响应于检测到预定义的关联条件,建立所述第一电子文档与所述第二电子文档之间的关联。
19.根据权利要求18所述的计算机可读介质,其中所述关联条件包括从所述第二电子文档向所述第一电子文档的切换。
CN201710210513.9A 2017-03-31 2017-03-31 具有文档间自学习功能的输入法 Active CN108664142B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710210513.9A CN108664142B (zh) 2017-03-31 2017-03-31 具有文档间自学习功能的输入法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710210513.9A CN108664142B (zh) 2017-03-31 2017-03-31 具有文档间自学习功能的输入法

Publications (2)

Publication Number Publication Date
CN108664142A CN108664142A (zh) 2018-10-16
CN108664142B true CN108664142B (zh) 2023-03-10

Family

ID=63784488

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710210513.9A Active CN108664142B (zh) 2017-03-31 2017-03-31 具有文档间自学习功能的输入法

Country Status (1)

Country Link
CN (1) CN108664142B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109683723A (zh) * 2018-11-06 2019-04-26 闽江学院 一种在输入法系统中处理文库的控制方法及装置
CN109669551A (zh) * 2018-11-06 2019-04-23 闽江学院 一种输入法信息处理方法及装置
CN109683724A (zh) * 2018-11-12 2019-04-26 闽江学院 一种添加输入法文库的方法及装置
CN109725740A (zh) * 2018-11-12 2019-05-07 闽江学院 一种文本编辑处理方法及装置
CN112232081A (zh) * 2019-06-26 2021-01-15 微软技术许可有限责任公司 电子文档的辅助写入
CN113220468A (zh) * 2020-02-04 2021-08-06 北京搜狗科技发展有限公司 一种自定义内容的处理方法、装置和介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101256448A (zh) * 2008-03-24 2008-09-03 腾讯科技(深圳)有限公司 输入法实现方法及装置、客户端
CN101334774A (zh) * 2007-06-29 2008-12-31 北京搜狗科技发展有限公司 一种字符输入的方法和输入法系统
EP2073114A1 (en) * 2007-12-21 2009-06-24 Idean Enterprises Oy Context sensitive user interface
CN101694608A (zh) * 2008-12-04 2010-04-14 北京搜狗科技发展有限公司 一种输入法及输入法系统
CN102346561A (zh) * 2010-07-30 2012-02-08 腾讯科技(深圳)有限公司 输入法的用户词添加方法和装置
CN104423623A (zh) * 2013-09-02 2015-03-18 联想(北京)有限公司 一种选词处理方法及电子设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101334774A (zh) * 2007-06-29 2008-12-31 北京搜狗科技发展有限公司 一种字符输入的方法和输入法系统
EP2073114A1 (en) * 2007-12-21 2009-06-24 Idean Enterprises Oy Context sensitive user interface
CN101256448A (zh) * 2008-03-24 2008-09-03 腾讯科技(深圳)有限公司 输入法实现方法及装置、客户端
CN101694608A (zh) * 2008-12-04 2010-04-14 北京搜狗科技发展有限公司 一种输入法及输入法系统
CN102346561A (zh) * 2010-07-30 2012-02-08 腾讯科技(深圳)有限公司 输入法的用户词添加方法和装置
CN104423623A (zh) * 2013-09-02 2015-03-18 联想(北京)有限公司 一种选词处理方法及电子设备

Also Published As

Publication number Publication date
CN108664142A (zh) 2018-10-16

Similar Documents

Publication Publication Date Title
CN108664142B (zh) 具有文档间自学习功能的输入法
US11947911B2 (en) Method for training keyword extraction model, keyword extraction method, and computer device
US10698604B2 (en) Typing assistance for editing
US10114809B2 (en) Method and apparatus for phonetically annotating text
US9519641B2 (en) Photography recognition translation
US9047268B2 (en) Character and word level language models for out-of-vocabulary text input
WO2018076450A1 (zh) 一种输入方法和装置、一种用于输入的装置
US20170270092A1 (en) System and method for predictive text entry using n-gram language model
US10402474B2 (en) Keyboard input corresponding to multiple languages
CN108664141B (zh) 具有文档上下文自学习功能的输入法
WO2022135474A1 (zh) 信息推荐方法、装置及电子设备
US9557818B2 (en) Contextually-specific automatic separators
CN111860000A (zh) 文本翻译编辑方法、装置、电子设备及存储介质
US9733825B2 (en) East Asian character assist
WO2022105754A1 (zh) 输入文字的方法、装置和电子设备
KR20160100322A (ko) 시멘틱상으로 의미있는 텍스트 선택들의 식별
US10572497B2 (en) Parsing and executing commands on a user interface running two applications simultaneously for selecting an object in a first application and then executing an action in a second application to manipulate the selected object in the first application
CN109271094B (zh) 一种文本编辑的方法、装置及设备
CN117892724B (zh) 一种文本检测方法、装置、设备及存储介质
CN108509058B (zh) 输入方法与相关设备
US12073299B2 (en) Systems and methods for using contrastive pre-training to generate text and code embeddings
JP2012014517A (ja) 手書き文字認識方法およびシステム
CN117892023A (zh) 页面显示方法、装置、设备及介质
CN113239257A (zh) 信息处理方法、装置、电子设备及存储介质
CN116719927A (zh) 摘要生成方法、装置、智能终端和计算机可读存储介质

Legal Events

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