CN109697277B - 文本压缩的方法和装置 - Google Patents
文本压缩的方法和装置 Download PDFInfo
- Publication number
- CN109697277B CN109697277B CN201710984893.1A CN201710984893A CN109697277B CN 109697277 B CN109697277 B CN 109697277B CN 201710984893 A CN201710984893 A CN 201710984893A CN 109697277 B CN109697277 B CN 109697277B
- Authority
- CN
- China
- Prior art keywords
- text
- frequency
- coding
- library
- data
- 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.)
- Active
Links
- 238000007906 compression Methods 0.000 title claims abstract description 69
- 230000006835 compression Effects 0.000 title claims abstract description 68
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000004590 computer program Methods 0.000 claims description 9
- 230000001502 supplementing effect Effects 0.000 claims description 9
- 238000012795 verification Methods 0.000 claims description 7
- 230000005540 biological transmission Effects 0.000 abstract description 29
- 238000012545 processing Methods 0.000 abstract description 7
- 238000005516 engineering process Methods 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 11
- 238000004891 communication Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 230000006837 decompression Effects 0.000 description 5
- 238000013507 mapping Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000009467 reduction Effects 0.000 description 4
- 239000013589 supplement Substances 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 239000000047 product Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 241001629511 Litchi Species 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 229910052573 porcelain Inorganic materials 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000009469 supplementation Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/14—Tree-structured documents
- G06F40/146—Coding or compression of tree-structured data
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/3084—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供一种文本压缩的方法和装置,能够针对现有技术中占用空间大、传输速度慢等问题,利用海量文本数据之间信息的冗余关系和大数据处理技术生成的高频编码库,以实现海量文本的高效存储和传输。该方法包括:为源文本生成类别标签;利用所述类别标签查找高频编码库中相应的类别编码库,所述高频编码库是指以高频文本块的编码数据形成的编码库,根据高频文本块所属类别的不同分为一个或多个类别编码库;利用所述类别编码库中的编码数据对所述源文本进行编码序列化,得到压缩后文本。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种文本压缩的方法和装置。
背景技术
在文本存储和传输的过程中,通常情况下会存在由于文本信息的冗余和已知信息的重复等原因造成的占用空间大、传输速度慢的问题。以目前对电子商城内部存在的海量文本数据比如商品快照数据、订单数据、财务数据等和大量历史WEB网页等文本存储为例,这些庞然大物可能大部分采用直接存储或者传统压缩后存储,如此,会消耗大量的存储介质。因此,需要有效的文本压缩技术来避免文本存储或传输过程中空间资源的浪费。
现有技术中,文本压缩技术由来已久,压缩算法也日趋成熟,例如常用的Huffman压缩、字典压缩、LZ77算法压缩、RLE算法等。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题:
一方面,传统的压缩算法都比较复杂,容易出错,对于海量数据压缩和解压缩都是个耗时耗力的活动;
另一方面,大部分的压缩算法都是基于自身信息熵的冗余度进行压缩,在存储和压缩上并没有考虑到信息本身和已知信息的重复度。例如存储关于某个商品时,可能会有成千上万个商家都同时售卖此商品;又或者存储某热点新闻时,数据来源可能有成百上千个,但是热点新闻的文本内容大致都是相同的。虽然说现在是信息量指数增长高峰期,但是信息不对称带来的信息冗余消耗了大量的存储空间;
此外,当数据在网络中进行传输过程中,由于存在大量的信息冗余,例如某人日常浏览的常用商品或者关注的新闻热点,都是稳定,因此也会存在大量的重复传输过程,不利于节省传输资源。
发明内容
有鉴于此,本发明实施例提供一种文本压缩的方法和装置,能够针对现有技术中占用空间大、传输速度慢等问题,利用海量文本数据之间信息的冗余关系和大数据处理技术生成的高频编码库,以实现海量文本的高效存储和传输。
为实现上述目的,根据本发明实施例的一个方面,提供了一种文本压缩的方法。
本发明实施例的一种文本压缩的方法包括:为源文本生成类别标签;利用所述类别标签查找高频编码库中相应的类别编码库,所述高频编码库是指以高频文本块的编码数据形成的编码库,根据高频文本块所属类别的不同分为一个或多个类别编码库;利用所述类别编码库中的编码数据对所述源文本进行编码序列化,得到压缩后文本。
可选地,在为源文本生成类别标签之前,所述方法还包括:设置所述高频编码库。
可选地,设置所述高频编码库包括:将历史文本数据按照类别不同进行分类;检索各类别中历史文本数据的高频文本块;利用编码算法对所述高频文本块进行编码,生成编码数据;将所述高频文本块与对应的所述编码数据的对应关系保存至按类别进行维度区分的高频编码库中。
可选地,所述设置高频编码库还包括:按照预设补充标准,利用新增热点文本数据中的高频文本块对应的编码数据动态补充所述高频编码库。
可选地,所述编码算法为TF-IDF算法和/或LZW压缩算法。
可选地,所述方法还包括:当所述压缩后文本有解码需求时,根据所述压缩后文本中包含的编码数据和所述编码数据与高频文本块的对应关系对所述压缩后文本进行解码反序列化,得到源文本。
可选地,所述方法还包括:通过所述源文本生成的摘要和/或MD5值进行解码校验。
为实现上述目的,根据本发明实施例的另一方面,提供了一种文本压缩的装置。
本发明实施例的一种文本压缩的装置包括:分类模块,用于为源文本生成类别标签;查找模块,用于利用所述类别标签查找高频编码库中相应的类别编码库,所述高频编码库是指以高频文本块的编码数据形成的、动态补充的编码库,根据高频文本块所属类别的不同分为一个或多个类别编码库;压缩模块,用于利用所述类别编码库中的编码数据对所述源文本进行编码序列化,得到压缩后文本。
可选地,所述装置还包括:设置模块,用于在为源文本生成类别标签之前,设置所述高频编码库。
可选地,所述设置模块还用于:将历史文本数据按照类别不同进行分类;检索各类别中历史文本数据的高频文本块;利用编码算法对所述高频文本块进行编码,生成编码数据;将所述高频文本块与对应的所述编码数据的对应关系保存至按类别进行维度区分的高频编码库中。
可选地,所述设置模块还用于:按照预设补充标准,利用新增热点文本数据中的高频文本块对应的编码数据动态补充所述高频编码库。
可选地,所述编码算法为TF-IDF算法和/或LZW压缩算法。
可选地,所述装置还包括:解码模块,用于当所述压缩后文本有解码需求时,根据所述压缩后文本中包含的编码数据和所述编码数据与高频文本块的对应关系对所述压缩后文本进行解码反序列化,得到源文本。
可选地,所述装置还包括:校验模块,用于通过所述源文本生成的摘要和/或MD5值进行解码校验。
为实现上述目的,根据本发明实施例的再一方面,提供了一种电子设备。
本发明实施例的一种电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明实施例的文本压缩的方法。
为实现上述目的,根据本发明实施例的再一方面,提供了一种计算机可读介质。
本发明实施例的一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现本发明实施例的文本压缩的方法。
上述发明中的一个实施例具有如下优点或有益效果:通过利用高频编码库对文字本身进行预处理,通过对源文本进行编码形成简洁文本,从而能够达到减少传输量和存储量,提高效率的效果;本发明实施例中,基于对字典编码和减少信息存储和传输中的重复出发,使得单一文件的信息存储,依赖高频文本块对应的编码数据经过重新编码,从而能够高效地实现文本的压缩存储和传输;通过依赖大量历史文本数据和/或新增热点文本数据中提取的高频文本块对应的编码数据,生成高频编码库,从而能够根据热点数据自动生成高频编码库,从而能够提高文本压缩的准确性和效率,达到节约存储和传输空间,降低压缩和解压缩成本的目的;通过利用TF-IDF算法和/或LZW压缩算法进行高频文本块的编码,从而能够根据实际编码需求,灵活的选择适当的编码算法,保证编码的效率;同时基于高频编码库可以是私有的,也可以是公有的,因此可以基于各类加密算法(如MD5算法和/或摘要算法)轻易实现加密。
上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
图1是根据本发明实施例的文本压缩的方法的主要步骤的示意图;
图2是根据本发明实施例的文本压缩的装置的主要模块的示意图;
图3是本发明实施例可以应用于其中的示例性系统架构图;
图4是适于用来实现本发明实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
本发明实施例中,针对现有技术中文件存储占用空间大、传输速度慢的问题,可以对文字本身进行预处理,通过对源文件进行编码形成简洁文本,来达到减少传输量和存储量,起到提高效率的效果。
本发明实施例基于字典编码和减少信息存储和传输中的重复出发。单一文件的信息存储,依赖大量历史数据信息中提取的编码,经过重新编码实现存储和传输。
此外,不同于传统字典编码压缩中使用的固定编码库,本发明实施例中对历史文本数据和不断新增的热点文本数据进行大数据处理,计算这些数据中包含的热点的高频文本块,为这些高频文本块自动生成的高频编码库,用于后续文本压缩过程中的文件压缩和解码。
本发明实施例中的文本压缩或者压缩算法是指:通过以海量数据作为基础计算出来的各个词句出现的频率和次数,生产高频编码库,并利用高频编码库对大文本内容进行文字替换的过程。
图1是根据本发明实施例的文本压缩的方法的主要步骤的示意图,如图1所示,本发明实施例的一种文本压缩的方法主要包括如下步骤:
步骤S101为源文本生成类别标签。本步骤的目的在于为源文本进行分类,以寻找对应的类别编码库。
在完成步骤S101的分类之后,从步骤S102开始处理。
步骤S102:利用类别标签查找高频编码库中相应的类别编码库,本发明实施例中,高频编码库是指以高频文本块的编码数据形成的、可以动态补充的编码库,根据高频文本块所属类别的不同分为一个或多个类别编码库。即高频编码库中包含一个或多个类别维度。
步骤S103:利用类别编码库中的编码数据对源文本进行编码序列化,得到压缩后文本。本发明实施例中,压缩后文本可以包括编码序列化文本以及编码序列化文本中包含的编码数据与对应的高频文本块的对应关系。
本发明实施中,在为源文本生成类别标签之前,还可以包括设置高频编码库的步骤。
其中,设置高频编码库的步骤主要包括:将历史文本数据按照类别不同进行分类;检索各类别中历史文本数据的高频文本块;利用编码算法对所述高频文本块进行编码,生成编码数据;将所述高频文本块与对应的所述编码数据的对应关系保存至按类别进行维度区分的高频编码库中。
除了利用海量的历史文本数据进行高频编码库的设置之外,基于实务操作中随着时间迁移,可能会出现新的分类标签和新增的热点文本集合的考虑,设置高频编码库的步骤还可以包括:按照预设补充标准(预设补充标准可以根据实际情况设定。例如可以根据时间周期进行设定,如设定为满一年进行补充;也可以根据目前网络流行词汇的程度,比如碰瓷、躺枪等来补充编码库,只要这些词汇的流行火爆程度足够影响人们的日常表达和表现,都可以并且应该加入到新增热点文本数据的行列中去),利用新增热点文本数据中的高频文本块对应的编码数据动态补充所述高频编码库。
本发明实施例中,高频文本块是指出现的频率或次数大于预设频率或次数阈值的文本块,同样的预设频率或次数阈值可以根据实际情况设定。
将高频文本块采用不同的编码算法生成的编码数据可能是不同的。本发明实施例中,编码算法主要可以采用TF-IDF算法和/或LZW压缩算法。
TF-IDF(term frequency–inverse document frequency)是一种用于信息检索与数据挖掘的常用加权技术。TF意思是词频(Term Frequency),IDF意思是逆向文件频率(Inverse Document Frequency)。
TF-IDF是一种统计方法,用以评估一个词对于一个文件集或一个语料库中的其中一份文件的重要程度。字词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降。加权的各种形式常被搜索引擎应用,作为文件与用户查询之间相关程度的度量或评级。除了TF-IDF以外,因特网上的搜索引擎还会使用基于链接分析的评级方法,以确定文件在搜寻结果中出现的顺序。
当前,真正在搜索引擎等实际应用中广泛使用的是TF-IDF模型。TF-IDF模型的主要思想是:如果词w在一篇文档d中出现的频率高,并且在其他文档中很少出现,则认为词w具有很好的区分能力,适合用来把文章d和其他文章区分开来。
如果某个词或短语在一篇文章中出现的频率TF高,并且在其他文章中很少出现,则认为此词或者短语具有很好的类别区分能力,适合用来分类。TFIDF实际上是:TF*IDF,TF词频(Term Frequency),IDF逆向文件频率(Inverse Document Frequency)。TF表示词条在文档d中出现的频率。IDF的主要思想是:如果包含词条t的文档越少,也就是n越小,IDF越大,则说明词条t具有很好的类别区分能力。如果某一类文档C中包含词条t的文档数为m,而其它类包含t的文档总数为k,显然所有包含t的文档数n=m+k,当m大的时候,n也大,按照IDF公式得到的IDF的值会小,就说明该词条t类别区分能力不强。
本发明实施例中,基于TF-IDF技术,可以利用词w作为高频文本块(即文档d)的编码数据,以形成基础的高频编码库,或者作为动态补充时形成高频编码库的编码手段。
而LZW压缩算法和哈夫曼编码一样,是无损压缩中的一种。该算法通过建立字典,实现字符重用与编码,适用于source中重复率很高的文本压缩。
在生成高频编码库的编码过程中:利用编码0-255用来存储Ascii码为[0,255]的字符(即高频文本块),放在字典(即高频编码库)里,然后编码从256开始,将出现过的字符(即高频文本块)计入字典(即高频编码库)。其核心思想在于:利用字符(即高频文本块)的可重用性,每当往结果输出一个编码(即高频文本块对于的编码数据),就将一个新的字符(即高频文本块)存入字典(即高频编码库)中。
因此,利用LZW算法的解码过程实际是编码的逆过程,若编码是字符string到编码int的映射,则可以将解码过程描述为编码int到字符string的映射。
LZW算法的解码无需在编码过程中存储字典,解码初始化依旧用256(0~255)个Ascii码,后面每读入一个编码int,检查其在字典中的映射,并不断将新的映射加入字典中。
此外,本发明实施例中,当压缩后文本有解码需求时,还可以根据所述压缩后文本中包含的编码数据和所述编码数据与高频文本块的对应关系对所述压缩后文本进行解码反序列化,得到源文本。
解码过程中,可以通过源文本生成的摘要和/或MD5值进行解码校验。
以下以一完整的实施过程说明本发明实施例的文本压缩的方法的具体流程:
首先对海量历史文本数据打上分类标签,分类必须活动的,同一个文本可以有多个标签。对于不同的信息文本用不同的标签表示,比如钢笔、铅笔、毛笔等等。
然后检索标签内文本集合中的高频文本块并排序,将非二进制的高频文本块数据,采用不同编码算法生成的二进制或非二进制的编码数据,不同编码算法生成的编码数据可能不同。然后按照标签的维度形成基础的高频编码库,一个高频编码库中可以包括一个或多个类别编码库。
随着时间迁移,可能会出现新的分类标签和热点文本集合,此时对新增的热点文本集合运算高频文本块并排序,并对高频文本块利用编码算法生成编码数据,从而生成新的标签类别的或者新增热点文本集合对应的、动态补充的高频编码库。
最终的高频编码库是依照标签分散的,各标签类别之间可能存在交叉的。如下:手机库、T恤库、NBA库、荔枝库、罗永浩库等类别。
另外,生成的高频编码库并不一定是可读的文本,甚至可能是html\css\JS\格式符号等文本混合的结果。高频编码库本身不用于对照解读。
如下是具体的解压缩过程:
压缩:
1、对待压缩的源文本进行分析获取标签分类;
2、使用标签对应的类别编码库中的编码数据对源文本进行重新编码序列化;
3、生成以重新编码得到的编码序列化文件,以及编码数据与高频文本块对应关系,合成最终的压缩后文件。
解码:
1、收集压缩后文件中的编码数据;
2、依照编码数据和与高频编码库中高频文本块的对应关系进行解码反序列化。
3、恢复得到源文本。
可选地,在本发明一优选实施例中,还可以通过源文本生成的摘要或者MD5值进行解码校验。
根据本发明实施例的文本压缩的方法可以看出,通过利用高频编码库对文字本身进行预处理,通过对源文本进行编码形成简洁文本,从而能够达到减少传输量和存储量,提高效率的效果;本发明实施例中,基于对字典编码和减少信息存储和传输中的重复出发,使得单一文件的信息存储,依赖高频文本块对应的编码数据经过重新编码,从而能够高效地实现文本的压缩存储和传输;通过依赖大量历史文本数据和/或新增热点文本数据中提取的高频文本块对应的编码数据,生成高频编码库,从而能够根据热点数据自动生成高频编码库,从而能够提高文本压缩的准确性和效率,达到节约存储和传输空间,降低压缩和解压缩成本的目的;通过利用TF-IDF算法和/或LZW压缩算法进行高频文本块的编码,从而能够根据实际编码需求,灵活的选择适当的编码算法,保证编码的效率;同时基于高频编码库可以是私有的,也可以是公有的,因此可以基于各类加密算法(如MD5算法和/或摘要算法)轻易实现加密。
图2是根据本发明实施例的文本压缩的装置的主要模块的示意图;如图2所示,本发明实施例的文本压缩的装置200主要包括如下模块:分类模块201、查找模块202以及压缩模块203。
其中,分类模块201主要用于为源文本生成类别标签;查找模块202可用于利用类别标签查找高频编码库中相应类别的类别编码库,高频编码库是指以高频文本块的编码数据形成的、可以动态补充的编码库,根据高频文本块所属类别的不同分为一个或多个类别编码库;压缩模块203可用于利用类别编码库中的编码数据对源文本进行编码序列化,得到压缩后文本。
装置200还可包括:设置模块(图中未示出),主要用于在计算源文本的标签之前,设置高频编码库。
具体而言,设置模块还可用于:将历史文本数据按照类别不同进行分类;检索各类别中历史文本数据的高频文本块;利用编码算法对高频文本块进行编码,生成编码数据;将高频文本块与对应的编码数据的对应关系保存至按类别进行维度区分的高频编码库中。
此外,设置模块还可用于:按照预设补充标准,利用新增热点文本数据中的高频文本块对应的编码数据动态补充高频编码库。
本发明实施例中,编码算法可以但不限于为TF-IDF算法和/或LZW压缩算法。
另外,装置200还可包括:解码模块(图中未示出),主要用于当压缩后文本有解码需求时,根据压缩后文本中包含的编码数据和所述编码数据与高频文本块的对应关系对压缩后文本进行解码反序列化,得到源文本。
装置200还可包括:校验模块(图中未示出),主要用于通过源文本生成的摘要和/或MD5值进行解码校验。
从以上描述可以看出,通过利用高频编码库对文字本身进行预处理,通过对源文本进行编码形成简洁文本,从而能够达到减少传输量和存储量,提高效率的效果;本发明实施例中,基于对字典编码和减少信息存储和传输中的重复出发,使得单一文件的信息存储,依赖高频文本块对应的编码数据经过重新编码,从而能够高效地实现文本的压缩存储和传输;通过依赖大量历史文本数据和/或新增热点文本数据中提取的高频文本块对应的编码数据,生成高频编码库,从而能够根据热点数据自动生成高频编码库,从而能够提高文本压缩的准确性和效率,达到节约存储和传输空间,降低压缩和解压缩成本的目的;通过利用TF-IDF算法和/或LZW压缩算法进行高频文本块的编码,从而能够根据实际编码需求,灵活的选择适当的编码算法,保证编码的效率;同时基于高频编码库可以是私有的,也可以是公有的,因此可以基于各类加密算法(如MD5算法和/或摘要算法)轻易实现加密。
图3示出了可以应用本发明实施例的文本压缩方法或文本压缩装置的示例性系统架构300。
如图3所示,系统架构300可以包括终端设备301、302、303,网络304和服务器305。网络304用以在终端设备301、302、303和服务器305之间提供通信链路的介质。网络304可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备301、302、303通过网络304与服务器305交互,以接收或发送消息等。终端设备301、302、303上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。
终端设备301、302、303可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器305可以是提供各种服务的服务器,例如对用户利用终端设备301、302、303所浏览的购物类网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的产品信息查询请求等数据进行分析等处理,并将处理结果(例如目标推送信息、产品信息--仅为示例)反馈给终端设备。
需要说明的是,本发明实施例所提供的文本压缩方法一般由服务器305执行,相应地,文本压缩装置一般设置于服务器305中。
应该理解,图3中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
下面参考图4,其示出了适于用来实现本发明实施例的终端设备的计算机系统400的结构示意图。图4示出的终端设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图4所示,计算机系统400包括中央处理单元(CPU)401,其可以根据存储在只读存储器(ROM)402中的程序或者从存储部分408加载到随机访问存储器(RAM)403中的程序而执行各种适当的动作和处理。在RAM 403中,还存储有系统400操作所需的各种程序和数据。CPU 401、ROM 402以及RAM 403通过总线404彼此相连。输入/输出(I/O)接口405也连接至总线404。
以下部件连接至I/O接口405:包括键盘、鼠标等的输入部分406;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分407;包括硬盘等的存储部分408;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分409。通信部分409经由诸如因特网的网络执行通信处理。驱动器410也根据需要连接至I/O接口405。可拆卸介质411,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器410上,以便于从其上读出的计算机程序根据需要被安装入存储部分408。
特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分409从网络上被下载和安装,和/或从可拆卸介质411被安装。在该计算机程序被中央处理单元(CPU)401执行时,执行本发明的系统中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括分类模块、查找模块和压缩模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,分类模块还可以被描述为“用于为源文本生成类别标签的模块”。
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:为源文本生成类别标签;利用所述类别标签查找高频编码库中相应类别的类别编码库,所述高频编码库是指以高频文本块的编码数据形成的、可以动态补充的编码库,根据高频文本块所属类别的不同分为一个或多个类别编码库;利用所述类别编码库中的编码数据对所述源文本进行编码序列化,得到压缩后文本。
根据本发明实施例的技术方案,通过利用高频编码库对文字本身进行预处理,通过对源文本进行编码形成简洁文本,从而能够达到减少传输量和存储量,提高效率的效果;本发明实施例中,基于对字典编码和减少信息存储和传输中的重复出发,使得单一文件的信息存储,依赖高频文本块对应的编码数据经过重新编码,从而能够高效地实现文本的压缩存储和传输;通过依赖大量历史文本数据和/或新增热点文本数据中提取的高频文本块对应的编码数据,生成高频编码库,从而能够根据热点数据自动生成高频编码库,从而能够提高文本压缩的准确性和效率,达到节约存储和传输空间,降低压缩和解压缩成本的目的;通过利用TF-IDF算法和/或LZW压缩算法进行高频文本块的编码,从而能够根据实际编码需求,灵活的选择适当的编码算法,保证编码的效率;同时基于高频编码库可以是私有的,也可以是公有的,因此可以基于各类加密算法(如MD5算法和/或摘要算法)轻易实现加密。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
Claims (8)
1.一种文本压缩的方法,其特征在于,包括:
确定编码需求,通过对应的编码算法设置高频编码库,包括:将历史文本数据按照类别不同进行分类;检索各类别中历史文本数据的高频文本块,所述高频文本块是指出现的频率或次数大于预设频率或次数阈值的文本块;利用编码算法对所述高频文本块进行编码,生成编码数据;将所述高频文本块与对应的所述编码数据的对应关系保存至按类别进行维度区分的高频编码库中;
为源文本生成类别标签;
利用所述类别标签查找高频编码库中相应的类别编码库,所述高频编码库是指以高频文本块的编码数据形成的编码库,根据高频文本块所属类别的不同分为一个或多个类别编码库;
利用所述类别编码库中的编码数据对所述源文本进行编码序列化,得到压缩后文本。
2.根据权利要求1所述的方法,其特征在于,所述设置高频编码库还包括:
按照预设补充标准,利用新增热点文本数据中的高频文本块对应的编码数据动态补充所述高频编码库。
3.根据权利要求1或2所述的方法,其特征在于,所述编码算法为TF-IDF算法和/或LZW压缩算法。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:当所述压缩后文本有解码需求时,根据所述压缩后文本中包含的编码数据和所述编码数据与高频文本块的对应关系对所述压缩后文本进行解码反序列化,得到源文本。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:通过所述源文本生成的摘要和/或MD5值进行解码校验。
6.一种文本压缩的装置,其特征在于,包括:
设置模块,用于确定编码需求,通过对应的编码算法设置高频编码库,包括:将历史文本数据按照类别不同进行分类;检索各类别中历史文本数据的高频文本块,所述高频文本块是指出现的频率或次数大于预设频率或次数阈值的文本块;利用编码算法对所述高频文本块进行编码,生成编码数据;将所述高频文本块与对应的所述编码数据的对应关系保存至按类别进行维度区分的高频编码库中;
分类模块,用于为源文本生成类别标签;
查找模块,用于利用所述类别标签查找高频编码库中相应的类别编码库,所述高频编码库是指以高频文本块的编码数据形成的编码库,根据高频文本块所属类别的不同分为一个或多个类别编码库;
压缩模块,用于利用所述类别编码库中的编码数据对所述源文本进行编码序列化,得到压缩后文本。
7.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-5中任一所述的方法。
8.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-5中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710984893.1A CN109697277B (zh) | 2017-10-20 | 2017-10-20 | 文本压缩的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710984893.1A CN109697277B (zh) | 2017-10-20 | 2017-10-20 | 文本压缩的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109697277A CN109697277A (zh) | 2019-04-30 |
CN109697277B true CN109697277B (zh) | 2024-02-13 |
Family
ID=66225388
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710984893.1A Active CN109697277B (zh) | 2017-10-20 | 2017-10-20 | 文本压缩的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109697277B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113378516A (zh) * | 2020-02-25 | 2021-09-10 | 北京京东振世信息技术有限公司 | 处理单据编码数据的系统和存储查找单据编码数据的方法 |
CN111371459B (zh) * | 2020-04-26 | 2023-04-18 | 宁夏隆基宁光仪表股份有限公司 | 一种适用于智能电表的多操作高频替换式数据压缩方法 |
CN113987556B (zh) * | 2021-12-24 | 2022-05-10 | 杭州趣链科技有限公司 | 数据处理方法和装置、电子设备、存储介质 |
CN115801902B (zh) * | 2023-02-09 | 2023-04-11 | 北京特立信电子技术股份有限公司 | 一种网络访问请求数据的压缩方法 |
CN115883109B (zh) * | 2023-02-16 | 2023-05-09 | 北京飞安航空科技有限公司 | 一种航空系统的数据压缩加密方法及系统 |
CN115858478B (zh) * | 2023-02-24 | 2023-05-12 | 山东中联翰元教育科技有限公司 | 一种可互动的智慧教学平台的数据快速压缩方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005136617A (ja) * | 2003-10-29 | 2005-05-26 | Casio Comput Co Ltd | 辞書データのデータ構造、辞書圧縮装置、電子辞書装置及びプログラム |
CN101729075A (zh) * | 2008-10-10 | 2010-06-09 | 英华达(上海)电子有限公司 | 一种数据压缩、解压缩的方法和装置 |
CN101751451A (zh) * | 2008-12-11 | 2010-06-23 | 高德软件有限公司 | 一种中文数据压缩及解压缩方法及相关设备 |
CN102508824A (zh) * | 2011-09-29 | 2012-06-20 | 苏州大学 | 一种微博信息的压缩编码和解码的方法及装置 |
CN104467868A (zh) * | 2014-11-04 | 2015-03-25 | 深圳市元征科技股份有限公司 | 中文文本压缩方法 |
-
2017
- 2017-10-20 CN CN201710984893.1A patent/CN109697277B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005136617A (ja) * | 2003-10-29 | 2005-05-26 | Casio Comput Co Ltd | 辞書データのデータ構造、辞書圧縮装置、電子辞書装置及びプログラム |
CN101729075A (zh) * | 2008-10-10 | 2010-06-09 | 英华达(上海)电子有限公司 | 一种数据压缩、解压缩的方法和装置 |
CN101751451A (zh) * | 2008-12-11 | 2010-06-23 | 高德软件有限公司 | 一种中文数据压缩及解压缩方法及相关设备 |
CN102508824A (zh) * | 2011-09-29 | 2012-06-20 | 苏州大学 | 一种微博信息的压缩编码和解码的方法及装置 |
CN104467868A (zh) * | 2014-11-04 | 2015-03-25 | 深圳市元征科技股份有限公司 | 中文文本压缩方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109697277A (zh) | 2019-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109697277B (zh) | 文本压缩的方法和装置 | |
CN109376234B (zh) | 一种训练摘要生成模型的方法和装置 | |
CN111523001B (zh) | 用于存储数据的方法、装置、设备以及存储介质 | |
CN112541338A (zh) | 相似文本匹配方法、装置、电子设备及计算机存储介质 | |
CN108197324B (zh) | 用于存储数据的方法和装置 | |
US9966971B2 (en) | Character conversion | |
CN110866040B (zh) | 用户画像生成方法、装置和系统 | |
CN112269789A (zh) | 存储数据的方法和装置、以及读取数据的方法和装置 | |
CN114764557A (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
CN111680161A (zh) | 一种文本处理方法、设备以及计算机可读存储介质 | |
CN111368697A (zh) | 一种信息识别方法和装置 | |
CN110910178A (zh) | 一种生成广告的方法和装置 | |
US11403017B2 (en) | Data compression method, electronic device and computer program product | |
CN112436943B (zh) | 基于大数据的请求去重方法、装置、设备及存储介质 | |
CN113360500A (zh) | 数据处理方法及装置、存储介质、电子设备 | |
CN110852057A (zh) | 一种计算文本相似度的方法和装置 | |
CN107643906B (zh) | 数据处理方法及装置 | |
CN113761565A (zh) | 数据脱敏方法和装置 | |
CN111368693A (zh) | 一种身份证信息的识别方法和装置 | |
CN110555204A (zh) | 情绪判断的方法和装置 | |
CN110852078A (zh) | 生成标题的方法和装置 | |
CN115454971A (zh) | 数据迁移方法、装置、电子设备及存储介质 | |
CN113779239A (zh) | 一种热点信息获取方法和装置 | |
CN111275476B (zh) | 一种物流仓储服务的报价方法和装置 | |
CN111274383A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |