简繁体汉字的转换方法及系统的制作方法

文档序号:6490186阅读:329来源:国知局
简繁体汉字的转换方法及系统的制作方法
【专利摘要】本申请公开了一种简繁体汉字相互转换的方法及系统,其中,简体到繁体的转换系统包括:字典模块,用于保存用户自定义映射字典和简繁体映射字典;输入模块,用于输入要被转换的简体字符串;转换模块,用于先对简体字符串进行分句再进行分词,将得到的简体词语转换为繁体词语;输出模块,用于将所有繁体词语进行组合,形成繁体字符串输出。分词时,使用正向最大匹配算法和逆向最大匹配算法相结合的双向最大匹配算法,计算正向分词结果的正向权值以及逆向分词结果的逆向权值,取权值较大的那个作为最终的分词结果,当权值相等时,取逆向分词结果作为最终分词结果。本申请实现了对同一事物的不同表达方式之间的转换,而且分词结果更加地准确。
【专利说明】简繁体汉字的转换方法及系统
【技术领域】
[0001]本申请涉及语言处理【技术领域】,特别涉及一种简繁体汉字相互转换的方法及系统。
【背景技术】
[0002]随着数字化和信息化的发展,交流变得越来越重要,通过电子文件进行交流已经是人们相互交流的一种重要手段。由于历史原因,原有的部分繁体汉字已经被进行了简化,形成了目前在中国大陆使用的简体汉字。从而造成了汉字存在简体和繁体两种书写形式的客观现实。例如,在中国大陆和新加坡,虽然也偶见使用繁体汉字的场合,但是在绝大多数情况下都是使用简体汉字;而在中国的台湾、香港和澳门地区,则完全使用原有的繁体汉字。因此,简体汉字和繁体汉字之间的差异,已经为简体汉字使用地区和繁体汉字使用地区的人们之间的沟通障碍。为了让上述简体汉字使用地区和繁体汉字使用地区的人们能够完全相互读懂对方所书写的电子文件中的汉语,需要针对不同的用户,对电子文件中的汉语中的简体汉字和繁体汉字不一样的汉字进行正确的转换,以避免简繁体汉字差异带来的沟通不畅。
[0003]现有的一种简体和繁体汉字相互转换的方法的实现过程如下:
[0004]把将要被转换的简体/繁体汉字字符串划分成若干个词语/术语,并且把每一个词语/术语鉴别-定义为:其中在标记形式上与繁体/简体汉字的词语/术语相同或虽然不同但具有确定对应关系的第一类词语/术语、以及在标记形式上与繁体/简体汉字的词语/术语不同且不具有确定对应关系的简体/繁体汉字的第二类词语/术语。采用映射表将第一类词语/术语直接映射成与输入的简体/繁体汉字的词语/术语唯一对应的繁体/简体汉字的词语/术语。采用统计分类方法将第二类词语/术语转换成与输入的简体/繁体汉字的词语/术语合理对应的繁体/简体汉字的词语/术语。将采用映射表方法和采用统计分类方法而得到的结果进行组合并输出。
[0005]但是,上述方法在进行分词时,是采用现有技术的正向最大匹配算法进行分词的,这样,很容易导致分词不准确的问题。而且,也只能利用系统自带的映射表进行分词,无法针对简繁体用户之间对外来词的翻译习惯带来的差异用语进行转换。

【发明内容】

[0006]本申请提供了一种简繁体汉字相互转换的方法及系统,以解决现有技术中存在的仅采用正向最大匹配算法进行分词所导致的分词不准确的问题,以及无法针对简繁体用户之间对外来词的翻译习惯带来的差异用语进行转换的问题。
[0007]本申请的技术方案如下:
[0008]一方面,提供了一种简体汉字到繁体汉字的转换系统,包括:
[0009]字典模块,用于保存用户自定义映射字典和简繁体映射字典,其中,用户自定义映射字典用于记录用户预先设置的简体汉字词语到繁体汉字词语的映射关系,简繁体映射字典用于记录系统自带的简体汉字词语到繁体汉字词语的映射关系;
[0010]输入模块,用于输入将要被转换的文件中的简体汉字字符串;
[0011]转换模块,用于按照标点符号将输入模块输入的简体汉字字符串划分为多个简体汉字短句;还用于根据字典模块中的用户自定义映射字典和简繁体映射字典,对每一个简体汉字短句进行分词得到多个简体汉字词语,并将每一个简体汉字词语转换为对应的繁体汉字词语;
[0012]输出模块,用于将转换模块转换得到的所有的繁体汉字词语进行组合,形成与输入的简体汉字字符串对应的繁体汉字字符串,并将繁体汉字字符串输出到文件中;
[0013]其中,转换模块包括:
[0014]匹配单元,用于使用正向最大匹配算法,将一个简体汉字短句与用户自定义映射字典和简繁体映射字典进行匹配,得到该简体汉字短句的正向分词结果;还用于使用逆向最大匹配算法,将该简体汉字短句与用户自定义映射字典和简繁体映射字典进行匹配,得到该简体汉字短句的逆向分词结果;
[0015]计算单元,用于计算匹配单元得到的正向分词结果的正向权值、以及逆向分词结果的逆向权值;
[0016]确定单元,用于在计算单元计算出的正向权值大于逆向权值时,确定该简体汉字短句的最终分词结果为其正向分词结果,在逆向权值大于或等于正向权值时,确定该简体汉字短句的最终分词结果为其逆向分词结果。
[0017]另一方面,还提供了一种简体汉字到繁体汉字的转换方法,包括:
[0018]输入将要被转换的文件中的简体汉字字符串,按照标点符号将输入的简体汉字字符串划分为多个简体汉字短句;
[0019]根据用户自定义映射字典和简繁体映射字典,对每一个简体汉字短句进行分词得到多个简体汉字词语,并将每一个简体汉字词语转换为对应的繁体汉字词语;其中,用户自定义映射字典用于记录用户预先设置的简体汉字词语到繁体汉字词语的映射关系,简繁体映射字典用于记录系统自带的简体汉字词语到繁体汉字词语的映射关系;
[0020]将转换得到的所有的繁体汉字词语进行组合,形成与输入的简体汉字字符串对应的繁体汉字字符串,并将繁体汉字字符串输出到文件中;
[0021]其中,根据用户自定义映射字典和简繁体映射字典,对每一个简体汉字短句进行分词包括:
[0022]使用正向最大匹配算法,将该简体汉字短句与用户自定义映射字典和简繁体映射字典进行匹配,得到该简体汉字短句的正向分词结果,并计算该正向分词结果的正向权值;
[0023]使用逆向最大匹配算法,将该简体汉字短句与用户自定义映射字典和简繁体映射字典进行匹配,得到该简体汉字短句的逆向分词结果,并计算该逆向分词结果的逆向权值;
[0024]若正向权值大于逆向权值,则确定该简体汉字短句的最终分词结果为其正向分词结果,若逆向权值大于或等于正向权值,则确定该简体汉字短句的最终分词结果为其逆向分词结果。
[0025]又一方面,还提供了一种繁体汉字到简体汉字的转换系统,包括:[0026]字典模块,用于保存用户自定义映射字典和繁简体映射字典,其中,用户自定义映射字典用于记录用户预先设置的繁体汉字词语到简体汉字词语的映射关系,繁简体映射字典用于记录系统自带的繁体汉字词语到简体汉字词语的映射关系;
[0027]输入模块,用于输入将要被转换的文件中的繁体汉字字符串;
[0028]转换模块,用于按照标点符号将输入模块输入的繁体汉字字符串划分为多个繁体汉字短句;还用于根据字典模块中的用户自定义映射字典和繁简体映射字典,对每一个繁体汉字短句进行分词得到多个繁体汉字词语,并将每一个繁体汉字词语转换为对应的简体汉字词语;
[0029]输出模块,用于将转换模块转换得到的所有的简体汉字词语进行组合,形成与输入的繁体汉字字符串对应的简体汉字字符串,并将简体汉字字符串输出到文件中;
[0030]其中,转换模块包括:
[0031]匹配单元,用于使用正向最大匹配算法,将一个繁体汉字短句与用户自定义映射字典和繁简体映射字典进行匹配,得到该繁体汉字短句的正向分词结果;还用于使用逆向最大匹配算法,将该繁体汉字短句与用户自定义映射字典和繁简体映射字典进行匹配,得到该繁体汉字短句的逆向分词结果;
[0032]计算单元,用于计算匹配单元得到的正向分词结果的正向权值、以及逆向分词结果的逆向权值;
[0033]确定单元,用于在计算单元计算出的正向权值大于逆向权值时,确定该繁体汉字短句的最终分词结果为其正向分词结果,在逆向权值大于或等于正向权值时,确定该繁体汉字短句的最终分词结果为其逆向分词结果。
[0034]又一方面,还提供了一种繁体汉字到简体汉字的转换方法,包括:
[0035]输入将要被转换的文件中的繁体汉字字符串,按照标点符号将输入的繁体汉字字符串划分为多个繁体汉字短句;
[0036]根据用户自定义映射字典和繁简体映射字典,对每一个繁体汉字短句进行分词得到多个繁体汉字词语,并将每一个繁体汉字词语转换为对应的简体汉字词语;其中,用户自定义映射字典用于记录用户预先设置的繁体汉字词语到简体汉字词语的映射关系,繁简体映射字典用于记录系统自带的繁体汉字词语到简体汉字词语的映射关系;
[0037]将转换得到的所有的简体汉字词语进行组合,形成与输入的繁体汉字字符串对应的简体汉字字符串,并将简体汉字字符串输出到文件中;
[0038]其中,根据用户自定义映射字典和简繁体映射字典,对每一个繁体汉字短句进行分词包括:
[0039]使用正向最大匹配算法,将该繁体汉字短句与用户自定义映射字典和繁简体映射字典进行匹配,得到该繁体汉字短句的正向分词结果,并计算该正向分词结果的正向权值;
[0040]使用逆向最大匹配算法,将该繁体汉字短句与用户自定义映射字典和繁简体映射字典进行匹配,得到该繁体汉字短句的逆向分词结果,并计算该逆向分词结果的逆向权值;
[0041]若正向权值大于逆向权值,则确定该繁体汉字短句的最终分词结果为其正向分词结果,若逆向权值大于或等于正向权值,则确定该繁体汉字短句的最终分词结果为其逆向分词结果。
[0042]本申请的技术方案中,可以接收用户预先设置的简体汉字词语到繁体汉字词语的映射关系,或者繁体汉字词语到简体汉字词语的映射关系,并保存在用户自定义映射字典中,这样,在进行分词时,首先与用户自定义映射字典进行匹配,在不存在匹配的词语时,再与系统自带的映射字典进行匹配。通过支持用户对词典的扩充,用户可以按照自己的翻译习惯,例如,对一些外来词的翻译习惯,将符合自己翻译习惯的简繁汉字词语的映射关系添加到用户自定义映射字典中,实现了由于对外来词翻译习惯的不同而对同一事物的不同表达方式之间的转换。另外,本申请的技术方案中,在进行分词时,采用正向最大匹配算法与逆向最大匹配算法相结合的双向最大匹配方法对划分的短句进行进一步分词,具体的,对该短句采用正向最大匹配算法进行分词得到正向分词结果,对该短句采用逆向最大匹配算法进行分词得到逆向分词结果,对得到的正向分词结果的正向权值与逆向分词结果的逆向权值进行比较,取权值较大的分词结果作为最终分词结果,如果权值相等,取逆向分词结果作为最终分词结果。从而,分词结果更加地准确。
【专利附图】

