System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于深度度量学习和数据流聚类的数据压缩方法技术_技高网

一种基于深度度量学习和数据流聚类的数据压缩方法技术

技术编号:40357325 阅读:7 留言:0更新日期:2024-02-09 14:43
本发明专利技术公开了一种基于深度度量学习和数据流聚类的数据压缩方法。在存储压缩领域,面临着海量多种类型数据的压缩挑战,通过快速将压缩友好的数据块聚集在一起可实现高效的压缩存储。首先将需要压缩的数据生成固定大小的切块,构建用于训练与测试的文件切块数据集,通过深度度量学习获得具有压缩友好相似性度量特性的表征空间,根据表征进行数据流实时聚类,合并同类的数据切块,实现数据的高压缩比压缩。同时,考虑到需要进行大规模聚类的时效复杂性,采用数据流聚类的方式,数据流聚类的过程对输入的流式数据,实时地维护和更新微簇,完成对大规模数据的实时聚类,使得在更大的数据集上有更快的聚类速度,实现对大规模存储数据的实时压缩。

【技术实现步骤摘要】

本专利技术属于存储数据压缩领域,更为具体地讲,涉及一种基于深度度量学习和数据流聚类的数据压缩方法来对存储数据切块进行实时聚类合并压缩。


技术介绍

1、在当今的大数据时代、云计算时代,各行各业都在产生海量的不同类型的数据,如何使用一种更快速的更高压缩比的压缩算法对这些数据进行压缩存储非常关键。本专利针对的问题是,如何在已有的一种压缩算法的基础上,例如zstd压缩算法,通过更优、更具有压缩模式组合的数据切块组合合并,使得压缩比更优。

2、根据已有的研究工作表明,对于数据块a和与之相似的数据块b,把数据块a与数据块b合并后放入zstd压缩算法进行压缩,可以获得比分别把数据块a和数据块b放入zstd压缩算法更高压缩比结果,即将相似的数据切块进行合并压缩能获得更高压缩比结果。因此,本专利需要解决的本质问题是,如何把n个数据块划分成一个个的组合,使得组合内数据块相似并进行合并压缩,本质上为一个组合划分优化问题。

3、传统组合划分优化问题,只要时间足够,资源足够,理论上是可以通过暴力检索所有可能的空间,进而获得最优的划分结果。而实际上,由于数据块个数n可以是无限大的,检索空间是无穷大的,无法通过搜索进行获得最优结果。为了近似最优解决这个问题,可以使用数据挖掘技术中的聚类技术。所谓聚类,就是让相似的数据自动聚集在一起。因此,该问题转换成为一个大规模聚类的问题。

4、本专利使用深度度量学习解决数据块之间压缩友好的相似性度量,即如何度量多个文件数据切块之间的相似性,进一步而言如何找到能够用于合并压缩的数据切块,通过训练模型学得能够获得度量数据切块相似性的表征空间的模型,之后通过大规模聚类进行簇的划分。传统的大规模聚类方法的时间复杂度在o(nlogn),不能满足实时性的场景,使用数据流聚类的方法实现实时数据切块组合划分并进行合并压缩,通过在内存空间中维持微簇,实现实时聚类,当微簇达到条件要求时,进行合并压缩,获得更快更高压缩比的大规模存储数据压缩。


技术实现思路

1、本专利技术的目的在于克服现有技术的不足,提出一种基于深度度量学习和数据流聚类的数据压缩方法来对存储数据切块进行实时聚类合并压缩方法,以补全在大规模存储数据实时压缩高效性上的缺失,其可以显著提升存储数据的压缩比,明显减少压缩时间,减少需要的存储空间,实现实时压缩。

2、为了实现上述专利技术目的,本专利技术基于深度度量学习和数据流聚类的大规模存储数据实时压缩方法,其特点为在给定存储数据压缩的要求下,对存储数据进行切块采样获得训练样本,通过深度度量学习,完成模型训练,使得在原始空间中合并压缩比高的数据块,在度量空间中表现为相似。将数据切块通过学得模型,获得具有压缩友好相似性的表征向量,使用数据流聚类,实时的输出用于合并压缩的数据块组合,对同属于一类的数据块进行合并压缩,实现高压缩比的压缩存储,具体包括以下步骤:

