一种编码组合语言词语存储及动态派生方法

文档序号:6572070阅读:290来源:国知局
专利名称:一种编码组合语言词语存储及动态派生方法
技术领域
本发明涉及语言文字信息处理技术领域,具体为一种编码组合语言词 语存储及动态派生方法。
背景技术
在信息经济时代,随着手机、PDA (个人数字助理)、掌上游戏机等个 人移动娱乐设备的普及,让嵌入式设备在人们的生活中扮演着越来越重要 的角色。由于人与人之间信息沟通的需要,推进着嵌入式文字输入技术不 断的提高和发展。现有嵌入式输入软件, 一般包括输入引擎部份与词数据 库部份,词数据库部份的词一般是通过线性总词表的方式来储存。这种储 存方式需要占用大量的储存空间,同时运算效率相对低下,所以嵌入式设 备普遍存在运算速度低、数据存储量小等方面的缺点、将严重制约了嵌入 式设备成本、能耗的降低以及体积的减小等多方面的发展。
经研究发现,由字母节组成的外文语种,很多单词都是由一个词干 (stem)派生衍化出来的,拉丁语系和斯拉夫语系的语种都存在这一特点, 如英语、西班牙语、俄语、匈牙利语等。在西班牙语中, 一个有二十多万 条有效词数据,其实是由三万多条词干派生衍化而成,词干派生比例达到 1: 7;在匈牙利语中,有些单词词干最高可以衍化出几十乃至上百个派生
词。由此可见,如果采用传统的完整派生词表存储方式,把每个派生词都 作为一个单词词条来进行数据线性存储的话,对于存储空间的浪费是相当 大的。

发明内容
本发明的目的是针对以上所述的现有嵌入式语言存储以及运算速度存 在的不足,提出利用更为合理的词数据库存储结构,可以节省存储空间, 提高数据检索效率的一种编码组合语言词语存储及动态派生方法。
本发明是这样实现的 一种编码组合语言词语存储及动态派生方法, 将线性总词表分拆为基本词干表、前缀表、后缀表分别在嵌入式设备储存 元件中进行存储;通过前缀表、后缀表分别对应相应的索引获取对应前缀 后缀组合索引;在输入引擎中加入相应的数据结构算法,操作键盘输入的 内容仅搜索词干表,获取相应的词干索引和前后缀组合索引,词干与前后 缀组合产生词干自动变形结构,派生出该词干不同时态、性、数的词组合 的结果集;在显示终端上进行完整词输出。
本发明是针对由字母节组成的外文语种,包括拉丁语系和斯拉夫语系 中的英语、西班牙语、俄语、匈牙利语等,很多单词都是由一个词干(stem) 派生衍化出来的这一特点。采用了更为合理的词数据存储结构,可以在同 样的词条数下面,更为有效的压縮存储空间;利用多重索引的检索技术, 可以提高数据检索效率。应用在随身携带的嵌入式设备等中,可以降低制 造成本,减少体积和重量,同时提升了人们使用时的操作速度,具有广阔 的应用前景。


