一种基于梯度下降的制造技术

技术编号:39644444 阅读:10 留言:0更新日期:2023-12-09 11:12
本发明专利技术公开了一种基于梯度下降的

【技术实现步骤摘要】
一种基于梯度下降的tANS编码、解码转换表快速建立方法


[0001]本专利技术属于编码领域,具体是一种基于梯度下降的
tANS
编码

解码转换表快速建立方法


技术介绍

[0002]随着大数据时代的来临,在物联网

人工智能等特定应用领域,对海量数据处理的低时延性要求不断提高,无损数据压缩技术也越来越重要

无损数据压缩按压缩原理可分为基于数据统计的算法和基于字典的算法,其中,基于数据统计的算法包括
Shannon

Fano
编码
、Huffman
编码

算术编码
(arithmetic coding,AC)、
游程编码
(run lengthcode,RLE)
和有限状态熵编码
(finite state entropy,FSE)
等,基于字典的算法包括
LZ77(Lempel

Ziv77)
编码和
LZ78(Lempel

Ziv 78)
编码等

[0003]在
Huffman
编码和算数编码进行了近半个世纪的较量后,一种新的统计编码方法出现了,并且似乎能替代他们

[0004]2007
年,
Jarek Duda
提出了一种新的基于信息论的数据压缩方法:非对称数字系统
(asymmetric numeral systems

ANS)
这种新型的压缩编码方法是一种精确的熵编码方法,得到字符的编码结果可以无限逼近最优熵值,它在压缩率可以近乎于算术编码的同时,编码效率又能接近
Huffman
编码

它既可以用于精确编码,又可以用于快速编码,并且压缩后的数据具有数据加密功能

使用
ANS
代替更为传统的
Huffman
和算术编码方法的压缩库越来越多,目前流行的
Zstandard
就是其中之一

[0005]tANS
编码是
ANS
编码的一种变体方法,它的编码解码工作的展开都是围绕着一张表格建立的

这个表格如何建立是
tANS
编码方法的关键所在,而目前对于
tANS
编码中表格建立鲜有研究


技术实现思路

[0006]本专利技术针对
技术介绍
中存在的问题,为满足特定应用领域对压缩性能日益增长的需求,本文针对
tANS
编码方法中的
FSE
展开研究,采用软硬件协同实现的方式,全面提高
Zstandard
算法的压缩和解压的速度

按照
Zstandard
规范标准,提出了适于硬件实现的
FSE
压缩和解压架构设计方案,从而有效地减少硬件开销和提高硬件利用率

实验结果表明,所提出的
FSE
硬件实现架构,对
Zstandard
硬件加速设计与实现的解决方案具有理论研究的前瞻性

可行性,以及现实的应用价值

[0007]技术方案:
[0008]一种基于梯度下降的
tANS
编码

解码转换表快速建立方法,它包括以下步骤:
[0009]S1、
统计数据块中各字符出现的频数,并排序;
[0010]S2、
确定
tANS
转换表的形状:
tANS
转换表的行表头为已排序的各字符;
tANS
转换表内容为每个字符待填入的状态值,
tANS
转换表内容的行数为每个字符需要的状态数
N
state

[0011]S3、

tANS
转换表填入初始的状态值,获得初始的
tANS
转换表;
[0012]S4、
基于初始的
tANS
转换表,扩列建立状态数值展开表;
[0013]S5、
基于状态数值展开表,计算状态数值频数;
[0014]S6、
根据状态数值频数更新状态值;
[0015]S7、
根据状态值更新结果,生成新的
tANS
转换表

[0016]优选的,
S2
中,字符
A
需要的状态数量
N
state
(A)
通过下式求得:
N
state
(A)

P
A
*V
max

V
max
表示状态值的上限,
P
A
为字符
A
出现的频率

[0017]优选的,
V
max
通过下式获得:
[0018][0019]式中,
N
symbol
为数据块中统计的字符的总数;表示向下取整,
C
的值根据具体数据特点及压缩要求选择

[0020]优选的,
S3
中,初始的状态值
V
state
(n,A)
通过下式获得:
[0021][0022]其中,
V
state
(n,A)
表示初始
tANS
转换表中,字符
A
所属的列中第
n
行元素的初始状态值,
P
A
为字符
A
出现的频率

[0023]优选的,
S4
中,状态数值展开表的建立具体包括以下步骤:
[0024]S4

1、
在初始
tANS
转换表的行表头中增加表头“状态数值”;
[0025]S4

2、
在“状态数值”所属列的元素中,顺次填入自然数:
1、2、
……
、V
max

V
max

tANS
转换表中的状态值上限;
[0026]S4

3、
补入状态数值展开表中的行列内容:
[0027]初始的状态值
V
state
(n,A)

B
,则状态数值展开表中元素
(B,A)

B

本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种基于梯度下降的
tANS
编码

解码转换表快速建立方法,其特征在于它包括以下步骤:
S1、
统计数据块中各字符出现的频数,并排序;
S2、
确定
tANS
转换表的形状:
tANS
转换表的行表头为已排序的各字符;
tANS
转换表内容为每个字符待填入的状态值,
tANS
转换表内容的行数为每个字符需要的状态数
N
state

S3、

tANS
转换表填入初始的状态值,获得初始的
tANS
转换表;
S4、
基于初始的
tANS
转换表,扩列建立状态数值展开表;
S5、
基于状态数值展开表,计算状态数值频数;
S6、
根据状态数值频数更新状态值;
S7、
根据状态值更新结果,生成新的
tANS
转换表
。2.
根据权利要求1所述的方法,其特征在于
S2
中,字符
A
需要的状态数量
N
state
(A)
通过下式求得:
N
state
(A)

P
A
*V
max

V
max
表示状态值的上限,
P
A
为字符
A
出现的频率
。3.
根据权利要求2所述的方法,其特征在于
V
max
通过下式获得:式中,
N
symbol
为数据块中统计的字符的总数;表示向下取整,
C
的值根据具体数据特点及压缩要求选择
。4.
根据权利要求1所述的方法,其特征在于
S3
中,初始的状态值
V
state
(n,A)
通过下式获得:其中,
V
state
(n,A)
表示初始
tANS
转换表中,字符
A
所属的列中第
n
行元素的初始状态值,
P
A
为字符
A
出现的频率
。5.
根据权利要求1所述的方法,其特征在于
S4
中,状态数值展开表的建立具体包括以下步骤:
S4

1、
在初始
tANS
转换表的行表头中增加表头“状态数值”;
S4

2、
在“状态数值”所属列的元素中,顺次填入自然数:
1、2、
……
、V
max

V
max

tANS
转换表中的状态值上限;
S4

3、
补入状态数值展开表中的行列内容:初始的状态值
V
state
(n,A)

B
,则状态数值展开表中元素
(B,A)

B

【专利技术属性】
技术研发人员:秦臻
申请(专利权)人:海飞科南京信息技术有限公司
类型:发明
国别省市:

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

1