CN107102746B - 候选词生成方法、装置以及用于候选词生成的装置 - Google Patents

候选词生成方法、装置以及用于候选词生成的装置 Download PDF

Info

Publication number
CN107102746B
CN107102746B CN201610094784.8A CN201610094784A CN107102746B CN 107102746 B CN107102746 B CN 107102746B CN 201610094784 A CN201610094784 A CN 201610094784A CN 107102746 B CN107102746 B CN 107102746B
Authority
CN
China
Prior art keywords
word
candidate
character string
error correction
candidate word
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
CN201610094784.8A
Other languages
English (en)
Other versions
CN107102746A (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.)
Beijing Sogou Technology Development Co Ltd
Original Assignee
Beijing Sogou Technology Development Co Ltd
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 Beijing Sogou Technology Development Co Ltd filed Critical Beijing Sogou Technology Development Co Ltd
Priority to CN201610094784.8A priority Critical patent/CN107102746B/zh
Publication of CN107102746A publication Critical patent/CN107102746A/zh
Application granted granted Critical
Publication of CN107102746B publication Critical patent/CN107102746B/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

Abstract

本申请提供了一种候选词生成方法及装置,其中,候选词生成方法包括:响应于用户输入字符串的操作,获取当前输入环境,所述当前输入环境用于表示用户当前打开应用的所属类别;判断所述输入字符串是否有误,如果是,则结合所述当前输入环境对所述输入字符串进行纠错,得到目标字符串,如果否,则将所述输入字符串确定为目标字符串;参考当前输入环境对应的领域词库,将所述目标字符串生成对应的目标候选词;所述领域词库为所述当前输入环境对应的环境词库。采用本申请实施例,可以提高用户的输入速度,提升用户的输入体验。

Description