图1为本发明一种编码组合语言词语存储及动态派生方法的语言派生 流程图2为本发明一种编码组合语言词语存储及动态派生方法的联结关系 示意图3为本发明一种编码组合语言词语存储及动态派生方法的总词拆分 7K意表o
具体实施例方式
以下结合附图和具体实施例对本发明一种编码组合语言词语存储及动 态派生方法进行详细的说明。
首先对本发明涉及的名词进行定义说明。
词干(stem):是未经过时态、性、数改变的原形词,也就是通常字典 可查到的原形词条。
词缀(affix):可以分为前缀和后缀,指的是词干的前后缀变化,是各个 词性的词在不同时态,不同性数情况下规则性的前后缀变化。
词干自动派生变形结构(Stem-deriving-structure):是通过总结性变化, 自动派生成词干的前后缀形式,从而达到节省存储空间,提升数据检索的 目的。在数据库中保存的是词干词条,前后缀是通过引擎对语法的归纳直 接调用到词干之后,生成正确的词形变化。
本发明是针对由字母节组成的外文语种,包括拉丁语系和斯拉夫语系 中的英语、西班牙语、俄语、匈牙利语等,很多单词都是由一个词干(stem) 派生衍化出来的这一特点。将一种相应的语言的线性总词表分拆为基本词 干表、前缀表、后缀表,分别在嵌入式设备储存元件中进行存储;通过相 应的数据结构算法,前缀表、后缀表分别对应相应的索引获取对应前缀后 缀组合表;前缀后缀组合表对应相应的前后缀组合索引;通过相应的数据 结构算法,操作键盘输入的内容仅需搜索词量较少的在词干表,获得相应 的词干索引和前后缀组合索引,词干与前后缀组合产生词干自动变形结构, 派生出该词干不同时态、性、数的词组合的结果集;在显示终端上进行完 整词输出,以供用户进行选择。
具体词干派生正确的派生词的具体的方法如图1所示,在嵌入式终端 输入所需输入的内容,系统自动搜索词干表,在词表中取得一行,获得词 干索引和前缀后缀组合索引,同时清空设备输出终端派生结果集;根据词 干索引,把词干加入派生结果集中,系统调用前后缀组合索引,如果前后 缀组合索引为0,也就是没有前后缀,派生词为词干的本身,直接将派生 结果生成,派生结束,在终端设备上直接输出。如果前后缀组合索引不为 0,将获取对应的前后缀组合表对应行数数据,放入前后缀索引数组,如果 数组已为空,将词干为派生词生成派生结果集。如果数组不为空,从数组 中取得一对前缀后缀元素,临时派生设置为词干。如果前缀索引为0,将 直接判断后缀结果是否为0,如果后缀索引为0,生成的临时派生词为基本 词干,加入派生词结果集中,如果数组已为空,则将生成的派生结果集在 输出终端上输出。如果前缀索引不为0,临时派生词添加对应的前缀,然 后判断后缀索引是否为O,如果为0,临时派生词加入派生词结果集中。如 果后缀索引不为0,临时派生词添加对应后缀后临时派生词加入派生结果 集中。派生结果集再次判断前后缀数组为空,如果是空,派生词结果集生 成,在相应的嵌入式设备终端的显示元件中进行输出,供使用者进行选择。
实施例l
以下以英语为例,对本发明进行详细的说明。如图3所示,英语的总词 表进行拆分处理,这样总词表就可以通过生成技术分为四个分词表。四个 分词表的联结关系如图2所示,图中的圆角方框110内为语言数据,方框 111内为数据表索引;圆角黑体方框内为后缀语言数据,带箭头的线条为 相互关联的指向。前缀处理表101内圆角方框对应的是前缀语言数据,旁 边的顺序数字编号是前缀索引106。后缀处理表102内圆角黑体方框对应 的是前缀语言数据,旁边的顺序数字编号是后缀索引107。通过相应的数 据结构算法,前缀索引和后缀索引生成前后缀组合表103,前后缀索引组 合表103旁边的顺序数字编号为前后缀组合索引109。词干表104的词干 语言数据旁边的顺序编号为词干索引108。词干索引108与前后缀组合索 引109派生出所需的所有单词的词表105。
依照以上的方法,对生成的分词表数据,在输入引擎中加入如下数据结 构算法,以达到对分词表进行联结派生。 1、词干表存放所有的词干
"a",词干索引1 "an",词干索引2 "ant",词干索引3
"expect",词干索引2345
"lock",词干索引表12345
2、前缀处理表
"re",前缀处理索引1 "un",前缀处理索引2
"dis",前缀处理索引3
} 3、后缀处理表
"er",后缀处理表索引1 "est",后缀处理表索引2 "ing",后缀处理表索引3
"S", 后缀处理表索引4
"ed",后缀处理表索引5
4、前后缀组合表词语可能的前缀处理+后缀处理生成的排列组合表
"2, 0}{0, 5}{2, 5}{0, 3}{2, 3}}代表{{ "un" , "" }, {"", "ed" }, { "un" , "ed" }, { "" , "ing" }, { "im" , "ing" }},前后缀 组合索引1
{{0, 5}{0, 2}};代表""","ed" }, { "", "est" }},前后缀组
合索引23
5、词表词干索引+前缀后缀组合索引,包含与词干相同数目的数据
1+0,对应的是a; 2+0,对应的是an; 3+0,对应的是ant;
2345 + 1,对应的是expect, unexpect, expected, unexpected, expecting, unexp6cting5
12345+1,对应的是lock, unlock, locked, unlocked, locking, unlocking;
动态的派生的详细过程如下
以2345+1为例
1、 由词干索引2345,査词干表取得"expect";
2、 由前缀后缀组合索引1査前缀后缀组合表取得
{{2,0}{0,5}{2,5}{0,3}{2,3}},如果为0表示没有前缀或后缀。
3、 从每个包含前缀处理表取得前缀,如果为O表示没有前缀;查后 缀处理表取得后缀,如果为O表示没有后缀;结合以上结果与expect产 生expec词干自动派生变形结构,派生出所需的词。
4、 派生词组合完成,在相应的显示屏幕上输出供选择。 实施例2
用英语单词为例,在嵌入式设备应用中进行详细的说明-
动词work,数据库中保存了 work这一词条,但是在实际发送短信或
者Email中,work的原形形式用法不是很多,动词会根据时态以及主语的
不同的变位形式。 具体规则如
I worked very late last night 。
如过去时过去分词词尾加一ed。
I am working right now。 现在进行时、现在分词词尾加一ing。
He works very hard。 第三人称单数现在时词尾加一s。
由于大部分动词具有和work单词相同的时态性数的变化,所以在设备 中运用本发明方法,可以在同样的存储空间下存放更多的单词词性,并有 利于提高数据检索效率。
以上仅以英语为例,对本发明进行说明,本发明的保护范围不仅限于英 语,所有包括拉丁语系或斯拉夫语系等,如西班牙语、俄语、匈牙利语等, 单词符合都是由一个词干(stem)派生衍化出来这一特点的,具有一定的 单词的前后缀变化规律的其它外语也可以应用本方法,只是存在规则的复 杂程度各异而已。
权利要求
1、一种编码组合语言词语存储及动态派生方法,其特征在于将线性总词表分拆为基本词干表、前缀表、后缀表分别在嵌入式设备储存元件中进行存储;通过前缀表、后缀表分别对应相应的索引获取对应前缀后缀组合索引;在输入引擎中加入相应的数据结构算法,操作键盘输入的内容仅搜索词干表,获取相应的词干索引和前后缀组合索引,词干与前后缀组合产生词干自动变形结构,派生出该词干不同时态、性、数的词组合的结果集;在显示终端上进行完整词输出。
全文摘要
一种编码组合语言词语存储及动态派生方法,其特征在于将线性总词表分拆为基本词干表、前缀表、后缀表分别在嵌入式设备储存元件中进行存储;通过前缀表、后缀表分别对应相应的索引获取对应前缀后缀组合索引;在输入引擎中加入相应的数据结构算法,操作键盘输入的内容搜索词干表和前后缀组合索引,词干与前后缀组合产生词干自动变形结构,派生出该词干不同时态、性、数的词组合的结果集;在显示终端上进行完整词输出。本发明采用了更为合理的词数据存储结构,有效的压缩存储空间;提高了数据检索效率。应用在随身携带的嵌入式设备中,可以减低制造成本,减少体积和重量,同时提升了人们使用时的操作速度,具有广阔的应用前景。
文档编号G06F3/023GK101114292SQ20071002997
公开日2008年1月30日 申请日期2007年8月29日 优先权日2007年8月29日
发明者严春莲 申请人:严春莲
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1