CN102567322B - 文本压缩方法和装置 - Google Patents

文本压缩方法和装置 Download PDF

Info

Publication number
CN102567322B
CN102567322B CN201010586545.7A CN201010586545A CN102567322B CN 102567322 B CN102567322 B CN 102567322B CN 201010586545 A CN201010586545 A CN 201010586545A CN 102567322 B CN102567322 B CN 102567322B
Authority
CN
China
Prior art keywords
word
current
frequency
occurrences
long
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.)
Expired - Fee Related
Application number
CN201010586545.7A
Other languages
English (en)
Other versions
CN102567322A (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.)
New Founder Holdings Development Co ltd
Peking University
Peking University Founder Research and Development Center
Original Assignee
BEIDA FANGZHENG TECHN INST Co Ltd BEIJING
Peking University
Peking University Founder Group 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 BEIDA FANGZHENG TECHN INST Co Ltd BEIJING, Peking University, Peking University Founder Group Co Ltd filed Critical BEIDA FANGZHENG TECHN INST Co Ltd BEIJING
Priority to CN201010586545.7A priority Critical patent/CN102567322B/zh
Publication of CN102567322A publication Critical patent/CN102567322A/zh
Application granted granted Critical
Publication of CN102567322B publication Critical patent/CN102567322B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Machine Translation (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

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

Description

文本压缩方法和装置
技术领域
本发明涉及文本数据处理技术领域,尤其涉及一种适用于中文等非拉丁语种文本的压缩方法和装置。
背景技术
目前,对于拉丁语种文本的压缩,存在许多比较成熟的算法,主要包括统计方法(比如,Huffman算法)和字典编码方法。但是,对于中文、日文、韩文等语种文本的压缩,由于它们不能像拉丁语种那样根据空格和标点等分隔符来确定每个词的边界,而且这些语言的常用词汇数量巨大、规律复杂,所以难以通过简单地运用针对拉丁语种的统计方法或字典编码方法来有效地提取词、更新词频以及获取文本数据中的高频扩展词。此外,即使根据语义正确提取文本数据中的高频扩展词,但是由于词语的总数太多致使字典体积太大,反而会影响总体的压缩率。
针对这种问题,在申请号为200810119940.7的中国专利申请“一种支持ANSI编码的中文文本的压缩方法”中提出了一种根据待压缩中文文本中的字符的出现频率对字符重新编码的压缩方法。具体地讲,该方法根据待压缩中文文本数据流中的字符个数,分别分配不同整数个字节长度的编码,并按照这些字符的出现频率的降序排列这些字符,从而生成字符码表;然后,根据这些字符在字符码表中的位置,将字符分别用1个或多个字节进行编码。由于该方法以字节为单位对中文文本进行压缩和解压缩,所以能够与当前的各种压缩算法或工具进行结合,但是也正是由于该方法是以字节为单位,而不是以词为单位进行压缩,因此,必然也存在压缩率不高的问题。
发明内容
为了解决以上问题,本发明提供一种简单有效的适用于中文等非拉丁语种文本的压缩方法和装置,以提高中文等非拉丁语种文本数据的压缩率。
为了实现以上目的,本发明提供的文本压缩方法包括:步骤S1、从待压缩的文本中筛选满足预定词长和出现频率条件的词;步骤S2、根据筛选词的出现频率对筛选词分配编码;步骤S3、利用分配的编码对所述文本进行压缩。
优选地,所述步骤S1包括:步骤S11、提取所述待压缩的文本中的不长于最大词长的词作为备选词;步骤S12、根据备选词的出现频率对备选词进行筛选,以仅保留出现频率大于预定频率的筛选词。
优选地,所述方法还包括:建立字典,在字典中写入备选词和/或筛选词以及这些词的出现频率。
优选地,按照字典编码法执行步骤S3。
相应地,本发明提供一种文本压缩装置,包括:输入单元,其用于输入待压缩的文本;备选词筛选单元,其用于从通过输入单元输入的待压缩的文本中筛选满足预定词长和出现频率条件的词;编码单元,其用于根据筛选词的出现频率对筛选词分配编码;压缩单元,其用于利用分配的编码对所述文本进行压缩。
优选地,所述备选词筛选单元包括:提取单元,其用于提取所述待压缩的文本中的不长于最大词长的词作为备选词;筛选单元,其用于根据备选词的出现频率对备选词进行筛选,以仅保留出现频率大于预定频率的筛选词。
优选地,所述装置还包括字典存储单元,其用于存储字典,在该字典中,写入备选词和/或筛选后的词以及这些词的出现频率。
优选地,所述压缩单元按照字典编码法利用字典存储单元中存储的字典对通过输入单元输入的文本进行压缩。
通过以上技术方案,本发明以词为单位提取待压缩文本中的备选词,并根据备选词的出现频率对备选词进行筛选,以仅保留出现频率相对大的词,从而有效提取中文等非拉丁语种文本数据中的高频扩展词,缩小字典中被编码的词语的总数,并且,通过利用这些编码对中文等非拉丁语种文本进行压缩,可获得较高的压缩率。
附图说明
图1是根据本发明实施例的文本压缩方法的示意性流程图;
图2是根据本发明实施例的提取备选词步骤的示意性流程图;
图3是根据本发明实施例的筛选备选词步骤的示意性流程图;
图4是根据本发明实施例的根据当前词及其前缀词的出现频率删除词的过程的流程图;
图5是根据本发明实施例的切分备选词步骤的示意性流程图;
图6是参数ωmin与压缩率的曲线图;
图7是参数ωmax与压缩率的曲线图;
图8是根据本发明的文本压缩装置的框图。
具体实施方式
以下,将结合附图和实施例对本发明进行详细描述。
本发明的技术构思在于以词为单位,而不是以字为单位进行压缩,从而提高压缩率。为了实现以上目的,根据本发明的文本压缩方法包括以下步骤:
步骤S1、从待压缩的文本中筛选满足预定词长和出现频率条件的词;
步骤S2、根据筛选词的出现频率对筛选词分配编码;和
步骤S3、利用分配的编码对所述文本进行压缩。
其中,步骤S3和S4属于现有技术,可通过各种已知的技术来实现,因此,在本说明书中省略其详细描述。以下,将主要针对步骤S1进行说明。
图1是根据本发明的一个实施例的文本压缩方法的流程图。参照图1,根据本实施例的文本压缩方法包括以下步骤:
步骤S11、提取所述待压缩的文本中的不长于最大词长的词作为备选词;
步骤S12、根据备选词的出现频率对备选词进行筛选,以仅保留出现频率大于预定频率的筛选词;
步骤S13、与步骤S2相同;
步骤S14、与步骤S3相同。
以下,将对实现本实施例的具体方法进行说明。在实际实现时,建立一个记录备选词和/或筛选后的词以及这些词的出现频率的字典,通过该字典进行备选词的提取、筛选、编码和文本的压缩。
(1)步骤S11
该步骤的目的在于对整个待压缩文本进行扫描,以从其中提取出不长于预定的最大词长的所有词作为字典的备选词。图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,如果是,则在步骤S111中将当前位置往前进1个字,并跳转到步骤S112,否则在步骤S110中将j减1,并跳转到步骤S105;
步骤S112、判断当前位置是否已到达文本末尾,如果是,则结束步骤S11,否则跳转到步骤S102。
在以上流程中,从文本数据的开头依次判断从当前位置开始的词长为j个字(j<最大词长kmax)的词是否在字典中。如果该词已在字典中,则将该词及其所有前缀词的频率加1,并将将当前位置往前进词长,即,j个字。如果该词不在字典中,则将该词加入到字典中并赋予初始频率0,此时如果j=1,则将当前位置往前进1个字,否则将词长j减1,继续判断从当前位置开始的j个字组成的词是否在字典中,直到扫描完所有文本数据为止。这种提取方法可称为“最大正向匹配法”,通过这种方法,可有效地从中文等非拉丁语种文本中提取备选词和更新词频。
(2)步骤S12
该步骤的目的在于根据备选词的出现频率对备选词进行筛选,以仅保留出现频率相对大的词,从而缩小字典中的词的总数,即,缩小字典的体积。比如,可简单地从字典中删除出现频率小的备选词,仅保留出现频率大于预定频率的词,和/或基于词长较长的词的删留取决于词长较短的词的出现频率的原则来决定备选词的删留。
图3是根据本发明的一个实施例的筛选备选词步骤的流程。参照图3,该步骤包括以下步骤:
步骤S201、将当前词长k设为1;
步骤S202、将词长为k的下一个词赋给当前词,并判断当前词的出现频率是否小于最小出现频率fmin,如果当前词的出现频率小于fmin,则在步骤S214中删除当前词,并跳转到步骤S211,否则执行步骤S203-S204;
步骤S203、判断当前词长k是否等于1,如果当前词长k等于1,则跳转到步骤S211,否则跳转到步骤S204;
步骤S204、对当前词进行切分,以寻找当前词的所有存在于字典中的前缀词;根据当前词及其前缀词的出现频率删除当前词及其前缀词中出现频率相对小的词,并跳转到步骤S211;
步骤S211、判断词长为k的词是否判断完毕,如果判断完毕,则执行步骤S212-S213,否则跳转到步骤S202;
步骤S212、判断当前词长k是否为最大词长kamx,如果当前词长k为最大词长kmax,则结束步骤S12,否则执行步骤S213;
步骤S213、将当前词长k加1,并跳转到步骤S202。
如图4所示,步骤S204中根据当前词及其前缀词的出现频率删除当前词及其前缀词中出现频率相对小的词的步骤进一步包括:
步骤S205、判断以下公式(1)是否成立:
f &alpha; < f &times; &omega; min n - - - ( 1 )
其中,fα为当前词的出现频率,f为当前词的所有前缀词的频率之和,ωmin为指定参数,n为当前词的所有前缀词的个数,如果公式(1)成立,则执行步骤S206,否则执行步骤S207-S210;
步骤S206、将当前词从字典中删除,并跳转到步骤S211;
步骤S207、判断以下公式(2)是否成立:
f &alpha; f &beta; , i > &omega; max - - - ( 2 )
其中,i为当前词的存在于字典中的前缀词的索引,i=1,...,n,fβ,i为当前词的第i个前缀词的出现频率,ωmax为指定参数,如果公式(2)成立,则执行步骤S208-S210,否则执行步骤S209-S210;
步骤S208、将当前词的第i个前缀词从字典中删除;
步骤S209、判断i是否等于n,如果i等于n,则跳转到步骤S211,否则执行步骤S210;
步骤S210、将i加1,并跳转到步骤S207。
这里,所述最大词长k优选为2或3或4。
在以上流程中,按照词长从短(即,1)到长(即,最大词长kmax)的顺序进行筛选。对于词长为1的当前词,仅判断其出现频率是否小于指定的最小出现频率fmin,如果小于fmin,则将其从字典中删除,否则保留,而对于词长大于1的当前词,除了判断其出现频率是否小于指定的最小出现频率fmin之外,还需对其进行切分来寻找其出现在字典中的所有前缀词,并且基于词长较长的词的删留取决于词长较短的词的出现频率的原则来决定当前词及其前缀词的删留。具体地,如果当前词的所有前缀词的频率之和与指定参数ωmin的乘积除以前缀词的个数大于当前词的出现频率(即,公式(1)成立),则将当前词从字典中删除,该步骤也可看作为将出现频率小于其所有前缀词的加权平均频率的词从字典中删除。如果当前词的所有前缀词的频率之和与指定参数ωmin的乘积除以前缀词的个数不长于当前词的出现频率(即,公式(1)不成立),则对于当前词的每个前缀词,判断当前词的出现频率除以该前缀词的出现频率是否大于指定参数ωmax,如果大于ωmax(即,公式(2)成立),则将该前缀词从字典中删除,该步骤也可看作为将出现频率过小的词长较短的前缀词从字典中删除。通过以上这种筛选方法,可容易获得中文等非拉丁语种文本数据中的高频扩展词。
此外,可替换地,可首先对词长为1的所有备选词判断其出现频率是否小于指定的最小出现频率,并将其出现频率小于指定的最小出现频率的单个字的备选词从字典中删除。然后在保留下来的备选词中,从词长2开始进行按照与图3所示流程类似的流程进行处理,具体地,在图3所示流程中,在步骤S201中将2赋给当前词长k,并删除步骤S203,在执行完步骤S202之后,直接执行步骤S204即可。
另外可替换地,还可首先按照词长从短(即,1)到长(即,最大词长kmax)的顺序将所有出现频率小于指定的最小出现频率的词删除,然后在保留下来的备选词中从从词长2开始进行按照与图3所示流程类似的流程进行处理,具体地,在图3所示流程中,在步骤S201中将2赋给当前词长k,并删除步骤S202和S203。
图5是根据本发明的一个实施例的切分备选词步骤的流程图。参照图5,该步骤包括以下步骤:
步骤S301、将待被切分的词赋给当前词,并设当前词的词长为k’,待查找的前缀词长度k”=k’-1;
步骤S302、判断当前词长k’是否等于1,如果是,则结束步骤S204中的切分步骤,否则跳转到步骤S303;
步骤S303、判断当前词的前p个字组成的词是否在字典中,其中p的值与k”相等,如果是,则执行步骤S304-S305,否则执行步骤S306-S307;
步骤S304、将当前词的前p个字组成的词放入前缀词表中;
步骤S305、将当前词的后k’-p个字组成的词赋给当前词,并设当前词的长度k’=k’-p,待查找的前缀词长度k”=k’-1,然后跳转到步骤S302;
步骤S306、判断p是否等于1,如果是,则跳转到步骤S305,否则在步骤S307中将p减1,并跳转到步骤S303。
在以上流程中,从长到短依次判断当前词的前缀词是否存在于字典中,并将存在于字典中的前缀词放入前缀词表中,以便利用该前缀词表来判断当前词及其前缀词的删留。
(3)步骤S13和步骤S14
在这两个步骤中,可按照现有的字典编码法来实现编码和压缩。关于字典编码法,比如,可以参考huffman编码,即对频率高的词分配短编码,对频率低的词分配长编码,用编码替换词在原文中的位置以实现压缩的目的。
以下,将对本发明的压缩质量有重要影响的三个参数,即,最大词长kmax、指定参数ωmin和ωmax的取值进行说明。
(1)最大词长kmax
一般来讲,最大词长kmax越大,压缩率越高,但是压缩时间也越长。经过测试,发现当kmax取2或3或4时比较合适。
(2)参数ωmin
图6是对两个测试文件,即,“小说”文件和“资源”文件进行压缩测试的实验图,该图反映了当最大词长kmax为2时,排除ωmax的影响后(ωman=1.0),ωmin对压缩率的影响,其中,横轴表示ωmin,纵轴表示压缩率。图5中的曲线图表明,当ωmin在0.05附近时压缩率最优。
(3)参数ωmax
图7也是对两个测试文件,即,“小说”文件和“资源”文件进行压缩测试的实验图,该图反映了当最大词长kmax为2时,排除ωmin的影响后(ωmin=0.0),ωmax对压缩率的影响,其中,横轴表示ωmax,纵轴表示压缩率。图6中的曲线图表明,当ωmax在0.9附近时压缩率变化趋于稳定。
因此,在实际实现时,可将kmax=2、ωmin=0.05、ωmax=0.9作为默认值。
以下,将结合一个具体的实例对本发明方法进行进一步的说明。
以下为一段待处理的中文文本,其大小为2,195,488字节。
在本示例中,令最大词长kmax为3,最小出现频率为3,ωmin为0.1、ωmax为0.9。
首先,扫描文本数据,提取备选词。比如,对于第一句话,按照图2所示流程,可依次提取如下备选词:古丽娜、古丽、古、丽娜的、丽娜、丽、娜的眼、娜的、娜……。以下表1为对以上整篇文本进行扫描获得的部分备选词表,其中删除了出现频率小于3的所有备选词。
表1
备选词 频率
12
影风 11
古丽 10
10
古丽娜 10
3
正常 3
接着,对提取的备选词进行筛选,具体举例如下:
(1)“影风”的出现频率为11,“影”的出现频率为12,“风”不在备选词中(由于其出现频率小于3,所以已被删除)。
由于所以保留“影风”。
由于所以将“影”从字典中删除。
(2)“古丽”的出现频率为10,“古”的出现频率为10,“丽”不在备选词中(由于其出现频率小于3,所以已被删除)。
由于所以保留“古丽”。
由于所以将“古”从字典中删除。
(3)“正常”的出现频率为3,“正”的出现频率为3,“常”不在备选词中(由于其出现频率小于3,所以已被删除)。
由于所以保留“正常”。
由于所以将“正”从字典中删除。
(4)“古丽娜”的前缀“古丽”在备选词中,所以按照图3所示切分流程图,将其分为“古丽”和“娜”。
“古丽娜”的出现频率为10,“古丽”的出现频率为10,“娜”不在备选词中(由于其出现频率小于3,所以已被删除)。
由于所以保留“古丽娜”。
由于所以将“古丽”从字典中删除。
表1所示部分备选词经过筛选后的结果如表2所示。
表2
备选词 频率
影风 11
古丽娜 10
正常 3
接着,利用对字典中筛选后的词分配编码,并利用这些编码对文本进行字典压缩。经过压缩之后,可得到大小为682,688字节的压缩文本,压缩率约为68.9%。而采用zip压缩方法对以上文本进行压缩,仅能得到大小为946,588字节的压缩文本,压缩率仅为约56.9%。从而,可看出通过本发明方法可提高文本,尤其是对于不能以空格和标点等分隔符进行分词的语种的文本的压缩率。
这里,应该指出,以上实例仅仅用作示例性目的。如上所述,本发明还可应用于日文、韩文等非拉丁语种的文本,并且,除了利用字典以外,还可以以其它方式提取和筛选备选词。
此外,为了实现以上方法,本发明提供一种文本压缩装置。图8中显示了利用字典提取、筛选备选词的文本压缩装置的框图。如图8所示,该装置包括输入单元100、压缩单元300、字典存储单元400、编码单元600和备选词筛选单元,其中,备选词筛选单元用于从通过输入单元输入的待压缩的文本中筛选满足预定词长和出现频率条件的词,包括备选词提取单元200和筛选单元500。
具体地讲,输入单元100用于输入待压缩的文本。备选词提取单元200用于提取通过输入单元100输入的文本中的不长于预定的最大词长的所有词作为备选词,并将这些备选词及其出现频率记录到字典存储单元400中的字典中。压缩单元300用于利用字典存储单元400中存储的字典对通过输入单元100输入的待压缩文本进行压缩。字典存储单元400用于存储字典,在该字典中,写入备选词和/或筛选后的词以及这些词的出现频率。筛选单元500用于根据备选词的出现频率对字典存储单元400中存储的字典中通过备选词提取单元200提取的备选词进行筛选,以仅保留出现频率大于预定频率的词。编码单元600用于对字典存储单元400中存储的字典中经过筛选单元500筛选的词根据它们的出现频率分配编码。
以上已参照附图和实施例对本发明进行了详细描述,但是,应该理解,本发明并不限于以上所公开的具体实施例,任何本领域的技术人员在此基础之上容易想到的修改和变型都应包括在本发明的保护范围内。

Claims (12)

1.一种文本压缩方法,包括:
步骤S1、从待压缩的文本中筛选满足预定词长和出现频率条件的词;
步骤S2、根据筛选词的出现频率对筛选词分配编码;
步骤S3、利用分配的编码对所述文本进行压缩;
所述方法还包括:建立字典,在字典中写入备选词和/或筛选词以及这些词的出现频率;
其中,所述步骤S1包括:
步骤S11、提取所述待压缩的文本中的不长于最大词长的词作为字典的备选词;
具体地,步骤S11包括以下步骤:
步骤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,如果是,则在步骤S111中将当前位置往前进1个字,并跳转到步骤S112,否则在步骤S110中将j减1,并跳转到步骤S105;
步骤S112、判断当前位置是否已到达文本末尾,如果是,则结束步骤S11,否则跳转到步骤S102。
2.根据权利要求1所述的方法,其特征在于,所述步骤S1中,在步骤S11之后还包括:
步骤S12、根据备选词的出现频率对备选词进行筛选,以仅保留出现频率大于预定频率的筛选词。
3.根据权利要求1所述的方法,其特征在于,所述最大词长k为2或3或4。
4.根据权利要求2所述的方法,其特征在于,所述步骤S12包括以下步骤:
步骤S201、将当前词长k设为1;
步骤S202、将词长为k的下一个词赋给当前词,并判断当前词的出现频率是否小于最小出现频率fmin,如果当前词的出现频率小于fmin,则在步骤S214中删除当前词,并跳转到步骤S211,否则执行步骤S203-S204;
步骤S203、判断当前词长k是否等于1,如果当前词长k等于1,则跳转到步骤S211,否则跳转到步骤S204;
步骤S204、对当前词进行切分,以寻找当前词的所有存在于字典中的前缀词;根据当前词及其前缀词的出现频率删除当前词及其前缀词中出现频率相对小的词,并跳转到步骤S211;
步骤S211、判断词长为k的词是否判断完毕,如果判断完毕,则执行步骤S212-S213,否则跳转到步骤S202;
步骤S212、判断当前词长k是否为最大词长kamx,如果当前词长k为最大词长kmax,则结束步骤S12,否则执行步骤S213;
步骤S213、将当前词长k加1,并跳转到步骤S202。
5.根据权利要求4所述的方法,其特征在于,所述步骤S204中根据当前词及其前缀词的出现频率删除当前词及其前缀词中出现频率相对小的词的步骤包括:
步骤S205、判断以下公式(1)是否成立:
f &alpha; < f &times; &omega; min n - - - ( 1 )
其中,fα为当前词的出现频率,f为当前词的所有前缀词的频率之和,ωmin为指定参数,n为当前词的所有前缀词的个数,如果公式(1)成立,则执行步骤S206,否则执行步骤S207-S210;
步骤S206、将当前词从字典中删除,并跳转到步骤S211;
步骤S207、判断以下公式(2)是否成立:
f &alpha; f &beta; , i > &omega; max - - - ( 2 )
其中,i为当前词的存在于字典中的前缀词的索引,i=1,...,n,fβ,i为当前词的第i个前缀词的出现频率,ωmax为指定参数,如果公式(2)成立,则执行步骤S208-S210,否则执行步骤S209-S210;
步骤S208、将当前词的第i个前缀词从字典中删除;
步骤S209、判断i是否等于n,如果i等于n,则跳转到步骤S211,否则执行步骤S210;
步骤S210、将i加1,并跳转到步骤S207。
6.根据权利要求4所述的方法,其特征在于,所述最小出现频率为3。
7.根据权利要求5所述的方法,其特征在于,所述参数ωmin为0.05,参数ωmax为0.9。
8.根据权利要求4所述的方法,其特征在于,所述步骤S204中对当前词进行切分,以寻找当前词的所有存在于字典中的前缀词的步骤包括:
步骤S301、将待被切分的词赋给当前词,并设当前词的词长为k’,待查找的前缀词长度k”=k’-1;
步骤S302、判断当前词长k’是否等于1,如果是,则结束步骤S204中的切分步骤,否则跳转到步骤S303;
步骤S303、判断当前词的前p个字组成的词是否在字典中,其中p的值与k”相等,如果是,则执行步骤S304-S305,否则执行步骤S306-S307;
步骤S304、将当前词的前p个字组成的词放入前缀词表中;
步骤S305、将当前词的后k’-p个字组成的词赋给当前词,并设当前词的长度k’=k’-p,待查找的前缀词长度k”=k’-1,然后跳转到步骤S302;
步骤S306、判断p是否等于1,如果是,则跳转到步骤S305,否则在步骤S307中将p减1,并跳转到步骤S303。
9.根据权利要求1所述的方法,其特征在于,按照字典编码法执行步骤S3。
10.一种文本压缩装置,包括:
备选词筛选单元,其用于从待压缩的文本中筛选满足预定词长和出现频率条件的词;
编码单元,其用于根据筛选词的出现频率对筛选词分配编码;
压缩单元,其用于利用分配的编码对所述文本进行压缩;
字典存储单元,其用于建立字典,在字典中写入备选词和/或筛选词以及这些词的出现频率;
其中,所述备选词筛选单元执行以下步骤:
步骤S11,提取所述待压缩的文本中的不长于最大词长的词作为字典的备选词;
具体的,步骤S11包括:
步骤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,如果是,则在步骤S111中将当前位置往前进1个字,并跳转到步骤S112,否则在步骤S110中将j减1,并跳转到步骤S105;
步骤S112、判断当前位置是否已到达文本末尾,如果是,则结束步骤S11,否则跳转到步骤S102。
11.根据权利要求10所述的装置,其特征在于,所述备选词筛选单元还包括:
筛选单元,其用于根据备选词的出现频率对备选词进行筛选,以仅保留出现频率大于预定频率的筛选词。
12.根据权利要求10所述的装置,其特征在于,所述压缩单元按照字典编码法利用字典存储单元中存储的词对输入的文本进行压缩。
CN201010586545.7A 2010-12-09 2010-12-09 文本压缩方法和装置 Expired - Fee Related CN102567322B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201010586545.7A CN102567322B (zh) 2010-12-09 2010-12-09 文本压缩方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010586545.7A CN102567322B (zh) 2010-12-09 2010-12-09 文本压缩方法和装置

Publications (2)

Publication Number Publication Date
CN102567322A CN102567322A (zh) 2012-07-11
CN102567322B true CN102567322B (zh) 2015-04-01

Family

ID=46412763

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010586545.7A Expired - Fee Related CN102567322B (zh) 2010-12-09 2010-12-09 文本压缩方法和装置

Country Status (1)

Country Link
CN (1) CN102567322B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104933063B (zh) * 2014-03-19 2018-08-24 重庆新媒农信科技有限公司 数据处理方法、搜索方法及装置
CN104467868A (zh) * 2014-11-04 2015-03-25 深圳市元征科技股份有限公司 中文文本压缩方法
CN110535828A (zh) * 2019-07-19 2019-12-03 华瑞新智科技(北京)有限公司 工业物联网网关中的数据处理方法及工业物联网网关
CN111782660A (zh) * 2020-07-17 2020-10-16 支付宝(杭州)信息技术有限公司 基于键值存储的数据压缩的方法和系统
CN114492322A (zh) * 2020-10-23 2022-05-13 晶晨半导体(上海)股份有限公司 文本压缩方法、模块、芯片、电子设备和存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101783788A (zh) * 2009-01-21 2010-07-21 联想(北京)有限公司 文件压缩、解压缩方法、装置及压缩文件搜索方法、装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1554190A (zh) * 2001-07-11 2004-12-08 D・基尔班克 用于压缩数据的系统和方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101783788A (zh) * 2009-01-21 2010-07-21 联想(北京)有限公司 文件压缩、解压缩方法、装置及压缩文件搜索方法、装置

Also Published As

Publication number Publication date
CN102567322A (zh) 2012-07-11

Similar Documents

Publication Publication Date Title
CN102567322B (zh) 文本压缩方法和装置
CN101350624B (zh) 一种支持ansi编码的中文文本的压缩方法
CN101783788B (zh) 文件压缩、解压缩方法、装置及压缩文件搜索方法、装置
Porwal et al. Data compression methodologies for lossless data and comparison between algorithms
KR100271861B1 (ko) 데이타압축, 신장방법 및 장치와 이것을 사용한 데이타처리장치 및 네트워크시스템
US9077368B2 (en) Efficient techniques for aligned fixed-length compression
US10389378B2 (en) Computer product, information processing apparatus, and information search apparatus
KR101049699B1 (ko) 데이터의 압축방법
CN110518917B (zh) 基于Huffman编码的LZW数据压缩方法及系统
CN1340804A (zh) 自动新词提取方法和系统
CN101534124B (zh) 一种用于短小自然语言的压缩算法
CN113111889A (zh) 用于边缘计算端的目标检测网络处理方法
CN102880703A (zh) 中文网页数据编码、解码方法及系统
JPH0743717B2 (ja) 抄録文作成装置
CN101441663A (zh) 一种基于lzw压缩算法的中文文本分类特征词典生成方法
Vijayalakshmi et al. LOSSLESS TEXT COMPRESSION FOR UNICODE TAMIL DOCUMENTS.
CN107203509B (zh) 标题生成方法和装置
CN112003623B (zh) 一种藏文文本压缩算法
Martínez-Prieto et al. Natural language compression on edge-guided text preprocessing
Shanmugasundaram et al. IIDBE: A lossless text transform for better compression
Alkhazi et al. Tag based models for Arabic text compression
Shanmugasundaram et al. Text preprocessing using enhanced intelligent dictionary based encoding (EIDBE)
Begum et al. An efficient text compression for massive volume of data
Jrai et al. Improving LZW Compression of Unicode Arabic Text Using Multi-Level Encoding and a Variable-Length Phrase Code
Nguyen et al. A syllable-based method for vietnamese text compression

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220913

Address after: 100871 No. 5, the Summer Palace Road, Beijing, Haidian District

Patentee after: Peking University

Patentee after: New founder holdings development Co.,Ltd.

Patentee after: PEKING University FOUNDER R & D CENTER

Address before: 100871 No. 5, the Summer Palace Road, Beijing, Haidian District

Patentee before: Peking University

Patentee before: PEKING UNIVERSITY FOUNDER GROUP Co.,Ltd.

Patentee before: PEKING University FOUNDER R & D CENTER

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150401