CN107390892A - 生成用户词典的方法和装置 - Google Patents
生成用户词典的方法和装置 Download PDFInfo
- Publication number
- CN107390892A CN107390892A CN201610325791.4A CN201610325791A CN107390892A CN 107390892 A CN107390892 A CN 107390892A CN 201610325791 A CN201610325791 A CN 201610325791A CN 107390892 A CN107390892 A CN 107390892A
- Authority
- CN
- China
- Prior art keywords
- word
- user
- unit
- candidate
- word string
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/02—Input arrangements using manually operated switches, e.g. using keyboards or dials
- G06F3/023—Arrangements 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/0233—Character input methods
- G06F3/0237—Character input methods using prediction or retrieval techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
- G06F40/247—Thesauruses; Synonyms
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Machine Translation (AREA)
Abstract
本发明涉及生成用户词典的方法和装置。该方法包括:跟踪用户的编辑历史,编辑历史包括多个单元,其中每个单元存储用户输入的拼音和对应的文字;从编辑历史还原出词的列表;计算每两个相邻词之间的转移概率;根据所计算的转移概率提取连续多个转移概率均小于预定阈值的词作为候选词串;以及当候选词串的包含至少两个词的子词串所对应的拼音被再次输入时,将子词串作为新词插入用户词典中。根据本发明的生成用户词典的方法和装置可以跟踪用户输入历史并自动挖掘用户词典的方法,能够满足各种输入习惯的用户,从而提高IME的效率和体验。
Description
技术领域
本发明涉及自然语言处理领域,更具体地涉及一种自动生成用户词典的方法和装置。
背景技术
输入法(IME)是人机交互中不可缺少的工具,由于IME的效率直接影响着用户的工作效率,因此人们提出了很多方法用以提高IME的输入效率和用户体验。比如自动生成用户词典:当用户输入一个拼音串“kangbobaqi”之后,由于候选里面没有正确结果“康伯巴奇”,用户需要调整候选汉字,调整输入之后,当用户再次输入“kangbobaqi”,便可以得到正确的结果。这种方法极大的提高的用户的输入效率,避免了每次输入拼音之后都需要调整的操作。
现有的IME虽然可以根据用户的输入来生成用户词典,但是最大的问题是需要用户完整的输入拼音串之后调整汉字候选。用户的输入习惯是不同的,有些用户习惯于单字的输入,比如先输入“kang”,调整为“康”并输入,再输入“bo”,调整为“伯”并输入,从而依次输入“康伯巴奇”,但是在这种情况下,当用户再次整体输入拼音“kangbobaqi”的时候,现有的IME仍无法得到正确的结果,即使用户已经输入过一次。
因此,希望能够提供一种可以满足各种输入习惯的用户,更有效率的生成用户词典的方法和装置。
发明内容
在下文中给出关于本发明的简要概述,以便提供关于本发明的某些方面的基本理解。应当理解,这个概述并不是关于本发明的穷举性概述。它并不是意图确定本发明的关键或重要部分,也不是意图限定本发明的范围。其目的仅仅是以简化的形式给出某些概念,以此作为稍后论述的更详细描述的前序。
本发明的一个主要目的在于,提供了一种生成用户词典的方法,包括:跟踪用户的编辑历史,编辑历史包括多个单元,其中每个单元存储用户输入的拼音和对应的文字;从编辑历史还原出词的列表;计算每两个相邻词之间的转移概率;根据所计算的转移概率提取连续多个转移概率均小于预定阈值的词作为候选词串;以及当候选词串的包含至少两个词的子词串所对应的拼音被再次输入时,将子词串作为新词插入用户词典中。
根据本发明的一个方面,提供一种生成用户词典的装置,包括:编辑历史跟踪单元,被配置为跟踪用户的编辑历史,编辑历史包括多个单元,其中每个单元存储用户输入的拼音和对应的文字;词还原单元,被配置为从编辑历史还原出词的列表;转移概率计算单元,被配置为计算每两个相邻词之间的转移概率;候选词串确定单元,被配置为根据所计算的转移概率提取连续多个转移概率均小于预定阈值的词作为候选词串;以及用户词典生成单元,被配置为当候选词串的包含至少两个词的子词串所对应的拼音被再次输入时,将子词串作为新词插入用户词典中。
另外,本发明的实施例还提供了用于实现上述方法的计算机程序。
此外,本发明的实施例还提供了至少计算机可读介质形式的计算机程序产品,其上记录有用于实现上述方法的计算机程序代码。
通过以下结合附图对本发明的最佳实施例的详细说明,本发明的这些以及其他优点将更加明显。
附图说明
参照下面结合附图对本发明实施例的说明,会更加容易地理解本发明的以上和其它目的、特点和优点。附图中的部件只是为了示出本发明的原理。在附图中,相同的或类似的技术特征或部件将采用相同或类似的附图标记来表示。
图1示出了用于实施根据本发明的生成用户词典的方法的整体系统框架;
图2示出了根据本发明的一个实施例的生成用户词典的方法200的示例性过程的流程图;
图3a、3b和3c示出了编辑历史的示例;
图4示出了跟踪用户的编辑历史的整体流程图;
图5示出了词串的转移概率的分布情况;
图6是示出图2中的步骤S208的一种示例性过程的流程图;
图7a和7b示出了拼音索引列表和有向图构成的候选用户词典的示例;
图8是示出根据本发明的另一个实施例的生成用户词典的装置800的示例性配置的框图;
图9是示出图8中的候选词串确定单元808的一种示例性配置的框图;以及
图10是示出可以用于实施本发明的生成用户词典的方法和装置的计算设备的示例性结构图。
具体实施方式
在下文中将结合附图对本发明的示范性实施例进行描述。为了清楚和简明起见,在说明书中并未描述实际实施方式的所有特征。然而,应该了解,在开发任何这种实际实施例的过程中必须做出很多特定于实施方式的决定,以便实现开发人员的具体目标,例如,符合与系统及业务相关的那些限制条件,并且这些限制条件可能会随着实施方式的不同而有所改变。此外,还应该了解,虽然开发工作有可能是非常复杂和费时的,但对得益于本公开内容的本领域技术人员来说,这种开发工作仅仅是例行的任务。
在此,还需要说明的一点是,为了避免因不必要的细节而模糊了本发明,在附图中仅仅示出了与根据本发明的方案密切相关的设备结构和/或处理步骤,而省略了与本发明关系不大的其他细节。
本发明提出了一种跟踪用户输入历史并自动挖掘用户词典的方法,可以满足各种输入习惯的用户,从而提高IME的效率和体验。根据本发明的生成用户词典的方法的基本流程为:系统接收到用户输入的拼音串,将拼音转换成汉字候选,用户选定候选汉字之后,将用户的输入保存到历史记录之中,并实时地从历史记录中挖掘候选用户词典,并保存到候选用户词典模块中,当用户再次输入时,在候选词典模块中查询是否有相同的输入,如果有,则提取该词条插入到原始的用户词典模块。图1示出了用于实施根据本发明的生成用户词典的方法的整体系统框架。
在图1的系统中,除了包括传统的输入法的拼音转换模块和用户词典模块之外,还加入了编辑历史跟踪模块和候选用户词典模块。
下面结合附图详细说明根据本发明的实施例的生成用户词典的方法和装置。下文中的描述按如下顺序进行:
1.生成用户词典的方法
2.生成用户词典的装置
3.用以实施本申请的系统和方法的计算设备
[1.生成用户词典的方法]
图2示出了根据本发明的一个实施例的生成用户词典的方法200的示例性过程的流程图。
首先,在步骤S202中,跟踪用户的编辑历史,编辑历史包括多个单元,其中每个单元存储用户输入的拼音和对应的一个文字。
步骤S202可以完成图1中的编辑历史跟踪模块的功能。
编辑历史跟踪模块可以记录用户的输入历史,通常来说,输入法记录用户输入是比较困难的,比如用户切换了工作环境上下文:从word文档切换到Excel、输入位置从文档第二段调整到第一段某句话等等,输入法对这些操作都无法跟踪,但是像某些操作,如:按“←”键将光标左移一次,按“backspace”删除一个字符等等,这些操作是可以跟踪的。
因此,在本发明中定义了几个可跟踪的操作(traceable operation):
方向键左←(左箭头键),方向键右→,退格键backspace和删除键delete。
编辑历史的基本结构是一个先进先出的队列,包含N个单元,每个单元用于存储用户的输入。单元的结构可以包括拼音和对应的一个文字。在一个示例中,单元的结构还可以包括文字在词中的位置(Pos)。其中Pos有四个值:B:词的开始,M:词中间,E:词尾,S:单字词。
图3a、3b和3c示出了编辑历史的示例。图3a是用户输入拼音“dianyingshi”并选择字串“电影是”之后的编辑历史的示例,设队列大小为10,其中0表示该单元为空,三个字符占三个单元,通过拼音转换可以得到词的信息,即“电影”是一个双字词,“是”是一个单字词,因此单元“电”的Pos信息是B,“影”是E,“是”则为S。光标作为指针指向当前用户输入的位置。
此时如果用户点击“←”向左移动光标,则光标相应的向左移动一个单元,得到图3b。如果用户此时再输入“不”,那么在屏幕上会得到字串“电影不是”,此时编辑历史内部情况如图3c所示。
通过图3a-3c的例子说明了编辑历史经过跟踪用户的输入和部分操作,使输入历史和用户实际看到的输入保持一致,从而保证后面词典抽取的准确性。
图4示出了跟踪用户的编辑历史的整体流程图,其中主要包括:监听用户输入,判断输入是否为正常输入,如果不是,那么是否为可跟踪的操作,如果是,则调整编辑历史队列,否则重置队列。
其中,对编辑历史的操作有三种,插入、调整、重置,分别通过下述方法实现。
插入(Insert into edit history):对于每个插入的字符
如果光标指向空的单元ui,直接将输入信息添加到空的单元;
如果光标指向非空的单元ui,将所有非空单元uj(j>=i)移动到单元uj+1,如果j+1>N,则删除uj。
调整(Adjust edit history)
当用户点击“←”时,如果光标指向一个非空的单元ui,则移动光标到单元ui+1。如果i+1>N,将所有单元置为空,之后将光标指向第一个单元u1。
当用户点击“→”时,如果光标指向单元ui(i>1),则移动光标到单元ui-1。
当用户点击“backspace”时,如果光标指向一个非空的单元ui,将非空单元uj(j>i)移动到单元uj-1。
当用户点击“delete”时,如果光标指向单元ui,并且i>1,将光标移动到单元ui-1,然后将非空单元uj(j>=i)移动到单元uj-1。
重置(Reset edit history)
将所有单元置为空,之后将光标指向第一个单元u1。
无论何种操作,如果破坏了原来的词的结构,则将原来词的Pos信息更新为S。比如原来“电(B)影(E)”是一个词,如果用户在“电”后面插入了一个字,则变成“电视影”,由于原来的词结构已经被破坏,因此“电”和“影”的Pos信息改为S。
接下来,下面的步骤可以完成图1的系统中的候选用户词典模块的功能。包括从编辑历史中抽取可能的候选,然后将候选索引并存储。
具体地,在步骤S204中,从编辑历史还原出词的列表。
假设编辑历史中有10个单元:电/B/dian(10)影/E/ying(9)是/S/shi(8)康/S/kang(7)伯/S/bo(6)巴/S/ba(5)奇/S/qi(4)主/B/zhu(3)演/E/yan(2)的/S/de(1)。
在一个示例中,可以根据各单元的Pos信息还原出词的列表:电影/dianying(w8)是/shi(w7)康/kang(w6)伯/bo(w5)巴/ba(w4)奇/qi(w3)主演/zhuyan(w2)的/de(w1)。
接下来,在步骤S206中,计算每两个相邻词之间的转移概率。
转移概率用来衡量两个词是否经常同时出现,可以用很多种方法来计算转移概率,例如点互信息、交叉熵等等。这一个示例中,还可以采用语言模型(language model,LM)来计算转移概率。LM可以从大规模的汉语语料库上训练获得。
根据经验,经常出现的词汇之间转移概率会较高,反之不常出现的词之间转移概率会较低,如果发现具有较低转移概率的连续的词串,那么很有可能就是新的词条。
在步骤S208中,根据所计算的转移概率提取连续多个转移概率均小于预定阈值的词作为候选词串。
图5表示了上述词串的转移概率的分布情况,Si表示词wi与wi+1之间的转移概率。如果单元uniti+1是空节点或者超出了编辑历史的大小,可以用伪节点“<s>”表示边界。可以看到,在图5中,S5(康,伯),S4(伯,巴)和S3(巴,奇)的分值低于预设的阈值。因此可以将连续的词串w6(康)w5(伯)w4(巴)w3(奇)抽取出来。在一个示例中,还可以将连续的词串w7(是)w6(康)w5(伯)w4(巴)w3(奇)w2(主演)抽取出来,其中w7和w2是作为低频串w6~w3的上下文词汇提取出来的。抽取出来的词串将被存储作为候选词串。
最后,在步骤S210中,当候选词串的包含至少两个词的子词串所对应的拼音被再次输入时,将子词串作为新词插入用户词典中。
简而言之,上述过程是将从编辑历史抽取出来的候选词串索引并存储作为候选用户词典,如果用户输入的拼音串在候选用户词典中找到匹配的串,那么就可以将匹配到的文字结果直接插入到用户词典,并返回给用户。
优选地,首先可以设置一个计时器T,如果用户停止输入并且停顿了t毫秒(t>=T),则将触发候选抽取过程。
图6是示出图2中的步骤S208中根据所计算的转移概率提取连续多个转移概率均小于预定阈值的词作为候选词串的一种示例性过程的流程图。
如图6所示,首先,在步骤S2082中,提取连续多个转移概率均小于预定阈值的词及其上下文词作为候选词串。
接着,在步骤S2084中,构建有向图来存储候选词串中的单元之间的关系。
图7a和7b示出了拼音索引列表和有向图构成的候选用户词典的示例。在图7a和7b中,左侧是拼音列表索引,右侧是有向图。其中拼音索引列表(Pinyin List)包含了文字的所有拼音,用于建立单元的索引,有向图(Graph)用于存储单元之间的关系。依次对候选词串中每个单元执行以下处理来构建有向图:
1.对于一个单元ui,如果其拼音+字形的信息并没有出现在拼音列表索引之中,首先根据其拼音找到索引的位置,然后在索引位置将其作为新的条目添加在拼音列表索引中,条目信息包含字形和编号,编号表示该单元在有向图中的节点位置,然后相应地在有向图中将该单元中的文字添加作为一个新的节点。
2.如果ui-1在有向图中存在,则在有向图中从ui-1到ui添加一条边。
例如,在图7a中,在插入了单元“是/shi”、“康/kang”和“伯/bo”之后,再次插入“巴/ba”的时候,如果列表中“ba”对应的索引是空的,那么在“ba”的位置增加一个索引单元,并记录字形“巴”,如果此时Graph中已经有了3个节点,那么“巴”的编号为4,同时,在Grap中插入节点“巴/4”,由于候选串中“巴”之前是“伯/bo”,找到“伯/bo”节点,并加入一条从“伯”指向“巴”的边。
同理,图7b表示了插入“康/伯/巴/奇”之后,再次插入“安/an”和“奇/qi”的有向图的结果。
索引建立完成之后,对于用户输入的拼音找到其在有向图中的所有节点;当在有向图中存在一条连接所有节点的路径时,将这些节点所对应的词串作为新词插入用户词典中。
例如,当用户再次输入拼音“kangbobaqi”的时候,在索引列表里面分别查询节点“kang”,“bo”,“ba”和“qi”,然后可以得到各单元在Graph中的节点编号,只需要在Graph中查找从“康/2”到“奇/5”是否有一条完整的路径,如果路径存在,那么便可以将路径上的节点“康伯巴奇”提取出来返回给用户并记录为新的用户词典。
图8是示出根据本发明的另一个实施例的生成用户词典的装置800的示例性配置的框图。
如图8所示,生成用户词典的装置800包括编辑历史跟踪单元802、词还原单元804、转移概率计算单元806、候选词串确定单元808和用户词典生成单元810。
编辑历史跟踪单元802被配置为跟踪用户的编辑历史,编辑历史包括多个单元,其中每个单元存储用户输入的拼音和对应的文字。
词还原单元804被配置为从编辑历史还原出词的列表。
转移概率计算单元806被配置为计算每两个相邻词之间的转移概率。
候选词串确定单元808被配置为根据所计算的转移概率提取连续多个转移概率均小于预定阈值的词作为候选词串。
用户词典生成单元810被配置为当候选词串的包含至少两个词的子词串所对应的拼音被再次输入时,将子词串作为新词插入用户词典中。
图9是示出图8中的候选词串确定单元808的一种示例性配置的框图。候选词串确定单元808包括:候选词串确定子单元8082和有向图构建子单元8084。
候选词串确定子单元8082被配置为提取连续多个转移概率均小于预定阈值的词及其上下文词作为候选词串。
有向图构建子单元8084被配置为依次对候选词串中每个单元执行以下处理来构建有向图,其中,有向图存储候选词串中的单元之间的关系:
当单元的拼音加文字未出现在拼音列表索引中时,则将其作为新的条目添加在拼音列表索引中,同时将单元中的文字添加为有向图中的一个新的节点,其中,拼音列表索引中包含所有拼音条目,
当下一个单元的文字存在于有向图中时,则从其在有向图中的节点向当前单元在有向图中的节点添加一条边。
其中,用户词典生成单元810进一步被配置为:对于用户输入的拼音找到其在有向图中的所有节点,当在有向图中存在一条连接所有节点的路径时,将这些节点所对应的词串作为新词插入用户词典中。
其中,每个单元还存储文字在词中的位置,包括词的开始、词中间、词尾和单字词。
词还原单元804进一步被配置为:根据每个单元中存储的文字在词中的位置来还原出词的列表。
其中,编辑历史包括用户的可跟踪操作。
其中,用户的可跟踪操作包括按下左箭头键、右箭头键、退格键和删除键。
在一个示例中,生成用户词典的装置800还包括:统计单元(未示出),其被配置为统计用户停止输入拼音的持续时间,当持续时间大于预定时间时,令转移概率计算单元计算每两个相邻词之间的转移概率。
其中,采用点互信息、交叉熵和语言模型中的任意一种方法来计算转移概率。
关于生成用户词典的装置800的各个部分的操作和功能的细节可以参照结合图1-7描述的本发明的生成用户词典的方法的实施例,这里不再详细描述。
在此需要说明的是,图8-9所示的生成用户词典的装置800及其组成单元的结构仅仅是示例性的,本领域技术人员可以根据需要对图8-9所示的结构框图进行修改。
本发明提出了一种跟踪用户输入历史并自动挖掘用户词典的方法,可以满足各种输入习惯的用户,从而提高IME的效率和体验。
[3.用以实施本申请的方法和装置的计算设备]
以上结合具体实施例描述了本发明的基本原理,但是,需要指出的是,对本领域的普通技术人员而言,能够理解本发明的方法和装置的全部或者任何步骤或者部件,可以在任何计算装置(包括处理器、存储介质等)或者计算装置的网络中,以硬件、固件、软件或者它们的组合加以实现,这是本领域普通技术人员在阅读了本发明的说明的情况下运用他们的基本编程技能就能实现的。
因此,本发明的目的还可以通过在任何计算装置上运行一个程序或者一组程序来实现。所述计算装置可以是公知的通用装置。因此,本发明的目的也可以仅仅通过提供包含实现所述方法或者装置的程序代码的程序产品来实现。也就是说,这样的程序产品也构成本发明,并且存储有这样的程序产品的存储介质也构成本发明。显然,所述存储介质可以是任何公知的存储介质或者将来所开发出来的任何存储介质。
在通过软件和/或固件实现本发明的实施例的情况下,从存储介质或网络向具有专用硬件结构的计算机,例如图10所示的通用计算机1000安装构成该软件的程序,该计算机在安装有各种程序时,能够执行各种功能等等。
在图10中,中央处理单元(CPU)1001根据只读存储器(ROM)1002中存储的程序或从存储部分1008加载到随机存取存储器(RAM)1003的程序执行各种处理。在RAM 1003中,也根据需要存储当CPU 1001执行各种处理等等时所需的数据。CPU 1001、ROM 1002和RAM 1003经由总线1004彼此链路。输入/输出接口1005也链路到总线1004。
下述部件链路到输入/输出接口1005:输入部分1006(包括键盘、鼠标等等)、输出部分1007(包括显示器,比如阴极射线管(CRT)、液晶显示器(LCD)等,和扬声器等)、存储部分1008(包括硬盘等)、通信部分1009(包括网络接口卡比如LAN卡、调制解调器等)。通信部分1009经由网络比如因特网执行通信处理。根据需要,驱动器1010也可链路到输入/输出接口1005。可拆卸介质1011比如磁盘、光盘、磁光盘、半导体存储器等等根据需要被安装在驱动器1010上,使得从中读出的计算机程序根据需要被安装到存储部分1008中。
在通过软件实现上述系列处理的情况下,从网络比如因特网或存储介质比如可拆卸介质1011安装构成软件的程序。
本领域的技术人员应当理解,这种存储介质不局限于图10所示的其中存储有程序、与设备相分离地分发以向用户提供程序的可拆卸介质1011。可拆卸介质1011的例子包含磁盘(包含软盘(注册商标))、光盘(包含光盘只读存储器(CD-ROM)和数字通用盘(DVD))、磁光盘(包含迷你盘(MD)(注册商标))和半导体存储器。或者,存储介质可以是ROM 1002、存储部分1008中包含的硬盘等等,其中存有程序,并且与包含它们的设备一起被分发给用户。
本发明还提出一种存储有机器可读取的指令代码的程序产品。指令代码由机器读取并执行时,可执行上述根据本发明实施例的方法。
相应地,用于承载上述存储有机器可读取的指令代码的程序产品的存储介质也包括在本发明的公开中。存储介质包括但不限于软盘、光盘、磁光盘、存储卡、存储棒等。
本领域的普通技术人员应理解,在此所例举的是示例性的,本发明并不局限于此。
在本说明书中,“第一”、“第二”以及“第N个”等表述是为了将所描述的特征在文字上区分开,以清楚地描述本发明。因此,不应将其视为具有任何限定性的含义。
作为一个示例,上述方法的各个步骤以及上述设备的各个组成模块和/或单元可以实施为软件、固件、硬件或其组合,并作为相应设备中的一部分。上述装置中各个组成模块、单元通过软件、固件、硬件或其组合的方式进行配置时可使用的具体手段或方式为本领域技术人员所熟知,在此不再赘述。
作为一个示例,在通过软件或固件实现的情况下,可以从存储介质或网络向具有专用硬件结构的计算机(例如图10所示的通用计算机1000)安装构成该软件的程序,该计算机在安装有各种程序时,能够执行各种功能等。
在上面对本发明具体实施例的描述中,针对一种实施方式描述和/或示出的特征可以以相同或类似的方式在一个或更多个其他实施方式中使用,与其他实施方式中的特征相组合,或替代其他实施方式中的特征。
应该强调,术语“包括/包含”在本文使用时指特征、要素、步骤或组件的存在,但并不排除一个或更多个其他特征、要素、步骤或组件的存在或附加。
此外,本发明的方法不限于按照说明书中描述的时间顺序来执行,也可以按照其他的时间顺序地、并行地或独立地执行。因此,本说明书中描述的方法的执行顺序不对本发明的技术范围构成限制。
本发明及其优点,但是应当理解在不超出由所附的权利要求所限定的本发明的精神和范围的情况下可以进行各种改变、替代和变换。而且,本发明的范围不仅限于说明书所描述的过程、设备、手段、方法和步骤的具体实施例。本领域内的普通技术人员从本发明的公开内容将容易理解,根据本发明可以使用执行与在此的相应实施例基本相同的功能或者获得与其基本相同的结果的、现有和将来要被开发的过程、设备、手段、方法或者步骤。因此,所附的权利要求旨在在它们的范围内包括这样的过程、设备、手段、方法或者步骤。
基于以上的说明,可知公开至少公开了以下技术方案:
1、一种生成用户词典的方法,包括:
跟踪用户的编辑历史,所述编辑历史包括多个单元,其中每个单元存储用户输入的拼音和对应的文字;
从所述编辑历史还原出词的列表;
计算每两个相邻词之间的转移概率;
根据所计算的转移概率提取连续多个转移概率均小于预定阈值的词作为候选词串;以及
当所述候选词串的包含至少两个词的子词串所对应的拼音被再次输入时,将所述子词串作为新词插入用户词典中。
2、根据附记1所述的方法,其中,根据所计算的转移概率提取连续多个转移概率均小于预定阈值的词串作为候选词串包括:
提取连续多个转移概率均小于预定阈值的词及其上下文词作为候选词串;
依次对所述候选词串中每个单元执行以下处理来构建有向图,所述有向图存储所述候选词串中的单元之间的关系:
当所述单元的拼音加文字未出现在拼音列表索引中时,则将其作为新的条目添加在所述拼音列表索引中,同时将所述单元中的文字添加为所述有向图中的一个新的节点,其中,所述拼音列表索引中包含所有拼音条目,
当下一个单元的文字存在于所述有向图中时,则从其在所述有向图中的节点向当前单元在所述有向图中的节点添加一条边。
3、根据附记2所述的方法,其中当所述候选词串的包含至少两个词的子词串所对应的拼音被再次输入时,将所述子词串作为新词插入用户词典中包括:
对于用户输入的拼音找到其在所述有向图中的所有节点,当在所述有向图中存在一条连接所有节点的路径时,将这些节点所对应的词串作为新词插入用户词典中。
4、根据附记1所述的方法,其中,每个单元还存储文字在词中的位置,包括词的开始、词中间、词尾和单字词。
5、根据附记4所述的方法,从所述编辑历史还原出词的列表包括:
根据每个单元中存储的文字在词中的位置来还原出所述词的列表。
6、根据附记1所述的方法,其中,所述编辑历史包括用户的可跟踪操作。
7、根据附记6所述的方法,其中,所述用户的可跟踪操作包括按下左箭头键、右箭头键、退格键和删除键。
8、根据附记1所述的方法,其中,在计算每两个相邻词之间的转移概率之前,所述方法还包括:
统计用户停止输入拼音的持续时间,当所述持续时间大于预定时间时,执行计算每两个相邻词之间的转移概率的步骤。
9、根据附记1所述的方法,其中,采用点互信息、交叉熵和语言模型中的任意一种方法来计算所述转移概率。
10、一种生成用户词典的装置,包括:
编辑历史跟踪单元,被配置为跟踪用户的编辑历史,所述编辑历史包括多个单元,其中每个单元存储用户输入的拼音和对应的文字;
词还原单元,被配置为从所述编辑历史还原出词的列表;
转移概率计算单元,被配置为计算每两个相邻词之间的转移概率;
候选词串确定单元,被配置为根据所计算的转移概率提取连续多个转移概率均小于预定阈值的词作为候选词串;以及
用户词典生成单元,被配置为当所述候选词串的包含至少两个词的子词串所对应的拼音被再次输入时,将所述子词串作为新词插入用户词典中。
11、根据附记10所述的装置,其中,所述候选词串确定单元包括:
候选词串确定子单元,被配置为提取连续多个转移概率均小于预定阈值的词及其上下文词作为候选词串;
有向图构建子单元,被配置为依次对所述候选词串中每个单元执行以下处理来构建有向图,其中,所述有向图存储所述候选词串中的单元之间的关系:
当所述单元的拼音加文字未出现在拼音列表索引中时,则将其作为新的条目添加在所述拼音列表索引中,同时将所述单元中的文字添加为所述有向图中的一个新的节点,其中,所述拼音列表索引中包含所有拼音条目,
当下一个单元的文字存在于所述有向图中时,则从其在所述有向图中的节点向当前单元在所述有向图中的节点添加一条边。
12、根据附记11所述的装置,其中,所述用户词典生成单元进一步被配置为:
对于用户输入的拼音找到其在所述有向图中的所有节点,当在所述有向图中存在一条连接所有节点的路径时,将这些节点所对应的词串作为新词插入用户词典中。
13、根据附记10所述的装置,其中,每个单元还存储文字在词中的位置,包括词的开始、词中间、词尾和单字词。
14、根据附记13所述的装置,所述词还原单元进一步被配置为:
根据每个单元中存储的文字在词中的位置来还原出所述词的列表。
15、根据附记10所述的装置,其中,所述编辑历史包括用户的可跟踪操作。
16、根据附记15所述的装置,其中,所述用户的可跟踪操作包括按下左箭头键、右箭头键、退格键和删除键。
17、根据附记10所述的装置,还包括:
统计单元,被配置为统计用户停止输入拼音的持续时间,当所述持续时间大于预定时间时,令所述转移概率计算单元计算每两个相邻词之间的转移概率。
18、根据附记10所述的装置,其中,采用点互信息、交叉熵和语言模型中的任意一种方法来计算所述转移概率。
Claims (10)
1.一种生成用户词典的方法,包括:
跟踪用户的编辑历史,所述编辑历史包括多个单元,其中每个单元存储用户输入的拼音和对应的文字;
从所述编辑历史还原出词的列表;
计算每两个相邻词之间的转移概率;
根据所计算的转移概率提取连续多个转移概率均小于预定阈值的词作为候选词串;以及
当所述候选词串的包含至少两个词的子词串所对应的拼音被再次输入时,将所述子词串作为新词插入用户词典中。
2.根据权利要求1所述的方法,其中,根据所计算的转移概率提取连续多个转移概率均小于预定阈值的词串作为候选词串包括:
提取连续多个转移概率均小于预定阈值的词及其上下文词作为候选词串;
依次对所述候选词串中每个单元执行以下处理来构建有向图,其中,所述有向图存储所述候选词串中的单元之间的关系:
当所述单元的拼音加文字未出现在拼音列表索引中时,则将其作为新的条目添加在所述拼音列表索引中,同时将所述单元中的文字添加为所述有向图中的一个新的节点,其中,所述拼音列表索引中包含所有拼音条目,
当下一个单元的文字存在于所述有向图中时,则从其在所述有向图中的节点向当前单元在所述有向图中的节点添加一条边。
3.根据权利要求2所述的方法,其中当所述候选词串的包含至少两个词的子词串所对应的拼音被再次输入时,将所述子词串作为新词插入用户词典中包括:
对于用户输入的拼音找到其在所述有向图中的所有节点,当在所述有向图中存在一条连接所有节点的路径时,将这些节点所对应的词串作为新词插入用户词典中。
4.根据权利要求1所述的方法,其中,每个单元还存储文字在词中的位置,包括词的开始、词中间、词尾和单字词。
5.根据权利要求4所述的方法,从所述编辑历史还原出词的列表包括:
根据每个单元中存储的文字在词中的位置来还原出所述词的列表。
6.根据权利要求1所述的方法,其中,所述编辑历史包括用户的可跟踪操作。
7.根据权利要求6所述的方法,其中,所述用户的可跟踪操作包括按下左箭头键、右箭头键、退格键和删除键。
8.根据权利要求1所述的方法,其中,在计算每两个相邻词之间的转移概率之前,所述方法还包括:
统计用户停止输入拼音的持续时间,当所述持续时间大于预定时间时,执行计算每两个相邻词之间的转移概率的步骤。
9.根据权利要求1所述的方法,其中,采用点互信息、交叉熵和语言模型中的任意一种方法来计算所述转移概率。
10.一种生成用户词典的装置,包括:
编辑历史跟踪单元,被配置为跟踪用户的编辑历史,所述编辑历史包括多个单元,其中每个单元存储用户输入的拼音和对应的文字;
词还原单元,被配置为从所述编辑历史还原出词的列表;
转移概率计算单元,被配置为计算每两个相邻词之间的转移概率;
候选词串确定单元,被配置为根据所计算的转移概率提取连续多个转移概率均小于预定阈值的词作为候选词串;以及
用户词典生成单元,被配置为当所述候选词串的包含至少两个词的子词串所对应的拼音被再次输入时,将所述子词串作为新词插入用户词典中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610325791.4A CN107390892A (zh) | 2016-05-17 | 2016-05-17 | 生成用户词典的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610325791.4A CN107390892A (zh) | 2016-05-17 | 2016-05-17 | 生成用户词典的方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107390892A true CN107390892A (zh) | 2017-11-24 |
Family
ID=60337927
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610325791.4A Pending CN107390892A (zh) | 2016-05-17 | 2016-05-17 | 生成用户词典的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107390892A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108399013A (zh) * | 2018-03-16 | 2018-08-14 | 北京搜狗科技发展有限公司 | 一种用户词添加方法及装置 |
CN109033183A (zh) * | 2018-06-27 | 2018-12-18 | 清远墨墨教育科技有限公司 | 一种可编辑的云词库的解析方法 |
CN109085932A (zh) * | 2018-08-17 | 2018-12-25 | 科大讯飞股份有限公司 | 一种候选词条调整方法、装置、设备及可读存储介质 |
US11645461B2 (en) | 2020-02-10 | 2023-05-09 | International Business Machines Corporation | User-centric optimization for interactive dictionary expansion |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101004738A (zh) * | 2006-01-16 | 2007-07-25 | 夏普株式会社 | 文字输入装置、具备该文字输入装置及文字输入方法 |
CN101122901A (zh) * | 2007-09-25 | 2008-02-13 | 腾讯科技(深圳)有限公司 | 中文整句生成方法及装置 |
CN101539940A (zh) * | 2009-05-04 | 2009-09-23 | 清华大学 | 获取新词的方法和装置 |
CN105389349A (zh) * | 2015-10-27 | 2016-03-09 | 上海智臻智能网络科技股份有限公司 | 词典更新方法及装置 |
-
2016
- 2016-05-17 CN CN201610325791.4A patent/CN107390892A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101004738A (zh) * | 2006-01-16 | 2007-07-25 | 夏普株式会社 | 文字输入装置、具备该文字输入装置及文字输入方法 |
CN101122901A (zh) * | 2007-09-25 | 2008-02-13 | 腾讯科技(深圳)有限公司 | 中文整句生成方法及装置 |
CN101539940A (zh) * | 2009-05-04 | 2009-09-23 | 清华大学 | 获取新词的方法和装置 |
CN105389349A (zh) * | 2015-10-27 | 2016-03-09 | 上海智臻智能网络科技股份有限公司 | 词典更新方法及装置 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108399013A (zh) * | 2018-03-16 | 2018-08-14 | 北京搜狗科技发展有限公司 | 一种用户词添加方法及装置 |
CN109033183A (zh) * | 2018-06-27 | 2018-12-18 | 清远墨墨教育科技有限公司 | 一种可编辑的云词库的解析方法 |
CN109033183B (zh) * | 2018-06-27 | 2021-06-25 | 清远墨墨教育科技有限公司 | 一种可编辑的云词库的解析方法 |
CN109085932A (zh) * | 2018-08-17 | 2018-12-25 | 科大讯飞股份有限公司 | 一种候选词条调整方法、装置、设备及可读存储介质 |
CN109085932B (zh) * | 2018-08-17 | 2023-07-25 | 科大讯飞股份有限公司 | 一种候选词条调整方法、装置、设备及可读存储介质 |
US11645461B2 (en) | 2020-02-10 | 2023-05-09 | International Business Machines Corporation | User-centric optimization for interactive dictionary expansion |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107797991B (zh) | 一种基于依存句法树的知识图谱扩充方法及系统 | |
CN107066621A (zh) | 一种相似视频的检索方法、装置和存储介质 | |
US9251467B2 (en) | Probabilistic parsing | |
CN101390091B (zh) | 语言处理设备及语言处理方法 | |
Sintoris et al. | Extracting business process models using natural language processing (NLP) techniques | |
CN107943847A (zh) | 企业关系提取方法、装置及存储介质 | |
CN107621891A (zh) | 一种文本输入方法、装置及电子设备 | |
CN109710703A (zh) | 一种血缘关系网络的生成方法及装置 | |
CN109710851A (zh) | 基于互联网模式下多源数据分析的就业推荐方法及系统 | |
CN104756100A (zh) | 意图估计装置以及意图估计方法 | |
Vel | Pre-processing techniques of text mining using computational linguistics and python libraries | |
CN107390892A (zh) | 生成用户词典的方法和装置 | |
CN115860006B (zh) | 一种基于语义句法的方面级情感预测方法及装置 | |
CN105335348A (zh) | 基于目标语句的依存句法分析方法、装置及服务器 | |
CN105550170A (zh) | 一种中文分词方法及装置 | |
CN105512347A (zh) | 一种基于地理主题模型的信息处理方法 | |
Zhang et al. | Subword-augmented embedding for cloze reading comprehension | |
CN105630770A (zh) | 一种基于sc文法的分词标音连写方法及装置 | |
CN104699265A (zh) | 文本输入方法和装置 | |
CN109614612A (zh) | 一种基于seq2seq+attention的中文文本纠错方法 | |
Kamalabalan et al. | Tool support for traceability of software artefacts | |
Vo | Se4exsum: An integrated semantic-aware neural approach with graph convolutional network for extractive text summarization | |
WO2023029354A1 (zh) | 文本信息提取方法、装置、存储介质及计算机设备 | |
CN112582073B (zh) | 医疗信息获取方法、装置、电子设备和介质 | |
CN104572629A (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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20171124 |