候选词生成方法、装置以及用于候选词生成的装置
技术领域
本申请涉及输入法技术领域,特别涉及一种候选词生成方法、装置以及一种用于候选词生成的装置。
背景技术
随着互联网技术的飞速发展,用户使用互联网设备进行交流的机会越来越多,也因此对输入法有越来越多的输入需求。可是目前的输入法在使用时,如果用户的字符串输入错误,会结合系统词库中的常用候选词,比如使用概率较大的候选词来对字符串进行纠错,最后再根据纠错后的字符串来生成最终的候选词。
发明内容
但是发明人在研究过程中发现,随着移动设备和各种类型APP的广泛应用,输入环境与用户输入需求之间的关系越来越密切,而现有技术的纠错及获取候选往往是一个相对孤立的过程,没有考虑到输入环境因素对用户输入需求的影响,不足以提供用户在不同输入场景下的最优候选。例如同一输入串往往会对应多种类型的候选词,例如地点、歌名,还有可能是饭店的名字,现有技术在所有输入环境下提供的候选结果及排序都是相同的,往往与用户实际想要输入的内容相差甚远,用户体验较差。
基于此,本申请提供了一种候选词生成方案,依据当前输入环境得到纠错结果并生成候选项,有效提高了首项或者首页候选词命中用户目标词的可能性,从而提高用户的输入效率,进一步提升用户的输入体验。
本申请还提供了一种生成候选词的装置,用以保证上述方法在实际中的实现及应用。
本申请公开的一种候选词生成方法,该方法包括:
响应于用户在当前输入框中输入字符串的操作,获取当前输入环境,所述当前输入环境用于表示用户当前打开应用的所属类别;
判断所述输入字符串是否有误,如果是,则结合所述当前输入环境对所述输入字符串进行纠错,得到目标字符串,如果否,则将所述输入字符串确定为目标字符串;
参考当前输入环境对应的领域词库,将所述目标字符串生成对应的目标候选词;所述领域词库为所述当前输入环境对应的环境词库。
其中,所述结合所述当前输入环境对所述输入字符串进行纠错,得到目标字符串,包括:
确定所述输入字符串对应的纠错候选串;
获取所述纠错候选串被输入成所述输入字符串的纠错概率,以及,纠错候选串对应的词频;所述纠错概率用于表示所述输入字符串是某一个纠错候选串的可能性,所述词频用于表示所述纠错候选串在所述当前输入法的语料库中出现的次数;
依据所述纠错概率得分和词频确定最佳纠错串。
其中,所述参考当前输入环境对应的领域词库,将所述目标字符串生成对应的目标候选词,包括:
判断所述目标字符串在所述当前输入环境的领域词库中是否存在对应的优选候选词,如果是,则将所述优选候选词对应的词频乘以预设激励值,得到优选词频;
比较所述优选词频与原始候选词对应的原始词频的大小,所述原始候选词为所述目标字符串在非领域词库中对应的候选词;
如果优选词频大于所述原始词频,则将优选候选词确定为目标候选词中的最佳候选词;
如果优选词频不大于所述原始词频,则将所述原始候选词确定为目标候选词中的最佳候选词。
其中,在生成对应的目标候选词之后,还包括:
将所述目标候选词在预设显示位置进行显示,其中,所述最佳候选词在显示序列中的顺序大于目标候选词中的非最佳候选词。
其中,在显示目标候选词之后,还包括:
响应于用户在最佳候选词上的选择操作,将所述最佳候选词输入至当前输入框中。
本申请公开的一种候选词生成装置,包括:
获取环境模块,用于响应于用户输入字符串的操作,获取当前输入环境,所述当前输入环境用于表示用户当前打开应用的所属类别;
判断模块,用于判断所述输入字符串是否有误;
纠错模块,用于在所述判断结果为是的情况下,结合所述当前输入环境对所述输入字符串进行纠错,得到目标字符串;
确定模块,用于在所述判断模块为否的情况下,将所述输入字符串确定为目标字符串;
生成候选词模块,用于参考当前输入环境对应的领域词库,将所述目标字符串生成对应的目标候选词;所述领域词库为所述当前输入环境对应的环境词库。
其中,还包括:
输入模块,用于响应于用户在最佳候选词上的选择操作,将所述最佳候选词输入至当前输入框中。
本申请公开的一种用于生成候选词的装置,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
响应于用户在当前输入框中输入字符串的操作,获取当前输入环境,所述当前输入环境用于表示用户当前打开应用的所属类别;
判断所述输入字符串是否有误,如果是,则结合所述当前输入环境对所述输入字符串进行纠错,得到目标字符串,如果否,则将所述输入字符串确定为目标字符串;
参考当前输入环境对应的领域词库,将所述目标字符串生成对应的目标候选词;所述领域词库为所述当前输入环境对应的环境词库。
在本申请实施例中,在生成候选词的过程中,通过获取到的当前输入环境,来对用户输入错误的字符串进行纠错,从而将与输入环境对应的字符串纠错为最佳候选串,进而将与输入环境对应的候选词纠错为最佳候选词;或者,在不需要对用户输入的字符串进行纠错的情况下,直接依据与输入环境匹配的领域词库来生成候选词,从而使得本申请生成的目标候选词与用户打开的应用类别匹配,这样就能更容易命中用户的目标词,从而尽量减少用户输入时的出错次数,也可以加快用户的输入速度,从而提升用户体验。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请的候选词生成方法实施例的流程图;
图2是本申请的生成候选词的界面示意图一;
图3是本申请的生成候选词的界面示意图二;
图4是本申请的一种候选词生成装置实施例的结构框图;
图5是本申请中根据一示例性实施例示出的一种用于生成候选词的装置800的框图;
图6是本申请实施例中服务器的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请可用于众多通用或专用的计算装置环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器装置、包括以上任何装置或设备的分布式计算环境等等。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
参考图1,示出了本申请一种候选词生成方法实施例的流程图,本实施例可以包括以下步骤:
步骤101:响应于用户输入字符串的操作,获取当前输入环境,所述当前输入环境用于表示用户当前打开应用的所属类别。
本申请实施例可以应用于用户在终端上进行字符输入的输入过程中。例如,用户在使用智能手机的过程中,打开了某一个第三方应用程序APP(即当前打开应用),并且在该APP的输入框中使用输入设备(例如触摸键盘、实体键盘或者手写笔等)进行字符串输入,则本实施例可以获取当前输入需要调用的输入法程序信息,该输入法进程为该APP进程的子进程。在这种情况下,可以通过输入法进程来获取其父进程即该APP的进程名称等属性信息,从而根据该属性信息映射的应用分类来确定出该APP属于哪一类别,从而得到当前输入环境信息,该当前输入环境信息用于表示用户当前打开应用的所属类别。
具体的,假设预先为智能手机中的应用分类包括:购物类应用,例如“手机淘宝”、“京东”等APP;音乐类应用,例如“K歌”、“酷狗音乐”等;新闻类应用,例如“搜狐新闻”等;学习类应用,例如“英语四级”等;餐饮类应用,例如“肯德基”,等。当然,以上类别信息仅仅为示例,并不表示对应用所属类别的限制。那么,如果通过输入法进程获取其父进程的进程名称为“com.kugou.android”,也即该父进程对应的应用为“酷狗音乐”,进一步判断得到该应用的所属类别就是“音乐类”,即当前输入环境为音乐类环境。再例如,如果用户当前打开了地图类应用“搜狗导航”,那么在用户有输入操作的情况下,假设输入“widaokou”,在本步骤中可能通过输入法子进程获取其父进程的进程名称为“com.sougoudaohang.android”,那也即该父进程对应的进程名称为“搜狗导航”,进一步判断得到该应用所属类别为“地图类”。
步骤102:判断所述输入字符串是否有误,如果是,则进入步骤103,如果否,则进入步骤104。
在确定用户的当前输入环境之后,再判断用户在当前输入框中输入的字符串是不是错误。因为在字符串输入过程中,很可能因为手指的误操作或打字不熟练等打错字符,字符串输入错误的概率较高,所以需要对字符串的正确与否进行判断。实际应用中,如果用户输入的是汉语拼音字符串,则可以结合汉语拼音音节对输入字符串进行解析,如果能够成功解析输入字符串,则认为输入字符串没有错误,反之则输入字符串为错误的字符串,需要在步骤103中对输入错误的输入字符串进行纠错。
步骤103:结合所述当前输入环境对所述输入字符串进行纠错,得到目标字符串,进入步骤105。
在本申请实施例中,与现有技术不同的是,在对输入字符串进行纠错的时候,充分利用了当前输入环境。例如,对于输入字符串“widaokou”,不能通过汉语拼音音节的有效组合来将其解析,则判断该输入字符串是错误的,因此需要寻找能够替代该错误的输入字符串的最佳纠错串。
具体的,本步骤的实现过程可以包括:
步骤A1:确定所述输入字符串对应的纠错候选串。
具体的,可以通过对用户键入的输入字符串中的每个字符串进行如下四种纠错操作:第一,在当前字符的前方或后方插入一个临近键位的字符;例如,在“w”为当前字符的情况下,在“widaokou”的“w”之前或之后,插入“w”的邻近键位“q”,可以生成纠错侯选串“qwidaokou”和“wqidaokou”;第二,删除当前字符;例如,删除“widaokou”中的“w”,从而得到纠错侯选串“idaokou”;第三,采用临近键位的字符替换当前字符;;例如,采用“q”替换“w”,从而得到纠错侯选串“qidaokou”;第四,互换当前字符和后一个字符的位置;例如,互换“w”和“i”的位置,从而得到纠错侯选串“iwdaokou”。通过上述四种纠错操作可以产生输入字符串的纠错候选串的序列。
步骤A2:获取所述纠错候选串被输入成所述输入字符串的纠错概率,以及,纠错候选串对应的词频;所述纠错概率用于表示所述输入字符串是某一个纠错候选串的可能性,所述词频用于表示所述纠错候选串在所述当前输入法的语料库中出现的次数。
接着需要从纠错候选串中找出当前输入的输入字符串的最佳纠错串。在实际应用中,可以预先训练出一个纠错模型,然后利用纠错模型计算出评分最高的纠错候选串,即可将其确定为最佳纠错串,该最佳纠错串可以理解为用户当前键入的输入字符串最有可能的正确形式。该纠错模型在训练过程中的两个主要考虑因素为:纠错候选串被输成当前的输入字符串的纠错概率的得分,以及,纠错候选串对应的词频的得分。
其中,纠错模型可以通过对当前输入法的语料库进行统计分析得到。具体的训练过程如下:
首先,对语料库中的输入字符串及候选词对应的字符串进行分析,可以得到对于输入某一字母条件下的替换前后两个位置的概率,例如,在字母m的条件下把“ai”替换为“ia”的概率为:Prob(ai|ia,m)=0.2347412556,这个概率值可以通过统计输入法的语料库得到。那么,假设实际中用户输入的输入字符串为“xiamain”,则应用于纠错模型计算得分时,将“xiamian”替换“xiamain”的概率即为Prob(xiamian|xiamain),而Prob(xiamian|xiamain)的得分可以用纠错模型计算好的概率Prob(ai|ia,m)得到,即Prob(xiamian|xiamain)=Prob(ai|ia,m)=0.2347412556。
其次,对语料库中的输入字符串及候选词对应的字符串进行分析,还可以得到对于输入某一字母条件下替换一个字符的概率,例如,在字母w的条件下把“i”替换为“o”的概率为Prob(o|i,w)=0.0001544115。同理Prob(wo|wi)=Prob(o|i,w)=0.0001544115。
例如,对于错误的输入字符串“widaokou”来讲,其纠错候选串包括“wodaokou”和“wudaokou”,而这两个纠错候选串对应的纠错概率分别为:Prob(wodaokou|widaokou)=Prob(o|i,w)=0.0001544115,Prob(wudaokou|widaokou)=Prob(u|i,w)=0.0000869301。
再来看本步骤中如何确定词频。词频用于表示所述纠错候选串在所述当前输入法的语料库中出现的次数。假设在语料库中,“wodaokou”对应的词频为:freq(wodaokou)=60,而“wudaokou”对应的词频为:freq(wudaokou)=50。因为输入串“wudaokou”对应的候选词“五道口”在地图类的领域词库中,而“地图类”又恰好是在步骤101中确定的输入环境,因此,在本申请实施例中则采用将与用户的输入环境匹配的那个纠错侯选串的词频乘以预设的激励值的方式,来对原始输入串“widaokou”进行纠错。那么,在本步骤中则将纠错侯选串“wudaokou”的原始词频乘以预先设置好的激励值,并将该乘积作为“wudaokou”最终词频。假设激励值为1.5,则在本步骤中纠错候选串“wudaokou”对应的最终词频为:75。通过以上方式,就将符合输入环境的那个纠错侯选串的词频进行了一定倍数的放大,保证了能够利用输入环境来进行纠错的可能性。
步骤A3:依据所述纠错概率得分和词频确定最佳纠错串。
接着根据纠错候选串对应的纠错概率和词频,从纠错候选串中确定出最佳纠错串。例如,对于纠错候选串“wodaokou”来说,F(wodaokou)=log2Prob(wodaokou|widaokou)*5+freq(wodaokou)≈-60+60=0,而对于纠错候选串“wudaokou”来说,F(wudaokou)=log2Prob(wudaokou|widaokou)*5+freq(wudaokou)*1.5≈-65+50*1.5=5。显然,F(wudaokou)>F(wodaokou),因此最佳纠错串为“wudaokou”,那么“wudaokou”即为目标字符串。
步骤104:将所述输入字符串确定为目标字符串,进入步骤105。
而如果用户在当前输入框键入的输入字符串正确,则直接将输入字符串确定为目标字符串。
步骤105:参考当前输入环境对应的领域词库,将所述目标字符串生成对应的目标候选词;所述领域词库为所述当前输入环境对应的环境词库。
接着,在生成候选词的过程中,同样需要利用当前输入环境对应的领域词库,将目标字符串生成对应的目标候选词,其中,领域词库为所述当前输入环境对应的环境词库。在本申请实施例中,针对不同的输入环境,对应有不同的领域词库,利用某个输入环境对应的领域词库来生成候选词,可以使候选词更符合当前输入环境,进而也就更有可能符合用户需求。例如,在地图类环境下输入的字符串“wudaokou”,则说明用户输入的字符串可能更需要查找五道口这个地点,因此,在地图类的领域词库中对应的候选词为“五道口”,可见,结合输入环境的领域词库生成的候选词就更符合用户需求。
具体的,本步骤的实现可以包括:
步骤B1:判断所述目标字符串在所述当前输入环境的领域词库中是否存在对应的优选候选词,如果是,则进入步骤B5,如果否,则进入步骤B6。
在将输入字符串生成候选词的过程中,首先判断目标字符串在当前输入环境的领域词库中是否存在对应的优选候选词,如果目标字符串在领域词库中就存在优选候选词,说明该优选候选词更有可能是用户需要输入的目标词语。
步骤B2:将所述优选候选词对应的词频乘以预设激励值,得到优选词频,进入步骤。
那么,将目标字符串对应的优选候选词对应的原始词频乘以预设的一个激励值,得到优选词频。在本申请实施例中,输入法词库包括领域词库和非领域词库,领域词库与各种输入环境相对应,而输入法的其他词库就统称为非领域词库。在输入法词库中,候选词都对应一个词频,该词频可以表示候选词在语料库中出现的次数,词频越大,则表示对应的候选词出现的次数越多,也即,用户使用的频率较高。在本实施例中,预设的激励值可以为10~20之间的任意一个数值,当然,也可以采用其他数字,本领域技术人员可以根据具体的语料库的特征进行参数学习并确定激励值的大小。
步骤B3:比较所述优选词频与原始候选词对应的原始词频的大小,所述原始候选词为所述目标字符串在非领域词库中对应的候选词。
将优选词频与原始候选词对应的原始词频的大小进行比较,其中,原始候选词是目标字符串在非领域词库中对应的候选词。在本步骤中,假设某用户在订餐类APP的当前输入框中输入字符串为“tinghaokuaicanwu”,输入法子进程确定其父进程为“sougouwaimai.andiod”,该父进程对应的名称为“搜狗外卖”,因此确定当前应用为订餐类,从而确定输入环境为订餐环境。那么,采用与步骤A2中相同的纠错及获取候选策略,该字符串“tinghaokuaicanwu”在当前订餐环境的领域词库中有对应的优选候选词,且该优选候选词的词频Freq_(婷好快餐屋)=10,假设预设的激励值为10,则有:F(婷好快餐屋)=Freq(婷好快餐屋)*10=100。而字符串“tinghaokuaicanwu”在在非领域词库中对应的原始候选词为“挺好快餐”,该原始候选词对应的词频为86,则有F(挺好快餐)=Freq(挺好快餐)=86。
可以理解的是,在实际应用中,本领域技术人员在将领域词库的候选词乘以预设的一个激励值的同时,还可以将非领域词库的候选词除以预设的一个激励值,这两种方式的目的都是为了提高领域词库中的候选词最终上屏的概率。
步骤B4:如果优选词频大于所述原始词频,则将优选候选词确定为目标候选词中的最佳候选词。
将两者进行比较,显然F(婷好快餐屋)>F(挺好快餐),即,优选词频大于原始词频,则将优选候选词“婷好快餐屋”确定为目标候选词中的最佳候选词,并将该最佳候选词插入到候选词序列中(一般情况为候选词序列的首位)。
可以参考图2和图3所示,图2是现有技术中输入字符串“tinghaokuaicanwu”得到的目标候选词的界面示意图,其中的“挺好快餐”是采用输入法词库中的非领域词库进行组词的结果。而图3是采用本申请实施例的方法得到的目标候选词的界面示意图,结合用户打开的是订餐类应用,因此,采用输入法词库中的领域词库得到最佳候选词“婷好快餐屋”。
步骤B5:如果优选词频不大于所述原始词频,则将所述原始候选词确定为目标候选词中的最佳候选词。
而假设优选词频不大于原始词频,则在这种情况下,说明优选词频对应的优选候选词更符合用户需求的可能性较小,因此,仍然将原始候选词确定为目标候选词中的最佳候选词。
可以理解的是,在本申请实施例中,最佳候选词只有一个,而目标候选词可以有多个,其中的非最佳候选词可以在最佳候选词之后进行显示。
步骤106:将所述目标候选词在预设显示位置进行显示,其中,所述最佳候选词在显示序列中的顺序大于目标候选词中的非最佳候选词。
在实际应用中,生成目标候选词之后,再将目标候选词在当前输入框的临近位置进行显示,而最佳候选词则显示在显示序列的最前面,目标候选词中的其他非最佳候选词则默认显示在最佳候选词之后。其中,预设显示位置可以是当前是输入法中预先设置好的候选词的显示位置。
步骤107:响应于用户在最佳候选词上的选择操作,将所述最佳候选词输入至当前输入框中。
在将目标候选词显示之后,如果用户发现最佳候选词符合自己的输入要求,则可以通过键盘或鼠标或快捷键等选择最佳候选词,并将最佳候选词输入至当前输入框中。
可见,在本申请实施例中,在生成候选词的过程中,通过获取到的当前输入环境,来对用户输入错误的字符串进行纠错,从而将与输入环境对应的那个字符串纠错为最佳侯选串,进而将与输入环境对应的那个候选词纠错为最佳候选词;或者,在不需要对用户输入的字符串进行纠错的情况下,直接依据与输入环境匹配的领域词库来生成候选词,从而使得本申请生成的目标候选词与用户打开的应用类别匹配,这样就能更容易命中用户的目标词,从而尽量减少用户输入时的出错次数,也可以加快用户的输入速度,从而提升用户体验。
对于前述的方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
与上述本申请一种候选词生成方法实施例所提供的方法相对应,参见图4,本申请还提供了一种候选词生成装置实施例,在本实施例中,该装置可以包括:
获取环境模块401,用于响应于用户输入字符串的操作,获取当前输入环境,所述当前输入环境用于表示用户当前打开应用的所属类别。
判断模块402,用于判断所述输入字符串是否有误。
纠错模块403,用于在所述判断结果为是的情况下,结合所述当前输入环境对所述输入字符串进行纠错,得到目标字符串。
确定模块404,用于在所述判断模块为否的情况下,将所述输入字符串确定为目标字符串。
生成候选词模块405,用于参考当前输入环境对应的领域词库,将所述目标字符串生成对应的目标候选词;所述领域词库为所述当前输入环境对应的环境词库。
可选的,所述纠错模块,具体可以包括:
确定纠错候选串子模块,用于确定所述输入字符串对应的纠错候选串;获取参数子模块,获取所述纠错候选串被输入成所述输入字符串的纠错概率,以及,纠错候选串对应的词频;所述纠错概率用于表示所述输入字符串是某一个纠错候选串的可能性,所述词频用于表示所述纠错候选串在所述当前输入法的语料库中出现的次数;确定最佳纠错串子模块,依据所述纠错概率得分和词频确定最佳纠错串;和,确定目标字符串子模块,用于将所述最佳纠错串确定为目标字符串。
可选的,所述生成候选词模块,具体可以包括:
判断子模块,用于判断所述目标字符串在所述当前输入环境的领域词库中是否存在对应的优选候选词;计算子模块,用于在所述判断子模块的结果为是的情况下,将所述优选候选词对应的词频乘以预设激励值,得到优选词频;比较子模块,用于比较所述优选词频与原始候选词对应的原始词频的大小,所述原始候选词为所述目标字符串在非领域词库中对应的候选词;第一确定最佳候选词子模块,用于在所述比较子模块的结果为优选词频大于所述原始词频的情况下,将优选候选词确定为目标候选词中的最佳候选词;和,第二确定最佳候选词子模块,用于在所述比较子模块的结果为优选词频不大于所述原始词频的情况下,将所述原始候选词确定为目标候选词中的最佳候选词。
可选的,该装置还可以包括:
显示模块,用于将所述目标候选词在预设显示位置进行显示,其中,所述最佳候选词在显示序列中的顺序大于目标候选词中的非最佳候选词。
可选的,该装置还可以包括:
输入模块,用于响应于用户在最佳候选词上的选择操作,将所述最佳候选词输入至当前输入框中。
可见,在本申请实施例中,在生成候选词的过程中,通过获取到的当前输入环境,来对用户输入错误的字符串进行纠错,从而将与输入环境对应的那个字符串纠错为最佳侯选串,进而将与输入环境对应的那个候选词纠错为最佳候选词;或者,在不需要对用户输入的字符串进行纠错的情况下,直接依据与输入环境匹配的领域词库来生成候选词,从而使得本申请生成的目标候选词与用户打开的应用类别匹配,这样就能更容易命中用户的目标词,从而尽量减少用户输入时的出错次数,也可以加快用户的输入速度,从而提升用户体验。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图5是根据一示例性实施例示出的一种用于生成候选词的装置800的框图。例如,装置800可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图5,装置800可以包括以下一个或多个组件:处理组件802,存储器804,电源组件806,多媒体组件808,音频组件810,输入/输出(I/O)的接口812,传感器组件814,以及通信组件816。
处理组件802通常控制装置800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理元件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理部件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。
存储器804被配置为存储各种类型的数据以支持在设备800的操作。这些数据的示例包括用于在装置800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件806为装置800的各种组件提供电力。电源组件806可以包括电源管理系统,一个或多个电源,及其他与为装置800生成、管理和分配电力相关联的组件。
多媒体组件808包括在所述装置800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当设备800处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克风(MIC),当装置800处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。
I/O接口812为处理组件802和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件814包括一个或多个传感器,用于为装置800提供各个方面的状态评估。例如,传感器组件814可以检测到设备800的打开/关闭状态,组件的相对定位,例如所述组件为装置800的显示器和小键盘,传感器组件814还可以检测装置800或装置800一个组件的位置改变,用户与装置800接触的存在或不存在,装置800方位或加速/减速和装置800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件816被配置为便于装置800和其他设备之间有线或无线方式的通信。装置800可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信部件816经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信部件816还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,装置800可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器804,上述指令可由装置800的处理器820执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
一种非临时性计算机可读存储介质,当所述存储介质中的指令由移动终端的处理器执行时,使得移动终端能够执行一种生成候选词的方法,所述方法包括:响应于用户输入字符串的操作,获取当前输入环境,所述当前输入环境用于表示用户当前打开应用的所属类别;判断所述输入字符串是否有误,如果是,则结合所述当前输入环境对所述输入字符串进行纠错,得到目标字符串,如果否,则将所述输入字符串确定为目标字符串;参考当前输入环境对应的领域词库,将所述目标字符串生成对应的目标候选词;所述领域词库为所述当前输入环境对应的环境词库。
图6是本发明实施例中服务器的结构示意图。该服务器1900可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,CPU)1922(例如,一个或一个以上处理器)和存储器1932,一个或一个以上存储应用程序1942或数据1944的存储介质1930(例如一个或一个以上海量存储设备)。其中,存储器1932和存储介质1930可以是短暂存储或持久存储。存储在存储介质1930的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1922可以设置为与存储介质1930通信,在服务器1900上执行存储介质1930中的一系列指令操作。
服务器1900还可以包括一个或一个以上电源1926,一个或一个以上有线或无线网络接口1950,一个或一个以上输入输出接口1958,一个或一个以上键盘1956,和/或,一个或一个以上操作系统1941,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本发明旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (7)

1.一种候选词生成方法,其特征在于,该方法包括:
响应于用户输入字符串的操作,获取当前输入环境,所述当前输入环境用于表示所述用户当前打开应用的所属类别;
结合所述当前输入环境判断所述输入字符串是否有误,如果是,则根据所述当前输入环境对应的领域词库对所述输入字符串进行纠错,得到目标字符串,如果否,则将所述输入字符串确定为所述目标字符串,所述领域词库为所述当前输入环境对应的环境词库;
判断所述目标字符串在所述领域词库中是否存在对应的优选候选词,如果是,则将所述优选候选词对应的词频乘以预设激励值,得到优选词频,所述预设激励值用于放大所述优选候选词对应的词频,所述词频用于表示候选词在当前输入法的语料库中出现的次数;
比较所述优选词频与原始候选词对应的原始词频的大小,所述原始候选词为所述目标字符串在非领域词库中对应的候选词;
如果所述优选词频大于所述原始词频,则将所述优选候选词确定为目标候选词中的最佳候选词;
如果所述优选词频不大于所述原始词频,则将所述原始候选词确定为所述目标候选词中的最佳候选词;
将所述目标候选词在预设显示位置进行显示,其中,所述最佳候选词在显示序列中的顺序大于所述目标候选词中的非最佳候选词。
2.根据权利要求1所述的方法,其特征在于,所述根据所述当前输入环境对应的领域词库对所述输入字符串进行纠错,得到目标字符串,包括:
确定所述输入字符串对应的纠错候选串;
获取所述纠错候选串被输入成所述输入字符串的纠错概率,以及,纠错候选串对应的词频;所述纠错概率用于表示所述输入字符串是某一个所述纠错候选串的可能性,所述词频用于表示所述纠错候选串在所述当前输入环境的语料库中出现的次数;
依据所述纠错概率得分和所述词频确定最佳纠错串;
将所述最佳纠错串确定为所述目标字符串。
3.根据权利要求1所述的方法,其特征在于,在显示所述目标候选词之后,还包括:
响应于所述用户在所述最佳候选词上的选择操作,将所述最佳候选词输入至当前输入框中。
4.一种候选词生成装置,其特征在于,包括:
获取环境模块,用于响应于用户输入字符串的操作,获取当前输入环境,所述当前输入环境用于表示所述用户当前打开应用的所属类别;
判断模块,用于结合所述当前输入环境判断所述输入字符串是否有误;
纠错模块,用于在所述判断模块的判断结果为是的情况下,根据所述当前输入环境对应的领域词库对所述输入字符串进行纠错,得到目标字符串,所述领域词库为所述当前输入环境对应的环境词库;
确定模块,用于在所述判断模块的判断结果为否的情况下,将所述输入字符串确定为所述目标字符串;
生成候选词模块,具体包括:
判断子模块,用于判断所述目标字符串在所述领域词库中是否存在对应的优选候选词;
计算子模块,用于在所述判断子模块的判断结果为是的情况下,将所述优选候选词对应的词频乘以预设激励值,得到优选词频,所述预设激励值用于放大所述优选候选词对应的词频,所述词频用于表示候选词在当前输入法的语料库中出现的次数;
比较子模块,用于比较所述优选词频与原始候选词对应的原始词频的大小,所述原始候选词为所述目标字符串在非领域词库中对应的候选词;
第一确定最佳候选词子模块,用于在所述比较子模块的比较结果为所述优选词频大于所述原始词频的情况下,将所述优选候选词确定为目标候选词中的最佳候选词;
第二确定最佳候选词子模块,用于在所述比较子模块的比较结果为所述优选词频不大于所述原始词频的情况下,将所述原始候选词确定为所述目标候选词中的最佳候选词;
所述候选词生成装置,还包括:
显示模块,用于将所述目标候选词在预设显示位置进行显示,其中,所述最佳候选词在显示序列中的顺序大于所述目标候选词中的非最佳候选词。
5.根据权利要求4所述的装置,其特征在于,所述纠错模块,具体包括:
确定纠错候选串子模块,用于确定所述输入字符串对应的纠错候选串;
获取参数子模块,用于获取所述纠错候选串被输入成所述输入字符串的纠错概率,以及,纠错候选串对应的词频;所述纠错概率用于表示所述输入字符串是某一个所述纠错候选串的可能性,所述词频用于表示所述纠错候选串在所述当前输入环境的语料库中出现的次数;
确定最佳纠错串子模块,用于依据所述纠错概率得分和所述词频确定最佳纠错串;
确定目标字符串子模块,用于将所述最佳纠错串确定为所述目标字符串。
6.根据权利要求4所述的装置,其特征在于,还包括:
输入模块,用于响应于所述用户在所述最佳候选词上的选择操作,将所述最佳候选词输入至当前输入框中。
7.一种用于生成候选词的装置,其特征在于,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于所述存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
响应于用户输入字符串的操作,获取当前输入环境,所述当前输入环境用于表示所述用户当前打开应用的所属类别;
结合所述当前输入环境判断所述输入字符串是否有误,如果是,则根据所述当前输入环境对应的领域词库对所述输入字符串进行纠错,得到目标字符串,如果否,则将所述输入字符串确定为所述目标字符串,所述领域词库为所述当前输入环境对应的环境词库;
判断所述目标字符串在所述领域词库中是否存在对应的优选候选词,如果是,则将所述优选候选词对应的词频乘以预设激励值,得到优选词频,所述预设激励值用于放大所述优选候选词对应的词频,所述词频用于表示候选词在当前输入法的语料库中出现的次数;
比较所述优选词频与原始候选词对应的原始词频的大小,所述原始候选词为所述目标字符串在非领域词库中对应的候选词;
如果所述优选词频大于所述原始词频,则将所述优选候选词确定为目标候选词中的最佳候选词;
如果所述优选词频不大于所述原始词频,则将所述原始候选词确定为所述目标候选词中的最佳候选词;
将所述目标候选词在预设显示位置进行显示,其中,所述最佳候选词在显示序列中的顺序大于所述目标候选词中的非最佳候选词。
CN201610094784.8A 2016-02-19 2016-02-19 候选词生成方法、装置以及用于候选词生成的装置 Active CN107102746B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610094784.8A CN107102746B (zh) 2016-02-19 2016-02-19 候选词生成方法、装置以及用于候选词生成的装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610094784.8A CN107102746B (zh) 2016-02-19 2016-02-19 候选词生成方法、装置以及用于候选词生成的装置