3、(1)数据收集

4、收集用于压缩存储的数据集,包括但不限于游戏应用数据、图片数据、文本数据、视频数据、系统镜像数据、工业互联网数据;

5、(2)数据预处理

6、将收集的文件数据进行以8kb固定大小的切片,并将切片数据通过转换成二进制的原始数据集,对原始数据切块进行正负样本对的采样,生成训练数据,通过在线采样方法,根据数据块之间压缩进行采样,获得的三元组数据集,用于训练模型,在线采样过程中通过多种采样策略,尽可能丰富的采样到用于训练的正负样本对;

7、(3)建立深度度量学习模型

8、首先是初始化过程:将采样训练样本输入到cnn网络中提取特征,通过cnn的核心卷积层,捕捉数据块的局部特征,卷积操作计算每个区域内的加权和,将结果保存为特征图,之后使用relu激活函数,增加模型的非线性能力,然后通过池化层用于减小特征图的维度,保留最重要的信息,完成对数据块代表性特征的提取,将cnn抽取具有能代表数据块特性的表征输入到多层感知器神经网络架构,进过输入层、隐藏层和输出层,每层在训练过程中调整参数,进一步拟合代表数据块特征。通过cnn和mlp对数据块进行压缩相关模式的自动提取,实现通过提取的表征进行代表原始的数据切块;

9、(4)模型训练

10、将数据划分为训练集、验证集和测试集,将训练集采样成三元组的形式,输入到cnn和mlp网络中,获取到对应的x1,的低维表征向量,损失函数为根据需求提出的新的度量函数,其公式为:

11、

12、其中x是样本x通过网络学得表征,x+是样本x的正样本通过网络学得表征,x-是样本x的负样本通过网络学得表征,优化器使用adam优化器,多轮次迭代后达到收敛状态,使用验证集进行超参数的验证,多轮调优后,超参数达到最优;

13、(5)模型测试

14、使用经过训练、验证的模型,固定参数,把测试集输入到模型,获得保留了拉近相似数据切块表征向量特性的数据切块表征向量,对表征向量进行数据流实时聚类,把同属于一类的数据切块合并压缩,最后汇总压缩总和进行压缩比评估。

15、本专利技术的目的是这样实现的。

16、本专利技术利用深度神经网络,基于深度度量学习和数据流聚类的数据压缩方法来对数据切块进行实时聚类合并压缩的方法。首先采集用于存储压缩的待压缩数据集,将数据集按照固定8kb大小切片,对原始数据采用在线采样的方法,根据数据块之间计算获得的压缩比大小进行正负样本采样生成三元组训练数据集。利用该训练数据集进行模型训练,得到能够度量数据切块相似性表征空间的模型。之后将需要压缩的存储数据按照8kb进行切块放入到获得的模型中,输出数据切块的表征向量,这些表征向量具有在同类属于一个组的性质,不同组之间不相似。最后通过数据流实时聚类,将这些数据块进行实时聚类,合并同类的文件切片并压缩,实现高压缩比。通过深度度量学习完成了自动对压缩模式的提取,使用数据流聚类,实现了能够对输入的数据进行实时的输出聚类结果,进行实时压缩,为实现数据实时高压缩比的压缩提供了一种新方法。

本文档来自技高网...

【技术保护点】

1.一种基于深度度量学习和数据流聚类的数据压缩方法其特征在于,包括以下步骤:

2.根据权利要求1所述的深度度量学习和数据流聚类的数据压缩方法,其特征在于,步骤(3)中,所述的建立深度度量学习模型,和步骤(3)中,所述的模型训练:

【技术特征摘要】

1.一种基于深度度量学习和数据流聚类的数据压缩方法其特征在于,包括以下步骤:

2.根据权利要求1所述的深度度...

【专利技术属性】
技术研发人员:邵俊明何平富杨勤丽
申请(专利权)人:电子科技大学长三角研究院湖州
类型:发明
国别省市:

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

1