【附图说明】
[0043]图1是本申请的实施例的简体汉字和繁体汉字相互转换的系统的一种结构示意图;
[0044]图2是本申请的实施例的简体汉字和繁体汉字相互转换的系统的另一种结构示意图;
[0045]图3是本申请的实施例的简体汉字到繁体汉字的转换方法的流程示意图;
[0046]图4是本申请的实施例的繁体汉字到简体汉字的转换方法的流程示意图。
【具体实施方式】
[0047]为了解决现有技术中存在的仅采用正向最大匹配算法进行分词所导致的分词不准确的问题,以及无法针对简繁体用户之间对外来词的翻译习惯带来的差异用语进行转换的问题。本申请以下实施例提供了一种简体汉字和繁体汉字相互转换的系统,以及该系统实现简体汉字和繁体汉字相互转换的方法。本申请的以下实施例的系统和方法中,可以接收用户预先设置的简体汉字词语到繁体汉字词语的映射关系,或者繁体汉字词语到简体汉字词语的映射关系,并保存在用户自定义映射字典中,这样,在进行分词时,首先与用户自定义映射字典进行匹配,在不存在匹配的词语时,再与系统自带的映射字典进行匹配。通过支持用户对词典的扩充,用户可以按照自己的翻译习惯,例如,对一些外来词的翻译习惯,将符合自己翻译习惯的简繁汉字词语的映射关系添加到用户自定义映射字典中,实现了由于对外来词翻译习惯的不同而对同一事物的不同表达方式之间的转换。另外,本申请的实施例中,在进行分词时,采用正向最大匹配算法与逆向最大匹配算法相结合的双向最大匹配方法对划分的短句进行进一步分词,具体的,对该短句采用正向最大匹配算法进行分词得到正向分词结果,对该短句采用逆向最大匹配算法进行分词得到逆向分词结果,对得到的正向分词结果的正向权值与逆向分词结果的逆向权值进行比较,取权值较大的分词结果作为最终分词结果,如果权值相等,取逆向分词结果作为最终分词结果。从而,分词结果更加地准确。[0048]下面分别介绍简体汉字到繁体汉字的转换,以及,繁体汉字到简体汉字的转换。
[0049]一、简体汉字到繁体汉字的转换系统及方法
[0050]如图1所示,本申请的实施例的简体汉字到繁体汉字的转换系统包括以下模块:字典模块10、输入模块20、转换模块30和输出模块40,其中:
[0051]字典模块10,用于保存用户自定义映射字典和简繁体映射字典,其中,用户自定义映射字典用于记录用户预先设置的简体汉字词语到繁体汉字词语的映射关系,简繁体映射字典用于记录系统自带的简体汉字词语到繁体汉字词语的映射关系;
[0052]输入模块20,用于输入将要被转换的文件中的简体汉字字符串;
[0053]转换模块30,用于按照标点符号将输入模块20输入的简体汉字字符串划分为多个简体汉字短句;还用于根据字典模块10中的用户自定义映射字典和简繁体映射字典,对每一个简体汉字短句进行分词得到多个简体汉字词语,并将每一个简体汉字词语转换为对应的繁体汉字词语;
[0054]输出模块40,用于将转换模块30转换得到的所有的繁体汉字词语进行组合,形成与输入的简体汉字字符串对应的繁体汉字字符串,并将繁体汉字字符串输出到文件中;
[0055]其中,转换模块30包括:匹配单元、计算单元和确定单元,其中:
[0056]匹配单元,用于使用正向最大匹配(FMM)算法,将一个简体汉字短句与用户自定义映射字典和简繁体映射字典进行匹配,得到该简体汉字短句的正向分词结果;还用于使用逆向最大匹配算法(BMM),将该简体汉字短句与用户自定义映射字典和简繁体映射字典进行匹配,得到该简体汉字短句的逆向分词结果;
[0057]其中,正向最大匹配算法和逆向最大匹配算法可以按照现有技术来进行,这里不再赘述。
[0058]计算单元,用于计算匹配单元得到的正向分词结果的正向权值、以及逆向分词结果的逆向权值;
[0059]确定单元,用于在计算单元计算出的正向权值大于逆向权值时,确定该简体汉字短句的最终分词结果为其正向分词结果,在逆向权值大于或等于正向权值时,确定该简体汉字短句的最终分词结果为其逆向分词结果。
[0060]在实际实施的过程中,上述的词语可以定义为一个单字,或者由多个单字组成的词或术语等,本申请对此不做限定。
[0061]在将该简体汉字短句与用户自定义映射字典和简繁体映射字典进行匹配的过程中,上述的匹配单元具体用于在每一次针对该简体汉字短句中的一个连续字符串进行匹配时,先与用户自定义映射字典中包含的各个简体汉字词语进行匹配;若匹配到用户自定义映射字典中的一个简体汉字词语,则确定该连续字符串为一个简体汉字词语;若与用户自定义映射字典中的所有简体汉字词语均不匹配,则继续与简繁体映射字典中包含的各个简体汉字词语进行匹配,若匹配到简繁体映射字典中的一个简体汉字词语,则确定该连续字符串为一个简体汉字词语。
[0062]为了计算出该简体汉字短句的正向分词结果的正向权值,和逆向分词结果的权值,可以做出如下定义(I)- (3):
[0063](I)若正向分词结果或逆向分词结果中的一个简体汉字词语是与用户自定义词典匹配的,即,该简体汉字词语与用户自定义词典中的一个简体汉字词语匹配,也即,该简体汉字词语是与用户自定义词典进行匹配确定出来的,则该简体汉字词语的权值定义为该简体汉字词语的长度的N次方值;其中,N为大于O的自然数;
[0064](2)若正向分词结果或逆向分词结果中的一个简体汉字词语是与简繁体映射字典匹配的,且该简体汉字词语中的每一个简体单字均与一个繁体单字具有一一对应关系(即一对一的情况),则该简体汉字词语的权值定义为该简体汉字词语的长度;
[0065](3)若该简体汉字词语是与简繁体映射字典匹配的,且该简体汉字词语中存在与多个繁体单字具有对应关系的简体单字(即一对多的情况),则该简体汉字词语的权值定义为该简体汉字词语的长度的N次方值与该简体汉字词语的使用频率之和;其中,N为大于O的自然数,简繁体映射字典中还记录有每一个简体汉字词语的使用频率,该使用频率通过统计得到。为了减少工作量,也可以仅统计那些包含有与多个繁体单字具有对应关系的简体单字的简体汉字词语的使用频率。
[0066]在实际实现过程中,可以预先对大量的文章文档进行统计,对包含有一对多情况的简体单字的多个词语按照出现频率或使用频率进行排序,其中,一对多情况的简体单字,即,该简体单字对应于多个繁体单字;按照排序的先后顺序为每个词语设置一个使用频率的值,排在越前面的,为其设置的使用频率的值越大。然后,将这些词语的使用频率记录到简繁体映射字典中。这样,简繁体映射字典中还需要记录有包含有一对多情况的简体单字的简体词语的使用频率。
[0067]根据上述(I)- (3)的定义,计算单元就可以计算出一个简体汉字短句的正向分词结果的正向权值,以及逆向分词结果的逆向权值了,该正向权值为该正向分词结果中的多个简体汉字词语的权值的总和,该逆向权值为该逆向分词结果中的多个简体汉字词语的权值的总和。
[0068]另外,如图2所示,该系统中还可以包括:设置模块50和判断模块60,其中,
[0069]设置模块50,用于接收用户的设置信息,该设置信息包括以下之一:开启或关闭系统的自动转换功能,简体汉字到繁体汉字的转换方向、或繁体汉字到简体汉字的转换方向;这样,用户可以预先选择开启或关闭系统的自动转换功能,或者在选择了关闭系统的自动转换功能后,用户还可以手动地设置自己想要进行的转换方向为简体汉字到繁体汉字的转换方向,还是繁体汉字到简体汉字的转换方向。另外,设置模块还可以用于接收用户预先设置的简体汉字词语到繁体汉字词语的映射关系,并保存到用户自定义映射字典中;这样,用户可以通过设置模块来向用户自定义映射字典中添加自己习惯使用的简繁体词语的映射关系。
[0070]这样,判断模块60,用于在输入模块10输入将要被转换的文件中的简体汉字字符串之前,判断系统的自动转换功能是否被开启,若是,则获取本地语言选项,根据获取到的本地语言选项为中文繁体,确定需要执行简体汉字到繁体汉字的转换,以及需要使用的映射字典为用户自定义映射字典和简繁体映射字典,否则,根据用户预先设置的简体汉字到繁体汉字的转换方向的设置信息,确定需要执行简体汉字到繁体汉字的转换,以及需要使用的映射字典为用户自定义映射字典和简繁体映射字典。然后,通知输入模块输入将要被转换的简体汉字字符串。
[0071]由上,该系统的简体汉字到繁体汉字的转换方法,如图3所示,包括以下步骤:
[0072]步骤S101,输入将要被转换的文件中的简体汉字字符串,按照标点符号将输入的简体汉字字符串划分为多个简体汉字短句;
[0073]步骤S102,根据用户自定义映射字典和简繁体映射字典,对每一个简体汉字短句进行分词得到多个简体汉字词语,并将每一个简体汉字词语转换为对应的繁体汉字词语;其中,用户自定义映射字典用于记录用户预先设置的简体汉字词语到繁体汉字词语的映射关系,简繁体映射字典用于记录系统自带的简体汉字词语到繁体汉字词语的映射关系;
[0074]其中,步骤S102中根据用户自定义映射字典和简繁体映射字典,对每一个简体汉字短句进行分词具体包括以下步骤1-5:
[0075]步骤1:使用正向最大匹配算法,将该简体汉字短句与用户自定义映射字典和简繁体映射字典进行匹配,得到该简体汉字短句的正向分词结果,并计算该正向分词结果的正向权值;
[0076]在该步骤I中,在将该简体汉字短句与用户自定义映射字典和简繁体映射字典进行匹配的过程中,每一次针对该简体汉字短句中的一个连续字符串进行匹配时,先与用户自定义映射字典中包含的各个简体汉字词语进行匹配;若匹配到用户自定义映射字典中的一个简体汉字词语,则确定该连续字符串为一个简体汉字词语;若与用户自定义映射字典中的所有简体汉字词语均不匹配,则继续与简繁体映射字典中包含的各个简体汉字词语进行匹配,若匹配到简繁体映射字典中的一个简体汉字词语,则确定该连续字符串为一个简体汉字词语。
[0077]例如,该简体汉字短句为“这个老头发现了他”,假设字典中最长的词语字数为3。取该简体汉字短句的前3个连续字符串:“这个老”,先在用户自定义映射字典中查找,发现不存在匹配的词语,则继续在简繁体映射字典中查找,也未查找到匹配的词语。然后,去掉“老”得到“这个”,再重复上述查找步骤,先在用户自定义映射字典中查找与“这个”匹配的词语,发现不存在匹配的词语,则继续在简繁体映射字典中查找,发现存在匹配的词语,则确定“这个”是一个简体汉字词语。
[0078]然后,从该简体汉字短句中去掉“这个”得到“老头发现了他”,取前3个连续字符串:“老头发”,重复上述的先与用户自定义映射字典中包含的各个简体汉字词语进行匹配;若匹配到用户自定义映射字典中的一个简体汉字词语,则确定该连续字符串为一个简体汉字词语;若与用户自定义映射字典中的所有简体汉字词语均不匹配,则继续与简繁体映射字典中包含的各个简体汉字词语进行匹配,若匹配到简繁体映射字典中的一个简体汉字词语,则确定该连续字符串为一个简体汉字词语的步骤,直至将该简体汉字短句分词完毕。
[0079]为了计算出正向分词结果的正向权值,在实际实施过程中,可以预先做出如下定义(I)- (3):
[0080](I)若正向分词结果中的一个简体汉字词语是与用户自定义词典匹配的,则该简体汉字词语的权值为该简体汉字词语的长度的N次方值;其中,N为大于O的自然数。
[0081](2)若正向分词结果中的一个简体汉字词语是与简繁体映射字典匹配的,且该简体汉字词语中的每一个简体单字均与一个繁体单字具有一一对应关系,则该简体汉字词语的权值为该简体汉字词语的长度。
[0082](3)若正向分词结果中的一个简体汉字词语是与简繁体映射字典匹配的,且该简体汉字词语中存在与多个繁体单字具有对应关系的简体单字,则该简体汉字词语的权值为该简体汉字词语的长度的N次方值与该简体汉字词语的使用频率之和;其中,N为大于O的自然数,简繁体映射字典中还记录有每一个简体汉字词语的使用频率,该使用频率通过统计得到。在实际实施时,为了减少工作量,也可以仅统计那些包含有一对多情况的简体单字的简体汉字词语的使用频率。
[0083]这样,在按照上述步骤I中的具体分词方法,得到一个简体汉字短句的正向分词结果之后,就可以按照上述的定义(I) - (3),计算该正向分词结果中的每一个简体汉字词语的权值,然后,将该正向分词结果中的所有简体汉字词语的权值相加,得到该正向分词结果的正向权值为:该正向分词结果中的多个简体汉字词语的权值的总和。
[0084]步骤2:使用逆向最大匹配算法,将该简体汉字短句与用户自定义映射字典和简繁体映射字典进行匹配,得到该简体汉字短句的逆向分词结果,并计算该逆向分词结果的逆向权值;
[0085]同样,在该步骤2中,在将该简体汉字短句与用户自定义映射字典和简繁体映射字典进行匹配的过程中,每一次针对该简体汉字短句中的一个连续字符串进行匹配时,先与用户自定义映射字典中包含的各个简体汉字词语进行匹配;若匹配到用户自定义映射字典中的一个简体汉字词语,则确定该连续字符串为一个简体汉字词语;若与用户自定义映射字典中的所有简体汉字词语均不匹配,则继续与简繁体映射字典中包含的各个简体汉字词语进行匹配,若匹配到简繁体映射字典中的一个简体汉字词语,则确定该连续字符串为一个简体汉字词语。
[0086]具体的例子可以同上,这里不再赘述。
[0087]同样,为了计算出逆向分词结果的逆向权值,在实际实施过程中,可以预先做出如下定义(I)- (3):
[0088](I)若逆向分词结果中的一个简体汉字词语是与用户自定义词典匹配的,则该简体汉字词语的权值为该简体汉字词语的长度的N次方值;其中,N为大于O的自然数。
[0089](2)若逆向分词结果中的一个简体汉字词语是与简繁体映射字典匹配的,且该简体汉字词语中的每一个简体单字均与一个繁体单字具有一一对应关系,则该简体汉字词语的权值为该简体汉字词语的长度。
[0090](3)若逆向分词结果中的一个简体汉字词语是与简繁体映射字典匹配的,且该简体汉字词语中存在与多个繁体单字具有对应关系的简体单字,则该简体汉字词语的权值为该简体汉字词语的长度的N次方值与该简体汉字词语的使用频率之和;其中,N为大于O的自然数,简繁体映射字典中还记录有每一个简体汉字词语的使用频率,该使用频率通过统计得到。
[0091]这样,在按照上述步骤2中的具体分词方法,得到一个简体汉字短句的逆向分词结果之后,就可以按照上述的定义(I) - (3),计算该逆向分词结果中的每一个简体汉字词语的权值,然后,将该逆向分词结果中的所有简体汉字词语的权值相加,得到该逆向分词结果的逆向权值为:该逆向分词结果中的多个简体汉字词语的权值的总和。
[0092]例如,简体汉字用户发给繁体汉字用户的短信中,包含简繁体一对多的情况,SP,其中存在有与多个繁体汉字具有对应关系的简体单字,也即,该简体单字与多个繁体单字具有对应关系,则转换系统可以根据上述分词方法确定出具体对应到哪个字。比如,“他们发现”中简体汉字“发”可以对应繁体汉字的“發”和“髪”,系统按照上述分词方法就可以准确地将“他们发现”转换为“他們發現”。[0093]步骤3:比较该简体汉字短句的正向分词结果的正向权值与逆向分词结果的逆向权值,若正向权值大于逆向权值,则进入步骤4,否则,逆向权值大于或等于正向权值,则进入步骤5 ;
[0094]步骤4:确定该简体汉字短句的最终分词结果为其正向分词结果,S卩,将正向分词结果中的多个简体汉字词语作为该简体汉字短句经分词得到的多个简体汉字词语;
[0095]步骤5:确定该简体汉字短句的最终分词结果为其逆向分词结果,即,将逆向分词结果中的多个简体汉字词语作为该简体汉字短句经分词得到的多个简体汉字词语。
[0096]通过上述的步骤1-5实现了对一个简体汉字短句进行分词之后,就可以将该简体汉字短句经分词得到的多个简体汉字词语分别替换或转换为对应的繁体汉字词语了。在具体替换或转换的过程中,若该短句中的一个简体汉字词语是与用户自定义映射字典中的一个简体汉字词语匹配的,则将该短句中的简体汉字词语转换为:用户自定义映射字典中与该简体汉字词语对应的繁体汉字词语;若该短句中的一个简体汉字词语是与简繁体映射字典中的一个简体汉字词语匹配的,则将该短句中的简体汉字词语转换为:简繁体映射字典中与该简体汉字词语对应的繁体汉字词语。
[0097]步骤S103,将转换得到的所有的繁体汉字词语进行组合,形成与输入的简体汉字字符串对应的繁体汉字字符串,并将繁体汉字字符串输出到文件中。
[0098]本申请的方法中,可以接收用户关于是否开启系统的自动转换功能的设置信息,还可以接收用户的手动设置转换方向的设置信息,从而,用户可以预先选择是否开启系统的自动转换功能,并且,在用户选择了关闭系统的自动转换功能后,用户还可以手动地设置自己所要进行的转换方向为简体汉字到繁体汉字的转换方向,还是繁体汉字到简体汉字的转换方向。另外,还可以接收用户向系统中添加用户习惯使用的简繁体词语的映射关系,从而,用户可以根据自己的习惯,向系统的用户自定义映射字典中添加简体汉字词语到繁体汉字词语的映射关系。例如,简体汉字用户对于外来词“computer”会翻译为“计算机”,因此,简体汉字用户书写的短信、邮件等内容中会使用“计算机”来指代“computer”,如果仅根据系统自带的字典进行转换,简体汉字的“计算机”通常会被转换系统直接地转换为“計算機”。但是,在日常习惯中,繁体汉字用户是使用“電腦”一词来指代“computer”。从而,转换为“計算機”不符合繁体汉字用户的使用习惯,也容易造成误解。利用本申请实施例,用户就可以在系统的设置选项中向用户自定义映射词典中添加符合自己使用习惯的简体到繁体汉字的映射关系、或繁体到简体汉字的映射关系,指定把简体汉字的“计算机”转换为繁体汉字的“電腦”,使转换结果更加符合用户的阅读习惯。
[0099]因此,在执行步骤SlOl之前,上述方法中还可以包括如下步骤:判断系统的自动转换功能是否被开启;若是,则获取本地语言选项,根据获取到的本地语言选项为中文繁体,确定需要执行简体汉字到繁体汉字的转换,以及需要使用的映射字典为用户自定义映射字典和简繁体映射字典;否则,根据用户预先设置的简体汉字到繁体汉字的转换方向的设置信息,确定需要执行简体汉字到繁体汉字的转换,以及需要使用的映射字典为用户自定义映射字典和简繁体映射字典。
[0100]例如,当上述系统用于手机平台中时,大陆人A给台湾人B发手机短信,由于受教育背景不同,B不认识短信中的简体汉字。该平台上的转换系统根据B的手机“设置”选项中本地语言为“中文繁体”,即可把短信内容中的简体汉字自动转换为B所熟悉的繁体汉字,这样B就可以直接阅读短信内容了。
[0101]二、繁体汉字到简体汉字的转换系统及方法
[0102]如图1所示,本申请的实施例的繁体汉字到简体汉字的转换系统包括:字典模块
10、输入模块20、转换模块30和输出模块40,其中:
[0103]字典模块10,用于保存用户自定义映射字典和繁简体映射字典,其中,用户自定义映射字典用于记录用户预先设置的繁体汉字词语到简体汉字词语的映射关系,繁简体映射字典用于记录系统自带的繁体汉字词语到简体汉字词语的映射关系;
[0104]输入模块20,用于输入将要被转换的文件中的繁体汉字字符串;
[0105]转换模块30,用于按照标点符号将输入模块20输入的繁体汉字字符串划分为多个繁体汉字短句;还用于根据字典模块10中的用户自定义映射字典和繁简体映射字典,对每一个繁体汉字短句进行分词得到多个繁体汉字词语,并将每一个繁体汉字词语转换为对应的简体汉字词语;
[0106]输出模块40,用于将转换模块30转换得到的所有的简体汉字词语进行组合,形成与输入的繁体汉字字符串对应的简体汉字字符串,并将简体汉字字符串输出到文件中;
[0107]其中,转换模块30进一步包括:匹配单元、计算单元和确定单元,其中:
[0108]匹配单元,用于使用正向最大匹配算法,将一个繁体汉字短句与用户自定义映射字典和繁简体映射字典进行匹配,得到该繁体汉字短句的正向分词结果;还用于使用逆向最大匹配算法,将该繁体汉字短句与用户自定义映射字典和繁简体映射字典进行匹配,得到该繁体汉字短句的逆向分词结果;
[0109]计算单元,用于计算匹配单元得到的正向分词结果的正向权值、以及逆向分词结果的逆向权值;
[0110]确定单元,用于在计算单元计算出的正向权值大于逆向权值时,确定该繁体汉字短句的最终分词结果为其正向分词结果,在逆向权值大于或等于正向权值时,确定该繁体汉字短句的最终分词结果为其逆向分词结果。
[0111]在将该繁体汉字短句与用户自定义映射字典和繁简体映射字典进行匹配的过程中,匹配单元具体用于在每一次针对该繁体汉字短句中的一个连续字符串进行匹配时,先与用户自定义映射字典中包含的各个繁体汉字词语进行匹配;若匹配到用户自定义映射字典中的一个繁体汉字词语,则确定该连续字符串为一个繁体汉字词语;若与用户自定义映射字典中的所有繁体汉字词语均不匹配,则继续与繁简体映射字典中包含的各个繁体汉字词语进行匹配,若匹配到繁简体映射字典中的一个繁体汉字词语,则确定该连续字符串为一个繁体汉字词语。这样,优先与用户自定义映射字典进行匹配,没有匹配到,再与系统自带的繁简体映射字典进行匹配,能够优先按照用户的使用习惯进行转换。
[0112]在实际实施的过程中,上述的词语可以定义为一个单字,或者由多个单字组成的词或术语等,本申请对此不做限定。
[0113]为了计算出一个繁体汉字短句的正向分词结果的正向权值、以及逆向分词结果的逆向权值,可以预先做出如下定义(I) - (3):
[0114](I)若正向分词结果或逆向分词结果中的一个繁体汉字词语是与用户自定义词典匹配的,则该繁体汉字词语的权值为该繁体汉字词语的长度的N次方值;其中,N为大于O的自然数;[0115](2)若正向分词结果或逆向分词结果中的一个繁体汉字词语繁体汉字词语是与繁简体映射字典匹配的,且该繁体汉字词语中的每一个繁体单字均与一个简体单字具有一一对应关系,则该繁体汉字词语的权值为该繁体汉字词语的长度;
[0116](3)若正向分词结果或逆向分词结果中的一个繁体汉字词语繁体汉字词语是与繁简体映射字典匹配的,且该繁体汉字词语中存在与多个简体单字具有对应关系的繁体单字,g卩,该繁体单字与多个简体单字具有对应关系,则该繁体汉字词语的权值为该繁体汉字词语的长度的N次方值与该繁体汉字词语的使用频率之和;其中,N为大于O的自然数,繁简体映射字典中还记录有每一个繁体汉字词语的使用频率,该使用频率通过统计得到。为了减少工作量,也可以仅统计哪些包含有与多个简体单字具有对应关系的繁体单字的繁体汉字词语的使用频率。
[0117]在实际实现过程中,可以预先对大量的文章文档进行统计,对包含有一对多情况的繁体单字的多个词语按照出现频率或使用频率进行排序,其中,一对多情况的繁体单字,gp,该繁体单字对应于多个简体单字;按照排序的先后顺序为每个词语设置一个使用频率的值,排在越前面的,为其设置的使用频率的值越大。然后,将这些词语的使用频率记录到繁简体映射字典中。这样,繁简体映射字典中还需要记录有包含有一对多情况的繁体单字的繁体汉字词语的使用频率。
[0118]这样,根据上述定义(I) - (3),计算单元就可以计算出一个繁体汉字短句的正向分词结果的正向权值和逆向分词结果的逆向权值了。正向权值为:该正向分词结果中的多个繁体汉字词语的权值的总和;逆向权值为:该逆向分词结果中的多个繁体汉字词语的权值的总和。
[0119]另外,如图2所示,该系统中还可以包括:设置模块50和判断模块60,其中,
[0120]设置模块50,用于接收用户的设置信息,该设置信息包括以下之一:开启或关闭系统的自动转换功能,简体汉字到繁体汉字的转换方向、或繁体汉字到简体汉字的转换方向;还用于接收用户预先设置的繁体汉字词语到简体汉字词语的映射关系,并保存到用户自定义映射字典中;这样,用户可以通过设置模块来向用户自定义映射字典中添加自己习惯使用的繁体词语到简体词语的映射关系。
[0121]这样,判断模块60,用于在输入模块10输入将要被转换的文件中的繁体汉字字符串之前,先判断系统的自动转换功能是否被开启,若是,则获取本地语言选项,根据获取到的本地语言选项为中文简体,确定需要执行繁体汉字到简体汉字的转换,以及需要使用的映射字典为用户自定义映射字典和繁简体映射字典,否则,根据用户预先设置的繁体汉字到简体汉字的转换方向的设置信息,确定需要执行繁体汉字到简体汉字的转换,以及需要使用的映射字典为用户自定义映射字典和繁简体映射字典。然后,通知输入模块10输入将要被转换的繁体汉字字符串。
[0122]由上,该系统的繁体汉字到简体汉字的转换方法,如图4所示,包括以下步骤:
[0123]步骤S201,输入将要被转换的文件中的繁体汉字字符串,按照标点符号将输入的繁体汉字字符串划分为多个繁体汉字短句;
[0124]步骤S202,根据用户自定义映射字典和繁简体映射字典,对每一个繁体汉字短句进行分词得到多个繁体汉字词语,并将每一个繁体汉字词语转换为对应的简体汉字词语;其中,用户自定义映射字典用于记录用户预先设置的繁体汉字词语到简体汉字词语的映射关系,繁简体映射字典用于记录系统自带的繁体汉字词语到简体汉字词语的映射关系;
[0125]在该步骤S202中,根据用户自定义映射字典和简繁体映射字典,对每一个繁体汉字短句进行分词进一步包括以下步骤11-1:
[0126]步骤11:使用正向最大匹配算法,将该繁体汉字短句与用户自定义映射字典和繁简体映射字典进行匹配,得到该繁体汉字短句的正向分词结果,并计算该正向分词结果的正向权值;
[0127]具体的,在使用正向最大匹配算法,将该繁体汉字短句与用户自定义映射字典和繁简体映射字典进行匹配的过程中,每一次针对该繁体汉字短句中的一个连续字符串进行匹配时,先与用户自定义映射字典中包含的各个繁体汉字词语进行匹配;若匹配到用户自定义映射字典中的一个繁体汉字词语,则确定该连续字符串为一个繁体汉字词语;若与用户自定义映射字典中的所有繁体汉字词语均不匹配,则继续与繁简体映射字典中包含的各个繁体汉字词语进行匹配,若匹配到繁简体映射字典中的一个繁体汉字词语,则确定该连续字符串为一个繁体汉字词语。
[0128]步骤12:使用逆向最大匹配算法,将该繁体汉字短句与用户自定义映射字典和繁简体映射字典进行匹配,得到该繁体汉字短句的逆向分词结果,并计算该逆向分词结果的逆向权值;
[0129]具体的,在使用逆向最大匹配算法,将该繁体汉字短句与用户自定义映射字典和繁简体映射字典进行匹配的过程中,每一次针对该繁体汉字短句中的一个连续字符串进行匹配时,先与用户自定义映射字典中包含的各个繁体汉字词语进行匹配;若匹配到用户自定义映射字典中的一个繁体汉字词语,则确定该连续字符串为一个繁体汉字词语;若与用户自定义映射字典中的所有繁体汉字词语均不匹配,则继续与繁简体映射字典中包含的各个繁体汉字词语进行匹配,若匹配到繁简体映射字典中的一个繁体汉字词语,则确定该连续字符串为一个繁体汉字词语。
[0130]另外,为了在步骤12和13中,计算出正向分词结果的正向权值,以及逆向分词结果的逆向权值,可以预先做出如下定义(I) - (3):
[0131](I)若正向分词结果或逆向分词结果中的一个繁体汉字词语是与用户自定义词典匹配的,则该繁体汉字词语的权值为该繁体汉字词语的长度的N次方值;其中,N为大于O的自然数;
[0132](2)若正向分词结果或逆向分词结果中的一个繁体汉字词语繁体汉字词语是与繁简体映射字典匹配的,且该繁体汉字词语中的每一个繁体单字均与一个简体单字具有一一对应关系,则该繁体汉字词语的权值为该繁体汉字词语的长度;
[0133](3)若正向分词结果或逆向分词结果中的一个繁体汉字词语繁体汉字词语是与繁简体映射字典匹配的,且该繁体汉字词语中存在与多个简体单字具有对应关系的繁体单字,则该繁体汉字词语的权值为该繁体汉字词语的长度的N次方值与该繁体汉字词语的使用频率之和;其中,N为大于O的自然数,繁简体映射字典中还记录有每一个繁体汉字词语的使用频率,该使用频率通过统计得到。为了减少工作量,可以仅统计那些包含有与多个简体单字具有对应关系的繁体单字的繁体汉字词语的使用频率。
[0134]根据上述的定义(I)- (3),就可以计算出一个繁体汉字短句的正向分词结果的正向权值和逆向分词结果的逆向权值了。具体的,该正向权值为为:该正向分词结果中的多个繁体汉字词语的权值的总和;该逆向权值为:该逆向分词结果中的多个繁体汉字词语的权值的总和。
[0135]步骤13:比较正向权值与逆向权值的大小,若正向权值大于逆向权值,则进入步骤14,否则,若逆向权值大于或等于正向权值,则进入步骤15 ;
[0136]步骤14:确定该繁体汉字短句的最终分词结果为其正向分词结果;
[0137]步骤15:确定该繁体汉字短句的最终分词结果为其逆向分词结果。
[0138]步骤S203,将转换得到的所有的简体汉字词语进行组合,形成与输入的繁体汉字字符串对应的简体汉字字符串,并将简体汉字字符串输出到文件中;
[0139]通过上述的步骤11-15实现了对一个繁体汉字短句进行分词之后,就可以将该繁体汉字短句经分词得到的多个繁体汉字词语分别替换或转换为对应的简体汉字词语了。在具体替换或转换的过程中,若该短句中的一个繁体汉字词语是与用户自定义映射字典中的一个繁体汉字词语匹配的,则将该短句中的繁体汉字词语转换为:用户自定义映射字典中与该繁体汉字词语对应的简体汉字词语;若该短句中的一个繁体汉字词语是与繁简体映射字典中的一个繁体汉字词语匹配的,则将该短句中的繁体汉字词语转换为:繁简体映射字典中与该繁体汉字词语对应的简体汉字词语。
[0140]本申请的方法中,可以接收用户关于是否开启系统的自动转换功能的设置信息,还可以接收用户的手动设置转换方向的设置信息,从而,用户可以预先选择是否开启系统的自动转换功能,并且,在用户选择了关闭系统的自动转换功能后,用户还可以手动地设置自己所要进行的转换方向为简体汉字到繁体汉字的转换方向,还是繁体汉字到简体汉字的转换方向。另外,还可以接收用户向系统中添加用户习惯使用的繁简体词语的映射关系,从而,用户可以根据自己的习惯,向系统的用户自定义映射字典中添加繁体汉字词语到简体汉字词语的映射关系。利用本申请实施例,用户就可以在系统的设置选项中向用户自定义映射词典中添加符合自己使用习惯的繁体到简体汉字的映射关系、或简体到繁体汉字的映射关系,使转换结果更加符合用户的阅读习惯。
[0141]因此,在执行步骤S201之前,上述方法中还可以包括如下步骤:判断自动转换功能是否被开启;若是,则获取本地语言选项,根据获取到的本地语言选项为中文简体,确定需要执行繁体汉字到简体汉字的转换,以及需要使用的映射字典为用户自定义映射字典和繁简体映射字典;否则,根据用户预先设置的繁体汉字到简体汉字的转换方向的设置信息,确定需要执行繁体汉字到简体汉字的转换,以及需要使用的映射字典为用户自定义映射字典和繁简体映射字典。
[0142]三、简体汉字和繁体汉字相互转换的系统及方法
[0143]显然,在实际实施的过程中,可以将上述一中的简体汉字到繁体汉字的转换系统和上述二中的繁体汉字到简体汉字的转换系统进行结合,得到本申请的实施例的能够实现简体汉字和繁体汉字之间相互转换的系统,此时,该相互转换的系统的结构也可以如图1和2所示,此时,该相互转换的系统中的字典模块10、输入模块20、转换模块30、输出模块40、设置模块50和判断模块60中的每一个模块,应该既具有在上述一中的简体汉字到繁体汉字的转换系统中时的功能,也应该具有在上述二中的繁体汉字到简体汉字的转换系统中时的功能。这里不再赘述。其中,字典模块10中保存有用户自定义映射字典、繁简体映射字典以及简繁体映射字典。[0144]此时,该系统进行简体汉字和繁体汉字之间相互转换的方法可以包括以下步骤:
[0145]步骤S301,判断系统的自动转换功能是否已经被开启了,若是,则进入步骤S302,否则,进入步骤S305 ;
[0146]步骤S302,获取本地语言选项,若获取到的本地语言选项为中文繁体,则进入步骤S303,否则,若获取到的本地语言选项为中文简体,则进入步骤S304 ;
[0147]步骤S303,确定需要执行简体汉字到繁体汉字的转换,以及需要使用的映射字典为用户自定义映射字典和简繁体映射字典;然后,执行上述一中的步骤S101-S103,实现将文件中的简体汉字转换成繁体汉字;
[0148]步骤S304,确定需要执行繁体汉字到简体汉字的转换,以及需要使用的映射字典为用户自定义映射字典和繁简体映射字典;然后,执行上述二中的步骤S201-S203,实现将文件中的繁体汉字转换成简体汉字;
[0149]步骤S305,获取用户预先设置的转换方向的设置信息,若获取到的该信息为简体汉字到繁体汉字的转换方向,则进入步骤S303,若获取到的该信息为繁体汉字到简体汉字的转换方向,则进入步骤S304。
[0150]下面以一个具体的例子来说明上述的简体汉字和繁体汉字相互转换的方法。
[0151]上述简体汉字和繁体汉字相互转换的系统启动后,需要执行以下操作:
[0152]步骤S401,载入字典模块中的所有字典,包括用户自定义映射字典、简繁体映射字典和繁简体映射字典;
[0153]在实际应用中,对于一个用户而言,若该用户为简体汉字用户,则通常他仅会在用户自定义映射字典中添加繁体汉字词语到简体汉字词语的映射关系,若该用户为繁体汉字用户,则通常他仅会在用户自定义映射字典中添加简体汉字词语到繁体汉字词语的映射关系,因此,用户自定义映射字典中通常只会包含繁体汉字词语到简体汉字词语的映射关系、简体汉字词语到繁体汉字词语的映射关系中的一个。
[0154]步骤S402,当转换系统提供的上述方法被调用,首先判断系统的设置选项中的系统自动转换功能是否被开启,如果被开启了,则获取本地语言选项,根据获取到的本地语言选项来确定需要使用的字典,假设获取到的本地语言选项为中文繁体,则确定要进行简体汉字到繁体汉字的转换。如果未被开启,则获取用户预先设置的转换方向的信息,根据获取到的该信息来确定转换方式,若获取到的该信息为简体汉字到繁体汉字的转换方向,则确定要进行简体汉字到繁体汉字的转换,若获取到的该信息为繁体汉字到简体汉字的转换方向,则确定要进行繁体汉字到简体汉字的转换。
[0155]要进行简体汉字到繁体汉字的转换时,需要的字典为用户自定义映射字典和简繁体映射字典;要进行繁体汉字到简体汉字的转换时,需要的字典为用户自定义映射字典和繁简体映射字典。
[0156]下面的步骤S403-S405,以进行简体汉字到繁体汉字的转换为例说明:
[0157]步骤S403,输入简体汉字字符串后,首先进行中文分句。考虑到中文词汇之间不可能包含标点符号,为了减少比较次数,可以将较长的字符串按照标点符号分为若干个短句;
[0158]步骤S404,分句完成之后,对得到的每一个短句进行中文分词。简繁体转换中的中文分词与普通的中文分词的不同之处在于不需要将所有可能的词语都分解出来,只需要将简繁体字不同的词语(包括单字和由多个单字组成的词)分解出来,因此,与普通的中文分词相比,简繁体转换中的中文分词所需的分词词典较小。简繁体转换中的中文分词的原则是:使分解出来的词语的长度尽可能长,尽可能多。
[0159]在本系统中采用正向最大匹配(FMM)与逆向最大匹配(BMM)相结合的双向最大匹配方法,进行分词。具体分词过程参见上述一中的步骤S102,以及上述二中的步骤S202,这里不再赘述。对一个简体汉字短句的正向分词结果中分解出来的多个词语的权值进行相加得到正向权值,对逆向分词结果中的多个词语的权值进行相加得到逆向权值,取权值权值较大的分词结果作为最终分词结果,如果权值相等,则取逆向分词结果作为最终分词结果。
[0160]另外,为了计算出一个简体汉字短句的正向分词结果的正向权值和逆向分词结果的逆向权值,预先做出了下述定义(I) - (3):
[0161](I)若正向或逆向分词结果中的一个简体汉字词语是与用户自定义映射字典匹配的,则该词语的权值为其长度的N次方值,例如,N=2。
[0162](2)若正向或逆向分词结果中的一个简体汉字词语是与简繁体映射字典匹配的,且该词语中的简体单字均与一个繁体单字存在一一对应的关系,则该词语的权值为其长度。例如,下面这句话:
[0163]天翻地覆盖着。
[0164]由于“天翻地覆”和“覆盖着”都在简繁体映射字典中,所以,该简体汉字短句的正向分词结果是:
[0165]【天翻地覆】盖着,匹配到一个长度为4的词语(该词语为简繁体在标记形式上不同,或者在标记形式上相同但简体汉字与繁体汉字具有一一对应关系的词语),该词语的权值为4 ;
[0166]逆向分词结果是:
[0167]天翻地【覆盖着】,匹配到一个长度为3的词语,该词语的权值为3 ;
[0168]在这种情况下,根据权值大小,取正向分词结果作为该短句的最终分词结果进行简体汉字到繁体汉字的转换。
[0169](3)若正向或逆向分词结果中的一个简体汉字词语是与简繁体映射字典匹配的,且该词语中包含有与多个繁体单字具有对应关系的简体单字,该词语的权值为其长度的N方值与该词语的使用频率之和,这样可以有效地消除歧义。例如,N=2。在实际实现过程中,可以对大量的文章文档进行统计,按照出现频率或使用频率对包含有同一个一对多情况的单字的词进行排序,其中,一对多情况的单字是指:若该单字为简体单字,则该单字与多个繁体单字具有对应关系,若该单字为繁体单字,则该单字与多个简体单字具有对应关系。例如,简体单字“发”对应繁体单字“髪”和“發”,可以在简繁体映射字典中,把“头发” 一词的使用频率定义为2,“发现”一词的使用频率稍高,其使用频率可定义为3。这样,对于下面这句话:
[0170]这个老头发现了他。
[0171]采用正向最大匹配算法得到的正向分词结果为:这个老【头发】现了他。权值为4+2 ;
[0172]采用逆向最大匹配算法得到的逆向分词结果为:这个老头【发现】了他。权值为4+3,经过比较权值,逆向分词结果的逆向权值更大,因此,采用逆向分词结果作为最终分词结果。
[0173]步骤S405,查相应的字典对所有分解后得到的简体汉字词语进行替换,替换为对应的繁体汉字词语,对所有的繁体汉字词语重新进行组装输出,即可得到与输入的简体汉字字符串相对应的繁体汉字字符串,返回给调用本系统的模块。
[0174]对于繁体汉字到简体汉字的转换过程类似,这里不再赘述。
[0175]本申请的上述实施例可以应用于手机等移动终端中,也可以应用于电脑中,本申请对此不做限定。另外,本申请的系统可以提供统一的接口
[0176]综上,本申请以上实施例可以达到以下技术效果:
[0177](I)只需调用转换系统提供的接口,便可实现简体汉字到繁体汉字的转换,或繁体汉字到简体汉字的转换;
[0178](2)可以接收用户预先设置的简体汉字词语到繁体汉字词语的映射关系,或者繁体汉字词语到简体汉字词语的映射关系,并保存在用户自定义映射字典中,这样,在进行分词时,首先与用户自定义映射字典进行匹配,在不存在匹配的词语时,再与系统自带的映射字典进行匹配。通过支持用户对词典的扩充,用户可以按照自己的翻译习惯,例如,对一些外来词的翻译习惯,将符合自己翻译习惯的简繁汉字词语的映射关系添加到用户自定义映射字典中,实现了由于对外来词翻译习惯的不同而对同一事物的不同表达方式之间的转换。
[0179](2)在进行分词时,采用正向最大匹配算法与逆向最大匹配算法相结合的双向最大匹配方法对划分的短句进行进一步分词,具体的,对该短句采用正向最大匹配算法进行分词得到正向分词结果,对该短句采用逆向最大匹配算法进行分词得到逆向分词结果,对得到的正向分词结果的正向权值与逆向分词结果的逆向权值进行比较,取权值较大的分词结果作为最终分词结果,如果权值相等,取逆向分词结果作为最终分词结果。从而,分词结果更加地准确。同时可以利用用户自定义词典,对外来词的不同翻译习惯造成的差异用语进行转换。
[0180]以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
【权利要求】
1.一种简体汉字到繁体汉字的转换系统,其特征在于,包括: 字典模块,用于保存用户自定义映射字典和简繁体映射字典,其中,所述用户自定义映射字典用于记录用户预先设置的简体汉字词语到繁体汉字词语的映射关系,所述简繁体映射字典用于记录系统自带的简体汉字词语到繁体汉字词语的映射关系; 输入模块,用于输入将要被转换的文件中的简体汉字字符串; 转换模块,用于按照标点符号将所述输入模块输入的简体汉字字符串划分为多个简体汉字短句;还用于根据所述字典模块中的用户自定义映射字典和简繁体映射字典,对每一个简体汉字短句进行分词得到多个简体汉字词语,并将每一个简体汉字词语转换为对应的繁体汉字词语; 输出模块,用于将所述转换模块转换得到的所有的繁体汉字词语进行组合,形成与输入的简体汉字字符串对应的繁体汉字字符串,并将所述繁体汉字字符串输出到文件中; 其中,所述转换模块包括: 匹配单元,用于使用正向最大匹配算法,将一个简体汉字短句与所述用户自定义映射字典和所述简繁体映射字典进行匹配,得到该简体汉字短句的正向分词结果;还用于使用逆向最大匹配算法,将该简体汉字短句与所述用户自定义映射字典和所述简繁体映射字典进行匹配,得到该简体汉字短句的逆向分词结果; 计算单元,用于计算所述匹配单元得到的正向分词结果的正向权值、以及逆向分词结果的逆向权值; 确定单元,用于在 所述计算单元计算出的正向权值大于逆向权值时,确定该简体汉字短句的最终分词结果为其正向分词结果,在逆向权值大于或等于正向权值时,确定该简体汉字短句的最终分词结果为其逆向分词结果。
2.根据权利要求1所述的系统,其特征在于,所述匹配单元具体用于在将该简体汉字短句与所述用户自定义映射字典和所述简繁体映射字典进行匹配的过程中,每一次针对该简体汉字短句中的一个连续字符串进行匹配时,先与所述用户自定义映射字典中包含的各个简体汉字词语进行匹配;若匹配到所述用户自定义映射字典中的一个简体汉字词语,则确定该连续字符串为一个简体汉字词语;若与所述用户自定义映射字典中的所有简体汉字词语均不匹配,则继续与所述简繁体映射字典中包含的各个简体汉字词语进行匹配,若匹配到所述简繁体映射字典中的一个简体汉字词语,则确定该连续字符串为一个简体汉字词语。
3.根据权利要求2所述的系统,其特征在于, 所述计算单元计算出的该正向分词结果的正向权值为:该正向分词结果中的多个简体汉字词语的权值的总和; 所述计算单元计算出的该逆向分词结果的逆向权值为:该逆向分词结果中的多个简体汉字词语的权值的总和; 其中,若正向分词结果或逆向分词结果中的一个简体汉字词语是与所述用户自定义词典匹配的,则该简体汉字词语的权值为该简体汉字词语的长度的N次方值;若该简体汉字词语是与所述简繁体映射字典匹配的,且该简体汉字词语中的每一个简体单字均与一个繁体单字具有一一对应关系,则该简体汉字词语的权值为该简体汉字词语的长度;若该简体汉字词语是与所述简繁体映射字典匹配的,且该简体汉字词语中存在与多个繁体单字具有对应关系的简体单字,则该简体汉字词语的权值为该简体汉字词语的长度的N次方值与该简体汉字词语的使用频率之和; 其中,N为大于O的自然数,所述简繁体映射字典中还记录有每一个简体汉字词语的使用频率,该使用频率通过统计得到。
4.根据权利要求1所述的系统,其特征在于,还包括:设置模块和判断模块,其中, 所述设置模块,用于接收用户的设置信息,所述设置信息包括以下之一:开启或关闭所述系统的自动转换功能,简体汉字到繁体汉字的转换方向、或繁体汉字到简体汉字的转换方向;还用于接收用户预先设置的简体汉字词语到繁体汉字词语的映射关系,并保存到所述用户自定义映射字典中; 贝U,所述判断模块,用于在所述输入模块输入将要被转换的文件中的简体汉字字符串之前,判断所述系统的自动转换功能是否被开启,若是,则获取本地语言选项,根据获取到的本地语言选项为中文繁体,确定需要执行简体汉字到繁体汉字的转换,以及需要使用的映射字典为所述用户自定义映射字典和简繁体映射字典,否则,根据用户预先设置的简体汉字到繁体汉字的转换方向的设置信息,确定需要执行简体汉字到繁体汉字的转换,以及需要使用的映射字典为所述用户自定义映射字典和简繁体映射字典。
5.一种简体汉字到繁体汉字的转换方法,其特征在于,包括: 输入将要被转换的文件中的简体汉字字符串,按照标点符号将输入的简体汉字字符串划分为多个简体汉字短句; 根据用户自定义映射字典和简繁体映射字典,对每一个简体汉字短句进行分词得到多个简体汉字词语,并将每一个简体汉字词语转换为对应的繁体汉字词语;其中,所述用户自定义映射字典用于记录用户预先设置的简体汉字词语到繁体汉字词语的映射关系,所述简繁体映射字典用于记录系统自带的简体汉字词语到繁体汉字词语的映射关系; 将转换得到的所有的繁体汉字词语进行组合,形成与输入的简体汉字字符串对应的繁体汉字字符串,并将所述繁体汉字字符串输出到文件中; 其中,所述根据用户自定义映射字典和简繁体映射字典,对每一个简体汉字短句进行分词包括: 使用正向最大匹配算法,将该简体汉字短句与所述用户自定义映射字典和所述简繁体映射字典进行匹配,得到该简体汉字短句的正向分词结果,并计算该正向分词结果的正向权值; 使用逆向最大匹配算法,将该简体汉字短句与所述用户自定义映射字典和所述简繁体映射字典进行匹配,得到该简体汉字短句的逆向分词结果,并计算该逆向分词结果的逆向权值; 若正向权值大于逆向权值,则确定该简体汉字短句的最终分词结果为其正向分词结果,若逆向权值大于或等于正向权值,则确定该简体汉字短句的最终分词结果为其逆向分词结果。
6.根据权利要求5所述的方法,其特征在于,所述将该简体汉字短句与所述用户自定义映射字典和所述简繁体映射字典进行匹配包括: 每一次针对该简体汉字短句中的一个连续字符串进行匹配时,先与所述用户自定义映射字典中包含的各个简体汉字词语进行匹配;若匹配到所述用户自定义映射字典中的一个简体汉字词语,则确定该连续字符串为一个简体汉字词语; 若与所述用户自定义映射字典中的所有简体汉字词语均不匹配,则继续与所述简繁体映射字典中包含的各个简体汉字词语进行匹配,若匹配到所述简繁体映射字典中的一个简体汉字词语,则确定该连续字符串为一个简体汉字词语。
7.根据权利要求6所述的方法,其特征在于, 该正向分词结果的正向权值为:该正向分词结果中的多个简体汉字词语的权值的总和; 该逆向分词结果的逆向权值为:该逆向分词结果中的多个简体汉字词语的权值的总和; 其中,若正向分词结果或逆向分词结果中的一个简体汉字词语是与所述用户自定义词典匹配的,则该简体汉字词语的权值为该简体汉字词语的长度的N次方值;若该简体汉字词语是与所述简繁体映射字典匹配的,且该简体汉字词语中的每一个简体单字均与一个繁体单字具有一一对应关系,则该简体汉字词语的权值为该简体汉字词语的长度;若该简体汉字词语是与所述简繁体映射字典匹配的,且该简体汉字词语中存在与多个繁体单字具有对应关系的简体单字,则该简体汉字词语的权值为该简体汉字词语的长度的N次方值与该简体汉字词语的使用频率之和; 其中,N为大于O的自然数,所述简繁体映射字典中还记录有每一个简体汉字词语的使用频率,该使用频率通过统计得到。
8.根据权利要求5所述的方法,其特征在于,在所述输入将要被转换的文件中的简体汉字字符串之前,还包括: 判断自动转换功能是否被开启; 若是,则获取本地语言选项,根据获取到的本地语言选项为中文繁体,确定需要执行简体汉字到繁体汉字的转换,以及需要使用的映射字典为所述用户自定义映射字典和简繁体映射字典; 否则,根据用户预先设置的简体汉字到繁体汉字的转换方向的设置信息,确定需要执行简体汉字到繁体汉字的转换,以及需要使用的映射字典为所述用户自定义映射字典和简繁体映射字典。
9.一种繁体汉字到简体汉字的转换系统,其特征在于,包括: 字典模块,用于保存用户自定义映射字典和繁简体映射字典,其中,所述用户自定义映射字典用于记录用户预先设置的繁体汉字词语到简体汉字词语的映射关系,所述繁简体映射字典用于记录系统自带的繁体汉字词语到简体汉字词语的映射关系; 输入模块,用于输入将要被转换的文件中的繁体汉字字符串; 转换模块,用于按照标点符号将所述输入模块输入的繁体汉字字符串划分为多个繁体汉字短句;还用于根据所述字典模块中的用户自定义映射字典和繁简体映射字典,对每一个繁体汉字短句进行分词得到多个繁体汉字词语,并将每一个繁体汉字词语转换为对应的简体汉字词语; 输出模块,用于将所述转换模块转换得到的所有的简体汉字词语进行组合,形成与输入的繁体汉字字符串对应的简体汉字字符串,并将所述简体汉字字符串输出到文件中;其中,所述转换模块包括: 匹配单元,用于使用正向最大匹配算法,将一个繁体汉字短句与所述用户自定义映射字典和所述繁简体映射字典进行匹配,得到该繁体汉字短句的正向分词结果;还用于使用逆向最大匹配算法,将该繁体汉字短句与所述用户自定义映射字典和所述繁简体映射字典进行匹配,得到该繁体汉字短句的逆向分词结果; 计算单元,用于计算所述匹配单元得到的正向分词结果的正向权值、以及逆向分词结果的逆向权值; 确定单元,用于在所述计算单元计算出的正向权值大于逆向权值时,确定该繁体汉字短句的最终分词结果为其正向分词结果,在逆向权值大于或等于正向权值时,确定该繁体汉字短句的最终分词结果为其逆向分词结果。
10.根据权利要求9所述的系统,其特征在于,所述匹配单元具体用于在将该繁体汉字短句与所述用户自定义映射字典和所述繁简体映射字典进行匹配的过程中,每一次针对该繁体汉字短句中的一个连续字符串进行匹配时,先与所述用户自定义映射字典中包含的各个繁体汉字词语进行匹配;若匹配到所述用户自定义映射字典中的一个繁体汉字词语,则确定该连续字符串为一个繁体汉字词语;若与所述用户自定义映射字典中的所有繁体汉字词语均不匹配,则继续与所述繁简体映射字典中包含的各个繁体汉字词语进行匹配,若匹配到所述繁简体映射字典中的一个繁体汉字词语,则确定该连续字符串为一个繁体汉字词语。
11.根据权利要求10所述的系统,其特征在于, 所述计算单元计算出的该正向分词结果的正向权值为:该正向分词结果中的多个繁体汉字词语的权值的总和; 所述计算单元计算出的该逆`向分词结果的逆向权值为:该逆向分词结果中的多个繁体汉字词语的权值的总和; 其中,若正向分词结果或逆向分词结果中的一个繁体汉字词语是与所述用户自定义词典匹配的,则该繁体汉字词语的权值为该繁体汉字词语的长度的N次方值;若该繁体汉字词语是与所述繁简体映射字典匹配的,且该繁体汉字词语中的每一个繁体单字均与一个简体单字具有一一对应关系,则该繁体汉字词语的权值为该繁体汉字词语的长度;若该繁体汉字词语是与所述繁简体映射字典匹配的,且该繁体汉字词语中存在与多个简体单字具有对应关系的繁体单字,则该繁体汉字词语的权值为该繁体汉字词语的长度的N次方值与该繁体汉字词语的使用频率之和; 其中,N为大于O的自然数,所述繁简体映射字典中还记录有每一个繁体汉字词语的使用频率,该使用频率通过统计得到。
12.根据权利要求9所述的系统,其特征在于,还包括:设置模块和判断模块,其中, 所述设置模块,用于接收用户的设置信息,所述设置信息包括以下之一:开启或关闭所述系统的自动转换功能,简体汉字到繁体汉字的转换方向、或繁体汉字到简体汉字的转换方向;还用于接收用户预先设置的繁体汉字词语到简体汉字词语的映射关系,并保存到所述用户自定义映射字典中; 贝U,所述判断模块,用于在所述输入模块输入将要被转换的文件中的繁体汉字字符串之前,判断所述系统的自动转换功能是否被开启,若是,则获取本地语言选项,根据获取到的本地语言选项为中文简体,确定需要执行繁体汉字到简体汉字的转换,以及需要使用的映射字典为所述用户自定义映射字典和繁简体映射字典,否则,根据用户预先设置的繁体汉字到简体汉字的转换方向的设置信息,确定需要执行繁体汉字到简体汉字的转换,以及需要使用的映射字典为所述用户自定义映射字典和繁简体映射字典。
13.一种繁体汉字到简体汉字的转换方法,其特征在于,包括: 输入将要被转换的文件中的繁体汉字字符串,按照标点符号将输入的繁体汉字字符串划分为多个繁体汉字短句; 根据用户自定义映射字典和繁简体映射字典,对每一个繁体汉字短句进行分词得到多个繁体汉字词语,并将每一个繁体汉字词语转换为对应的简体汉字词语;其中,所述用户自定义映射字典用于记录用户预先设置的繁体汉字词语到简体汉字词语的映射关系,所述繁简体映射字典用于记录系统自带的繁体汉字词语到简体汉字词语的映射关系; 将转换得到的所有的简体汉字词语进行组合,形成与输入的繁体汉字字符串对应的简体汉字字符串,并将所述简体汉字字符串输出到文件中; 其中,所述根据用户自定义映射字典和简繁体映射字典,对每一个繁体汉字短句进行分词包括: 使用正向最大匹配算法,将该繁体汉字短句与所述用户自定义映射字典和所述繁简体映射字典进行匹配,得到该繁体汉字短句的正向分词结果,并计算该正向分词结果的正向权值; 使用逆向最大匹配算法,将该繁体汉字短句与所述用户自定义映射字典和所述繁简体映射字典进行匹配,得到该繁体汉字短句的逆向分词结果,并计算该逆向分词结果的逆向权值; 若正向权值大于逆向权值,则确定该繁体汉字短句的最终分词结果为其正向分词结果,若逆向权值大于或等于正向权值,则确定该繁体汉字短句的最终分词结果为其逆向分词结果。
14.根据权利要求13所述的方法,其特征在于,所述将该繁体汉字短句与所述用户自定义映射字典和所述繁简体映射字典进行匹配包括: 每一次针对该繁体汉字短句中的一个连续字符串进行匹配时,先与所述用户自定义映射字典中包含的各个繁体汉字词语进行匹配; 若匹配到所述用户自定义映射字典中的一个繁体汉字词语,则确定该连续字符串为一个繁体汉字词语; 若与所述用户自定义映射字典中的所有繁体汉字词语均不匹配,则继续与所述繁简体映射字典中包含的各个繁体汉字词语进行匹配,若匹配到所述繁简体映射字典中的一个繁体汉字词语,则确定该连续字符串为一个繁体汉字词语。
15.根据权利要求14所述的方法,其特征在于, 该正向分词结果的正向权值为:该正向分词结果中的多个繁体汉字词语的权值的总和; 该逆向分词 结果的逆向权值为:该逆向分词结果中的多个繁体汉字词语的权值的总和; 其中,若正向分词结果或逆向分词结果中的一个繁体汉字词语是与所述用户自定义词典匹配的,则该繁体汉字词语的权值为该繁体汉字词语的长度的N次方值;若该繁体汉字词语是与所述繁简体映射字典匹配的,且该繁体汉字词语中的每一个繁体单字均与一个简体单字具有一一对应关系,则该繁体汉字词语的权值为该繁体汉字词语的长度;若该繁体汉字词语是与所述繁简体映射字典匹配的,且该繁体汉字词语中存在与多个简体单字具有对应关系的繁体单字,则该繁体汉字词语的权值为该繁体汉字词语的长度的N次方值与该繁体汉字词语的使用频率之和; 其中,N为大于O的自然数,所述繁简体映射字典中还记录有每一个繁体汉字词语的使用频率,该使用频率通过统计得到。
16.根据权利要求13所述的方法,其特征在于,在所述输入将要被转换的文件中的繁体汉字字符串之前,还包括: 判断自动转换功能是否被开启; 若是,则获取本地语言选项,根据获取到的本地语言选项为中文简体,确定需要执行繁体汉字到简体汉字的转换,以及需要使用的映射字典为所述用户自定义映射字典和繁简体映射字典; 否则,根据用户预先设置的繁体汉字到简体汉字的转换方向的设置信息,确定需要执行繁体汉字到简体汉字的转换,以及需要使用的映射字典为所述用户自定义映射字典和繁简体映射 字典。
【文档编号】G06F17/28GK103778110SQ201210412828
【公开日】2014年5月7日 申请日期:2012年10月25日 优先权日:2012年10月25日
【发明者】邹良辉, 胡志坤, 李远友, 韩忠海 申请人:三星电子(中国)研发中心, 三星电子株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1