Publications (2)

Publication Number Publication Date
CN107102746A CN107102746A (zh) 2017-08-29
CN107102746B true CN107102746B (zh) 2023-03-24

Family

ID=59658704

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610094784.8A Active CN107102746B (zh) 2016-02-19 2016-02-19 候选词生成方法、装置以及用于候选词生成的装置

Country Status (1)

Country Link
CN (1) CN107102746B (zh)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106959977A (zh) * 2016-01-12 2017-07-18 广州市动景计算机科技有限公司 文字输入中的候选集合计算方法及装置、文字纠错方法及装置
CN109669549B (zh) * 2017-10-16 2023-04-28 北京搜狗科技发展有限公司 候选内容生成方法和装置、用于候选内容生成的装置
CN109669550B (zh) * 2017-10-17 2023-05-16 北京搜狗科技发展有限公司 一种获取用户词库的方法和装置
CN109725736B (zh) * 2017-10-27 2023-02-28 北京搜狗科技发展有限公司 一种候选排序方法、装置及电子设备
CN110083253A (zh) * 2018-01-25 2019-08-02 北京搜狗科技发展有限公司 一种输入方法和装置
CN108319377B (zh) * 2018-02-07 2019-05-31 北京百度网讯科技有限公司 场景化文字输入的方法及系统、终端以及计算机可读存储介质
CN110389666A (zh) * 2018-04-16 2019-10-29 北京搜狗科技发展有限公司 一种输入纠错方法和装置
CN108829267A (zh) * 2018-05-24 2018-11-16 努比亚技术有限公司 一种词汇推荐方法、设备及计算机可存储介质
CN110780749B (zh) * 2018-07-11 2024-03-08 北京搜狗科技发展有限公司 一种字符串纠错方法和装置
CN109521889B (zh) * 2018-09-29 2021-02-09 咪咕音乐有限公司 一种输入方法及装置、终端及存储介质
CN110162681B (zh) * 2018-10-08 2023-04-18 腾讯科技(深圳)有限公司 文本识别、文本处理方法、装置、计算机设备和存储介质
CN111103986B (zh) * 2018-10-26 2023-11-14 北京搜狗科技发展有限公司 用户词库管理方法及装置、输入方法及装置
CN110334271B (zh) * 2019-05-21 2022-01-11 北京奇艺世纪科技有限公司 一种搜索结果优化方法、系统、电子设备及存储介质
CN110262672B (zh) * 2019-06-18 2023-08-08 抖音视界有限公司 建议候选列表生成方法及装置
CN111026281B (zh) * 2019-10-31 2023-09-12 重庆小雨点小额贷款有限公司 一种客户端的词组推荐方法、客户端及存储介质
CN111665956B (zh) * 2020-04-17 2023-07-25 北京百度网讯科技有限公司 候选字符串的处理方法、装置、电子设备及存储介质
CN111782060A (zh) * 2020-06-18 2020-10-16 维沃移动通信有限公司 对象显示方法、装置和电子设备
CN112416141A (zh) * 2020-10-19 2021-02-26 上海臣星软件技术有限公司 针对输入字符串的处理方法、装置、设备和介质
CN112631437A (zh) * 2020-12-25 2021-04-09 维沃移动通信有限公司 信息推荐方法、装置及电子设备
CN113138677A (zh) * 2021-04-25 2021-07-20 北京字节跳动网络技术有限公司 输入法候选词的确定方法、装置、电子设备和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101271459A (zh) * 2007-03-22 2008-09-24 北京搜狗科技发展有限公司 一种生成词库的方法、一种输入的方法和一种输入法系统
CN101350004A (zh) * 2008-09-11 2009-01-21 北京搜狗科技发展有限公司 形成个性化纠错模型的方法及个性化纠错的输入法系统
CN102156551A (zh) * 2011-03-30 2011-08-17 北京搜狗科技发展有限公司 一种字词输入的纠错方法及系统
CN102722483A (zh) * 2011-03-29 2012-10-10 百度在线网络技术(北京)有限公司 用于确定输入法的候选项排序的方法、装置和设备
CN103226393A (zh) * 2013-04-12 2013-07-31 百度在线网络技术(北京)有限公司 一种输入方法和设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8462118B2 (en) * 2006-06-19 2013-06-11 Nuance Communications, Inc. Data entry system and method of entering data

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101271459A (zh) * 2007-03-22 2008-09-24 北京搜狗科技发展有限公司 一种生成词库的方法、一种输入的方法和一种输入法系统
CN101350004A (zh) * 2008-09-11 2009-01-21 北京搜狗科技发展有限公司 形成个性化纠错模型的方法及个性化纠错的输入法系统
CN102722483A (zh) * 2011-03-29 2012-10-10 百度在线网络技术(北京)有限公司 用于确定输入法的候选项排序的方法、装置和设备
CN102156551A (zh) * 2011-03-30 2011-08-17 北京搜狗科技发展有限公司 一种字词输入的纠错方法及系统
CN103226393A (zh) * 2013-04-12 2013-07-31 百度在线网络技术(北京)有限公司 一种输入方法和设备

