当前位置: 首页 > 专利查询>北京大学专利>正文

文本压缩方法和装置制造方法及图纸

技术编号:7604765 阅读:146 留言:0更新日期:2012-07-22 08:16
本发明专利技术提供一种适用于中文等非拉丁语种文本的压缩方法,包括:从待压缩的文本中筛选满足预定词长和出现频率条件的词;根据筛选词的出现频率对筛选词分配编码;利用分配的编码对所述文本进行压缩。相应地,提供一种文本压缩装置。本发明专利技术以词为单位提取待压缩文本中的备选词,并根据备选词的出现频率对备选词进行筛选,以仅保留出现频率相对大的词,从而有效提取中文等非拉丁语种文本数据中的高频扩展词,缩小字典中被编码的词语的总数,并且通过利用这些编码对中文等非拉丁语种文本进行压缩,获得较高的压缩率。

【技术实现步骤摘要】

本专利技术涉及文本数据处理
,尤其涉及一种适用于中文等非拉丁语种文本的压缩方法和装置。
技术介绍
目前,对于拉丁语种文本的压缩,存在许多比较成熟的算法,主要包括统计方法 (比如,Huffman算法)和字典编码方法。但是,对于中文、日文、韩文等语种文本的压缩,由于它们不能像拉丁语种那样根据空格和标点等分隔符来确定每个词的边界,而且这些语言的常用词汇数量巨大、规律复杂,所以难以通过简单地运用针对拉丁语种的统计方法或字典编码方法来有效地提取词、更新词频以及获取文本数据中的高频扩展词。此外,即使根据语义正确提取文本数据中的高频扩展词,但是由于词语的总数太多致使字典体积太大,反而会影响总体的压缩率。针对这种问题,在申请号为200810119940. 7的中国专利申请“一种支持ANSI编码的中文文本的压缩方法”中提出了一种根据待压缩中文文本中的字符的出现频率对字符重新编码的压缩方法。具体地讲,该方法根据待压缩中文文本数据流中的字符个数,分别分配不同整数个字节长度的编码,并按照这些字符的出现频率的降序排列这些字符,从而生成字符码表;然后,根据这些字符在字符码表中的位置,将字符分别用1个或多个字节进行编码。由于该方法以字节为单位对中文文本进行压缩和解压缩,所以能够与当前的各种压缩算法或工具进行结合,但是也正是由于该方法是以字节为单位,而不是以词为单位进行压缩,因此,必然也存在压缩率不高的问题。
技术实现思路
为了解决以上问题,本专利技术提供一种简单有效的适用于中文等非拉丁语种文本的压缩方法和装置,以提高中文等非拉丁语种文本数据的压缩率。为了实现以上目的,本专利技术提供的文本压缩方法包括步骤Si、从待压缩的文本中筛选满足预定词长和出现频率条件的词;步骤S2、根据筛选词的出现频率对筛选词分配编码;步骤S3、利用分配的编码对所述文本进行压缩。优选地,所述步骤Sl包括步骤S11、提取所述待压缩的文本中的不长于最大词长的词作为备选词;步骤S12、根据备选词的出现频率对备选词进行筛选,以仅保留出现频率大于预定频率的筛选词。优选地,所述方法还包括建立字典,在字典中写入备选词和/或筛选词以及这些词的出现频率。优选地,按照字典编码法执行步骤S3。相应地,本专利技术提供一种文本压缩装置,包括输入单元,其用于输入待压缩的文本;备选词筛选单元,其用于从通过输入单元输入的待压缩的文本中筛选满足预定词长和出现频率条件的词;编码单元,其用于根据筛选词的出现频率对筛选词分配编码;压缩单元,其用于利用分配的编码对所述文本进行压缩。优选地,所述备选词筛选单元包括提取单元,其用于提取所述待压缩的文本中的不长于最大词长的词作为备选词;筛选单元,其用于根据备选词的出现频率对备选词进行筛选,以仅保留出现频率大于预定频率的筛选词。优选地,所述装置还包括字典存储单元,其用于存储字典,在该字典中,写入备选词和/或筛选后的词以及这些词的出现频率。优选地,所述压缩单元按照字典编码法利用字典存储单元中存储的字典对通过输入单元输入的文本进行压缩。通过以上技术方案,本专利技术以词为单位提取待压缩文本中的备选词,并根据备选词的出现频率对备选词进行筛选,以仅保留出现频率相对大的词,从而有效提取中文等非拉丁语种文本数据中的高频扩展词,缩小字典中被编码的词语的总数,并且,通过利用这些编码对中文等非拉丁语种文本进行压缩,可获得较高的压缩率。附图说明图1是根据本专利技术实施例的文本压缩方法的示意性流程图;图2是根据本专利技术实施例的提取备选词步骤的示意性流程图;图3是根据本专利技术实施例的筛选备选词步骤的示意性流程图;图4是根据本专利技术实施例的根据当前词及其前缀词的出现频率删除词的过程的流程图;图5是根据本专利技术实施例的切分备选词步骤的示意性流程图;图6是参数ω-与压缩率的曲线图;图7是参数ω max与压缩率的曲线图;图8是根据本专利技术的文本压缩装置的框图。具体实施例方式以下,将结合附图和实施例对本专利技术进行详细描述。本专利技术的技术构思在于以词为单位,而不是以字为单位进行压缩,从而提高压缩率。为了实现以上目的,根据本专利技术的文本压缩方法包括以下步骤步骤Si、从待压缩的文本中筛选满足预定词长和出现频率条件的词;步骤S2、根据筛选词的出现频率对筛选词分配编码;和步骤S3、利用分配的编码对所述文本进行压缩。其中,步骤S3和S4属于现有技术,可通过各种已知的技术来实现,因此,在本说明书中省略其详细描述。以下,将主要针对步骤Sl进行说明。图1是根据本专利技术的一个实施例的文本压缩方法的流程图。参照图1,根据本实施例的文本压缩方法包括以下步骤步骤S11、提取所述待压缩的文本中的不长于最大词长的词作为备选词;步骤S12、根据备选词的出现频率对备选词进行筛选,以仅保留出现频率大于预定频率的筛选词;步骤S13、与步骤S2相同;步骤S14、与步骤S3相同。以下,将对实现本实施例的具体方法进行说明。在实际实现时,建立一个记录备选词和/或筛选后的词以及这些词的出现频率的字典,通过该字典进行备选词的提取、筛选、 编码和文本的压缩。(1)步骤 Sll该步骤的目的在于对整个待压缩文本进行扫描,以从其中提取出不长于预定的最大词长的所有词作为字典的备选词。图2是根据本专利技术的一个实施例的提取备选词步骤的流程图。参照图2,该步骤包括以下步骤步骤S100、设定最大词长kmax ;步骤S101、将当前位置设为文本的开始处;步骤S102、判断当前位置与文本的末尾位置之间的词长k_end是否小于最大词长 kmax,如果k_end < kmax,则在步骤S103中令当前词长j = k_end,否则在步骤S104中令当前词长j = kmax,然后,跳转到步骤S105 ;步骤S105、判断从当前位置开始的j个字组成的词是否在字典中,如果是,则执行步骤S106-S107,否则执行步骤S108-S112 ;步骤S106、将从当前位置开始的j个字组成的词和该词的所有前缀词的频率加1, 并将当前位置往前进j个字;步骤S107、判断当前位置是否已到达文本末尾,如果是,则结束步骤S11,否则跳转到步骤S102 ;步骤S108、将从当前位置开始的j个字组成的词加入到字典中,并将该词的初始频率赋为0 ;步骤S109、判断j是否等于1,如果是,则在步骤Slll中将当前位置往前进1个字, 并跳转到步骤Sl 12,否则在步骤SllO中将j减1,并跳转到步骤S105 ;步骤S112、判断当前位置是否已到达文本末尾,如果是,则结束步骤S11,否则跳转到步骤S102。在以上流程中,从文本数据的开头依次判断从当前位置开始的词长为j个字(j <最大词长kmax)的词是否在字典中。如果该词已在字典中,则将该词及其所有前缀词的频率加1,并将将当前位置往前进词长,即,j个字。如果该词不在字典中,则将该词加入到字典中并赋予初始频率0,此时如果j = 1,则将当前位置往前进1个字,否则将词长j减 1,继续判断从当前位置开始的j个字组成的词是否在字典中,直到扫描完所有文本数据为止。这种提取方法可称为“最大正向匹配法”,通过这种方法,可有效地从中文等非拉丁语种文本中提取备选词和更新词频。(2)步骤 S12该步骤的目的在于根据备选词的出现频率对备选词进行筛选,以仅保留出现频率相对大的词,从而缩小字典中的本文档来自技高网...

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:仇睿恒胡薇
申请(专利权)人:北京大学北大方正集团有限公司北京北大方正技术研究院有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术