1.本发明属于文件压缩存储领域,更为具体地将,涉及一种基于回归孪生神经网络压缩友好度量学习的方法来对文件切片进行聚类合并压缩。
背景技术:2.由于现代数据中心每天都会生成大量的新数据,特别是互联网产业生成的数据量非常庞大,因此以一种经济的方式存储如此大量的数据对于可持续性至关重要。数据中心通过采用数据缩减技术有效的降低管理成本。数据减少技术是通过减少数据冗余来减少存储介质中物理存储的数据量,这使得数据中心可以用更少设备或更少的服务器处理相同数量的数据。数据压缩使用无损压缩算法对数据块进行编码,这样可以用更少的位来表示数据块。数据去重能够避免重复写入已经在存储系统中的数据实体。为了实现高数据压缩比,一些方法首先对数据利用去重,然后在去重的基础上使用无损压缩。delta压缩类方法克服了数据压缩和数据去重的局限性,它将要压缩的数据块与索引数据块进行比较,只抽取两个数据块之间的不同位模式,然后使用无损压缩。数据块与索引越相似,压缩比率越高。通过使用两个数据块的相似性,delta压缩类方法能够在非重复数据和高信息熵数据(无损压缩不能有效处理)获得高的压缩比。研究表明,去重后的delta压缩类方法(即先执行去重,然后再进行delta压缩,最后无损压缩)能够提升压缩比率。
3.对于如何使用去重后的delta压缩类方法,提升压缩比,一个关键的问题是怎么找到两个相似的索引块,即如何度量两个文件切片的相似性。传统的方式仍然通过人工查找相似特征或者模式的方式,找到更适合用于delta压缩,压缩比低的同时人工成本巨大,迫切需要一种新的成本低且压缩比高的方式。近年来,随着深度度量学习和聚类的研究发展,通过深度度量学习的方法,能够更好的自动寻找数据间的相似性特征或模式,同时聚类研究使得对数据进行更好的聚类效果。
4.深度度量学习应用到文件压缩领域,通过训练模型学得能够获得衡量数据切片相似性的表征空间的模型,然后通过谱聚类对得到的文件切片表征向量进行聚类,将聚类结果为同一类的切片进行合并压缩,使得能够实现高压缩比的压缩存储。孪生网络是基于两个人工神经网络建立的耦合架构,孪生网络以两个样本为输入,输出其嵌入低维空间的表征,以比较两个样本的相似程度。在监督学习方式下,孪生神经网络能够最大化不同标签的表征,并最小化相同标签的表征,利用孪生神经网络进行深度相似性度量,可用于判断两个文件切片是否相似。传统的孪生网络用于分类任务,判断传入的两个样本是否相似。对于我们的文件压缩任务,需要判断传入的两个8kb大小的切片的相似性,但是在文件压缩领域没有8kb大小的文件切片数据相应的标签,不能人工标注,且本专利提出的任务是一个回归的任务,需要输出对应两个文件切片的相似性。
技术实现要素:5.本发明的目的在于克服现有技术的不足,提出一种基于回归孪生神经网络压缩友好度量学习的方法来对文件切片进行聚类合并压缩的方法,以补全在使用delta压缩类方法时不能很好找到相似的数据块,其可以显著提升文件的压缩比,明显提升压缩时间,减少需要的存储空间。
6.为了实现上述发明目的,本发明基于回归孪生神经网络压缩友好度量学习的方法,其特征在于在无标签的文件切片数据下,利用伪标签的方式生成训练数据集,通过训练得到一个能够获得拉近相似文件切片的度量空间的模型,将待压缩文件数据输入模型获得表征向量,然后再通过谱聚类对表征向量进行聚类,对同属于一类的文件进行合并压缩,实现高压缩比的压缩存储,具体包括以下步骤:
7.(1)数据收集
8.收集用于压缩存储的文件数据集,包括但不限于游戏应用文件、图片文件、文本文件、视频文件、系统镜像文件等。
9.(2)数据预处理
10.将收集的文件数据进行以8kb固定大小的切片,并将切片数据通过转换成二进制的原始数据集;根据计算两个数据集合并压缩增益获得间接衡量两个数据切片相似性的标记,创建用于训练的(x1,x2,label)的三元组数据集,其中x1与x2是两两配对的切片数据,label是x1、x2合并压缩的增益标签,压缩增益的计算公式:
11.label=lz(x1x2)/lz(x1)+lz(x2)
12.其中,label为x1、x2的增益标签,其范围在[0,1],x1、x2为原始的文件切片数据,lz()为压缩方法压缩后文件的大小。
[0013]
(3)建立孪生神经网络度量学习模型
[0014]
模型采用孪生网络的方式,主要框架为resnet网络。首先,使用resnet对原始数据进行特征提取,resnet易优化,随着层数增加精度提升,能够很好提取文件切片的特征;其次是通过孪生神经网络的方式,共享resnet网络的参数,获得三元组中两个数据切片的表征向量;最后是全连接网络,对resnet编码的高维表征向量转化为低维表征向量。
[0015]
(4)模型训练。
[0016]
将数据划分为训练集、验证集和测试集。将训练集采样成(x1,x2,label)三元组的形式,输入到孪生网络中,获取到对应的x1,x2的低维表征向量。损失函数为根据需求提出的新的度量函数,其公式为:
[0017][0018]
其中y为增益标签,ew为孪生神经网络两个样本数据的欧式距离,λ为超参数,调整以适应连续标签值。优化器使用优化器使用adam优化器,多轮次迭代后达到收敛状态。使用验证集进行超参数的验证,多轮调优后,超参数达到最优。
[0019]
(5)模型测试
[0020]
使用经过训练、验证的模型,固定参数,把测试集输入到模型,获得保留了拉近相似文件切片表征向量特性的文件切片表征向量,对表征向量进行谱聚类,把同属于一类的文件切片进行合并压缩,评估压缩比。
[0021]
本发明的目的是这样实现的。
[0022]
本发明利用人工神经网络,采用基于回归孪生神经网络压缩友好度量学习的方法来对文件切片进行聚类合并压缩的方法。首先采集用于文件合并压缩的待压缩文件数据集,将文件按照8kb大小切片,然后构建切片大小为8kb的(x1,x2,label)三元组训练数据集,并利用该数据集进行模型训练,得到能够获得度量文件切片相似性表征空间的模型。之后将需要压缩的文件按照8kb进行切片放入到获得的模型中,输出切片的表征向量,这些向量具有拉近相似切片的性质。最后通过谱聚类,将这些向量进行聚类,合并同类的文件切片并压缩,实现高压缩比。降低人工提取文件切片相似模式和特征的需求,使用无标签的方式,减少人工标注成本,保持较高的文件压缩比,为实现文件高压缩比的压缩提供了一种新方法。
附图说明
[0023]
图1是本发明一种基于回归孪生神经网络压缩友好度量学习的方法的一种具体实施方式流程图;
[0024]
图2是本发明一种基于回归孪生神经网络压缩友好度量学习的方法的模型结构示意图;
[0025]
图3是模型整体训练图;
[0026]
图4是resnet模型结构示意图;
[0027]
图5是聚类合并压缩示意图。
具体实施方式
[0028]
下面结合附图对本发明的具体实施方式进行描述,以便本领域的技术人员更好地理解本发明。需要特别提醒注意的是,在以下的描述中,当已知功能和设计的详细描述也许会淡化本发明的主要内容时,这些描述在这里将被忽略。
[0029]
图1是本发明一种基于回归孪生神经网络压缩友好度量学习的方法的一种具体实施方式流程图;
[0030]
在本实施例中,如图1所示,本发明一种基于回归孪生神经网络压缩友好度量学习的方法包括以下步骤:
[0031]
s1:待压缩文件数据收集
[0032]
收集用于压缩存储的文件数据集,包括但不限于游戏应用文件、图片文件、文本文件、视频文件、系统镜像文件等。
[0033]
s2:数据预处理
[0034]
在整理数据的过程中,需要将原始文件数据先切片成8kb大小的块,然后通过进制转换处理成能够转换成tensor格式的二进制数据。由于训练需要带标签的数据,而切片为8kb的数据是不带人工标签的,我们需要一种方式获取能表示数据切片相似性的伪标签。这里采用合并压缩增益为数据切片的伪标签生成(x1,x2,label)的训练三元组数据,如图二所示的模型整体架构图。增益标签公式为:
[0035]
label=lz(x1x2)/lz(x1)+lz(x2)
[0036]
其中,label为x1、x2的增益标签,其范围在[0,1],x1、x2为原始的文件切片数据,lz
()为压缩方法压缩后文件的大小。
[0037]
s3:建立孪生神经网络度量学习模型
[0038]
学习模型采用孪生神经网络的方式,主要框架为resnet网络。首先resnet网络特征提取模块,通过resnet网络对数据切片进行特征提取建模,获得数据切片对应的低维隐表征;resnet结构图如3所示,resnet网络通过设计残差学习模块,假设数据的基础映射为让堆叠的非线性层去拟合残差映射而不是直接拟合resnet网络的数学表示为:
[0039][0040]
其中x,y分别表示该残差块的输入和输出向量,是待学习的残差映射;
[0041]
其次是使用孪生网络的总体框架,共享resnet网络的参数,如图4所示,输入样本(x1,x2,label)三元组,网络输出x1,x2对应的隐表征x`1,x`2,压缩增益越大的文件切片对应的表征距离越小。最后通过全链接层,将表征向量进行降维,以便于进行相似性度量和聚类。
[0042]
s4:模型训练
[0043]
将数据划分为训练集、验证集和测试集。将训练集采样成(x1,x2,label)三元组的形式,输入到孪生网络中,获取到对应的x1,x2的低维表征向量。损失函数为根据需求提出的新的度量函数,其公式为:
[0044][0045]
其中y为增益标签,ew为孪生神经网络两个样本数据的欧式距离,λ为超参数,调整以适应连续标签值。此处的λ使得我们能够将孪生神经网络用于分类任务转换到回归任务,通过λ对标签进行缩放将分类损失转换到回归损失。优化器使用优化器使用adam优化器,多轮次迭代后达到收敛状态。使用验证集进行超参数的验证,多轮调优后,超参数达到最优。
[0046]
s5:文件压缩
[0047]
在模型中输入测试集的数据,模型输出低维的文件切片表征向量,对文件切片表征向量进行谱聚类,如图5所示,谱聚类的过程对数据结构没有太多的假设而且可以通过构造稀疏的相似图,使得在更大的数据集上有更快的聚类速度;然后对同类下的文件切片进行文件压缩,根据压缩比的提升,对模型效果进行评估,以验证模型的合理性,按照如下方式评估:
[0048][0049]
其中lz()为压缩方法,k为聚类后同一类的切片数量,压缩比为文件切片分开压缩的值和比上合并压缩的值,压缩比越大表明模型在度量文件切片的相似性时,效果越好,对文件压缩比的提升越大。
[0050]
本发明中,针对传统文件压缩方法人工提取模式与特征的问题提出来一种基于回归孪生神经网络压缩友好度量学习的方法。本发明在孪生网络深度度量学习和谱聚类等关键技术的基础上做出了创新。
[0051]
尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。