Also Published As

Publication number Publication date
CN107102746A (zh) 2017-08-29

Similar Documents

Publication Publication Date Title
CN107102746B (zh) 候选词生成方法、装置以及用于候选词生成的装置
CN109800325B (zh) 视频推荐方法、装置和计算机可读存储介质
CN107608532B (zh) 一种联想输入方法、装置及电子设备
CN107340880B (zh) 一种联想输入方法、装置及用于实现联想输入的电子设备
US11900057B2 (en) Correcting input based on user context
US10802605B2 (en) Input method, device, and electronic apparatus
CN107870677B (zh) 一种输入方法、装置和用于输入的装置
US11749273B2 (en) Speech control method, terminal device, and storage medium
CN107564526B (zh) 处理方法、装置和机器可读介质
CN111061383B (zh) 文字检测方法及电子设备
CN107291772B (zh) 一种搜索访问方法、装置及电子设备
CN107918496B (zh) 一种输入纠错方法和装置、一种用于输入纠错的装置
WO2023061276A1 (zh) 数据推荐方法、装置、电子设备及存储介质
CN107132927B (zh) 输入字符的识别方法及装置和用于识别输入字符的装置
CN109783244B (zh) 处理方法和装置、用于处理的装置
CN109521888B (zh) 一种输入方法、装置和介质
CN107436896B (zh) 一种输入推荐方法、装置及电子设备
CN108073293B (zh) 一种目标词组的确定方法和装置
CN109901726B (zh) 一种候选词生成方法、装置及用于候选词生成的装置
CN111813932A (zh) 文本数据的处理方法、分类方法、装置及可读存储介质
CN110795014A (zh) 一种数据处理方法、装置和用于数据处理的装置
CN109388252B (zh) 一种输入方法及装置
CN110929122B (zh) 一种数据处理方法、装置和用于数据处理的装置
CN108345590B (zh) 一种翻译方法、装置、电子设备以及存储介质
CN114610163A (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