CN107749757B - 一种基于堆栈式自编码和pso算法的数据压缩方法及装置 - Google Patents
一种基于堆栈式自编码和pso算法的数据压缩方法及装置 Download PDFInfo
- Publication number
- CN107749757B CN107749757B CN201710971619.0A CN201710971619A CN107749757B CN 107749757 B CN107749757 B CN 107749757B CN 201710971619 A CN201710971619 A CN 201710971619A CN 107749757 B CN107749757 B CN 107749757B
- Authority
- CN
- China
- Prior art keywords
- data
- coding
- sequence
- stack type
- type self
- 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
Images
Classifications
-
- 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/3059—Digital compression and data reduction techniques where the original information is represented by a subset or similar information, e.g. lossy compression
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Abstract
本发明实施例公开了一种基于堆栈式自编码和PSO算法的数据压缩方法。本发明中堆栈式自编码模型为一种深度学习模型,通过逐层学习算法和整体网络权值的微调可以提高神经网络的训练速度,去除数据中冗余信息,提取到原始数据中最有价值的信息,同时堆栈式自编码模型的多层网络结构赋予堆栈式自编码模型良好的非线性映射能力,逐层学习算法和整体网络权值的微调可以为堆栈式自编码模型赋予了适用于表现样本的权值,学习到数据本身的特征,无需输入数据具备标签,堆栈式自编码器的网络参数通过PSO算法进行整定,进一步提高精度和搜索速度,解决了现有使用浅层神经网络进行数据压缩时收敛速度慢、非线性映射能力差以及需要输入数据带有标签的技术问题。
Description
技术领域
本发明涉及数据挖掘领域,尤其涉及一种基于堆栈式自编码和PSO算法的数据压缩方法及装置。
背景技术
当前利用神经网络进行数据压缩是通过浅层神经网络模型进行数据压缩,利用浅层神经网络模型进行数据压缩存在以下不足:1、当前训练浅层神经网络模型的算法大多数是BP算法,BP算法收敛速度慢,容易陷入局部极小值点,并且浅层神经网络模型容易被新的特征扰动;2、由于训练算法的特点使得浅层神经网络模型的层数不能太多,非线性映射能力较差,因为误差在反向传播过程中会逐步递减,层数太多会导致误差前向传播中变得极小,无法有效更新权值;3、浅层神经网络训练算法需要输入数据都是有标签的,以便于得到误差修改浅层神经网络的权值,使得浅层神经网络可以学习到数据的特征,但是在实际应用中大多数数据是没有标签的,导致了浅层神经网络具有一定的局限性。因此,导致了现有使用浅层神经网络进行数据压缩时收敛速度慢、非线性映射能力差以及需要输入数据带有标签的技术问题。
发明内容
本发明提供了一种基于堆栈式自编码和PSO算法的数据压缩方法及装置,解决了现有使用浅层神经网络进行数据压缩时收敛速度慢、非线性映射能力差以及需要输入数据带有标签的技术问题。
本发明提供了一种基于堆栈式自编码和PSO算法的数据压缩方法,包括:
S1:通过PSO算法、预置迭代次数限值和预置适应度阈值对堆栈式自编码模型的网络参数进行整定;
S2:获取训练样本,对经过网络参数整定的堆栈式自编码模型进行训练;
S3:将未压缩的数据输入经过网络参数整定和训练的堆栈式自编码模型,获取隐含层的输出数据作为压缩后的数据。
优选地,步骤S1具体包括:
S101:初始化M个粒子,包括随机位置和速度,每个粒子预置N个维度,分别对应堆栈式自编码器待整定的N个网络参数,其中M和N皆为大于0的整数;
S102:对每个粒子的位置和速度进行更新和迭代,并通过适应度函数计算每个粒子当前位置的适应度;
S103:当迭代次数达到预置迭代次数限值或者每个粒子的适应度变化率都低于预置适应度阈值,则停止迭代,获取经过整定的堆栈式自编码模型的网络参数,否则返回步骤S102。
优选地,步骤S2之后,步骤S3之前还包括:步骤S4;
S4:对未压缩的数据进行归一化处理、数据矫正和数据补全,得到新的未压缩数据。
优选地,步骤S3之后还包括:步骤S5;
S5:将压缩后的数据通过差分编码和哥伦布编码进行无损压缩,获取新的压缩后的数据。
优选地,步骤S5具体包括:
S501:将压缩后的数据进行小数定标标准化处理,获得第一序列;
S502:将第一序列进行差分编码获得第二序列;
S503:将第二序列进行0阶哥伦布编码获得第三序列;
S504:将第三序列依次串联获得的字符串序列作为新的压缩后的数据。
本发明提供了一种基于堆栈式自编码和PSO算法的数据压缩装置,其特征在于,包括:
整定模块,用于通过PSO算法、预置迭代次数限值和预置适应度阈值对堆栈式自编码模型的网络参数进行整定;
训练模块,用于对经过网络参数整定的堆栈式自编码模型进行训练;
获取模块,用于将未压缩的数据输入经过网络参数整定和训练的堆栈式自编码模型,获取隐含层的输出数据作为压缩后的数据。
优选地,整定模块具体包括:
初始化子模块,用于初始化M个粒子,包括随机位置和速度,每个粒子预置N个维度,分别对应堆栈式自编码器待整定的N个网络参数,其中M和N皆为大于0的整数;
迭代子模块,用于对每个粒子的位置和速度进行更新和迭代,并通过适应度函数计算每个粒子当前位置的适应度;
参数获取子模块,当迭代次数达到预置迭代次数限值或者每个粒子的适应度变化率都低于预置适应度阈值,则停止迭代,获取经过整定的堆栈式自编码模型的网络参数,否则触发迭代子模块。
优选地,训练模块和获取模块之间还包括:数据处理模块;
数据处理模块,用于对未压缩的数据进行归一化处理、数据矫正和数据补全,得到新的未压缩数据。
优选地,还包括:二次压缩模块;
二次压缩模块,用于将压缩后的数据通过差分编码和哥伦布编码进行无损压缩,获取新的压缩后的数据。
优选地,二次压缩模块具体包括:
标准化子模块,用于将压缩后的数据进行小数定标标准化处理,获得第一序列;
差分子模块,用于将第一序列进行差分编码获得第二序列;
哥伦布子模块,用于将第二序列进行0阶哥伦布编码获得第三序列;
串联子模块,用于将第三序列依次串联获得的字符串序列作为新的压缩后的数据。
从以上技术方案可以看出,本发明具有以下优点:
本发明提供了一种基于堆栈式自编码和PSO算法的数据压缩方法,包括:S1:通过PSO算法、预置迭代次数限值和预置适应度阈值对堆栈式自编码模型的网络参数进行整定;S2:获取训练样本,对经过网络参数整定的堆栈式自编码模型进行训练;S3:将未压缩的数据输入经过网络参数整定和训练的堆栈式自编码模型,获取隐含层的输出数据作为压缩后的数据。
本发明的堆栈式自编码模型为一种深度学习模型,通过逐层学习算法和整体网络权值的微调可以提高神经网络的训练速度,且可以去除数据中冗余信息,提取到原始数据中最有价值的信息,避免被新的特征扰动,同时堆栈式自编码模型的多层网络结构赋予了堆栈式自编码模型良好的非线性映射能力,且逐层学习算法和整体网络权值的微调可以为堆栈式自编码模型赋予了适用于表现样本的权值,学习到数据本身的特征,无需输入数据具备标签,同时堆栈式自编码器的网络参数通过PSO算法进行整定,可以进一步提高精度和搜索速度,解决了现有使用浅层神经网络进行数据压缩时收敛速度慢、非线性映射能力差以及需要输入数据带有标签的技术问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
图1为本发明实施例提供的一种基于堆栈式自编码和PSO算法的数据压缩方法的一个实施例的流程示意图;
图2为本发明实施例提供的一种基于堆栈式自编码和PSO算法的数据压缩方法的另一个实施例的流程示意图;
图3为本发明实施例提供的一种基于堆栈式自编码和PSO算法的数据压缩装置的一个实施例的结构示意图;
图4为本发明实施例提供的一种基于堆栈式自编码和PSO算法的数据压缩装置的另一个实施例的结构示意图。
具体实施方式
本发明提供了一种基于堆栈式自编码和PSO算法的数据压缩方法及装置,解决了现有使用浅层神经网络进行数据压缩时收敛速度慢、非线性映射能力差以及需要输入数据带有标签的技术问题。
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
请参阅图1,本发明实施例提供了一种基于堆栈式自编码和PSO算法的数据压缩方法的一个实施例,包括:
步骤101:通过PSO算法、预置迭代次数限值和预置适应度阈值对堆栈式自编码模型的网络参数进行整定;
需要说明的是,为了提高精度和搜索速度,堆栈式自编码模型的隐含层所含神经元节点个数,隐含层层数,网络学习率等网络参数均采用PSO算法在空间域内搜寻最优解获得。PSO初始化为一群随机粒子(随机解),通过迭代找到最优解。在每一次的迭代中,粒子通过跟踪位置和速度的最优值(pbest,gbest)来更新自己。在找到位置和速度的最优值后,粒子通过下面的公式更新速度和位置:
Vi=Vi+ci×rand()×(pbesti-xi)+c2×rand()×(gbesti-xi) (1)
xi=xi+Vi (2)
其中,i=1...M,M是该群体中粒子的总数;Vi是粒子的速度;pbest为位置的最优值,gbest为速度的最优值;rand()是介于(0、1)之间的随机数;Xi是粒子的当前位置;c1和c2是学习因子,通常在每一维取c1=c2=2;每个粒子都有一个最大限制速度Vmax,如果某一维的速度超过设定的最大限制速度Vmax,那么这一维的速度就被限定为最大限制速度。
步骤102:获取训练样本,对经过网络参数整定的堆栈式自编码模型进行训练;
需要说明的是,例如获取1100天智能电表上的电压数据作为样本,由于每一天相邻时刻和相同的电压值具有很大的相似性,好比前一时刻开启的用电器下一时刻可能还在使用,且1100天中的同一时刻可能开启相同的电器,所以可以以一天96个时刻点作为一条训练样本进行组织,总共分为1100个实验样本,随机混合1100个实验样本,取出其中1000条作为训练样本,剩下100条作为测试样本。
步骤103:将未压缩的数据输入经过网络参数整定和训练的堆栈式自编码模型,获取隐含层的输出数据作为压缩后的数据。
需要说明的是,训练好的堆栈式自编码模型中输入层到最后一层隐含层为压缩器,最后一层隐含层到输出层作为解压器,用于压缩后数据的重构。
以上为本发明实施例提供的一种基于堆栈式自编码和PSO算法的数据压缩方法的一个实施例,以下是本发明实施例提供的一种基于堆栈式自编码和PSO算法的数据压缩方法的另一个实施例。
请参阅图2,本发明实施例提供了一种基于堆栈式自编码和PSO算法的数据压缩方法的另一个实施例,包括:
步骤201:初始化M个粒子,包括随机位置和速度,每个粒子预置N个维度,分别对应堆栈式自编码器待整定的N个网络参数,其中M和N皆为大于0的整数;
需要说明的是,堆栈式自编码模型的隐含层所含神经元节点个数,隐含层层数,网络学习率等网络参数均采用上述的PSO算法在空间域内搜寻最优解获得,可以提高精度和搜索速度;
其中M和N的取值根据实际操作中的具体需求确定。
步骤202:对每个粒子的位置和速度进行更新和迭代,并通过适应度函数计算每个粒子当前位置的适应度;
步骤203:当迭代次数达到预置迭代次数限值或者每个粒子的适应度变化率都低于预置适应度阈值,则停止迭代,获取经过整定的堆栈式自编码模型的网络参数,否则返回步骤202。
步骤204:获取训练样本,对经过网络参数整定的堆栈式自编码模型进行训练;
需要说明的是,堆栈式自编码模型属于栈式编码网络的一种,采用了无监督学习的训练方式学习样本的特征,从而使得网络可以用低维输出表示高维的输入数据。
与其他的深度学习网络相比具有两点不同:(1)堆栈式自编码模型输出层神经元节点个数和输入层神经元个数相同,因为输出和输入的神经元个数相同,所以当网络拟合训练样本数据后堆栈式自编码模型就能够复现输出的数据;(2)堆栈式自编码模型训练之前会先进行单隐层神经网络的预训练,再将训练得到的权值赋给堆栈式自编码模型,预训练可以缩短堆栈式自编码模型的训练时间,减小了训练误差;
其中具体训练过程如下:
1、固定堆栈式自编码模型的网络结构为[96 64 32 8 32 64 96],首先建立三个单隐层神经网络nn1=[96 64 96],nn2=[64 32 64],nn3=[32 8 32],设堆栈式自编码模型的各层权重分别为Wij(i,j为层数),单隐层神经网络的各层权重分别为(n表示第n个单层神经网络,i,j表示层数);
2、将训练数据输入第一个神经网络进行训练,取nn1的隐层输出作为nn2的输入进行训练,再取nn2的隐层输出作为nn3的输入进行训练;
将训练数据输入赋好权值的堆栈式自编码模型进行整体的训练;
步骤205:对未压缩的数据进行归一化处理、数据矫正和数据补全,得到新的未压缩数据。
需要说明的是,针对用电对象,展开多个维度的数据分析,根据选取的不同特征进行不同的维度解析,有功功率、无功功率、电压、电流等;
机器学习模型使用梯度下降法求最优解时,归一化往往非常有必要,否则很难收敛甚至不能收敛,而且归一化保证程序运行时收敛加快同时避免太大的数据带来整个样本训练的波动情况,提高了实验精度;
归一化的公式如(7)所示:
y=(x-MinValue)/(MaxValue-MinValue) (7)
x表示需要归一化的数据,MinValue表示当前样本集上的最小数据,MaxValue表示当前样本集上的最大数据;
数据矫正,例如遍历实验整个数据集,当发现t时刻数据远高于或者低于该时刻的前后数据时,则将此数据定义为异常数据;数据的校正分为两步:首先,校正人工读取数据带来的误差,把当前数据的精度修改为所有实验样本的精度,例如当前值为234667,当前样本的精度为小数点后3位,则把该值修改为234.667,在比较修改后的值是否为异常数据,若修改后的数据正常,则数据校正结束,否则进行下一步;其次,取得这1100天中所有t时刻数据值的平均值m,以及t时刻前后的时刻值得平均值n,把m和n的平均值作为当前数据的校正值;
数据的补全,例如遍历实验整个数据集,当发现t时刻的电压值为空值时,取得这1100天中所有t时刻数据值的平均值m,以及t时刻前后的时刻值的平均值n,把m和n的平均值作为当前数据的实际值。
步骤206:将未压缩的数据输入经过网络参数整定和训练的堆栈式自编码模型,获取隐含层的输出数据作为压缩后的数据。
步骤207:将压缩后的数据进行小数定标标准化处理,获得第一序列;
需要说明的是,为了在不损数据信息的前提下得到更高的压缩比,本技术对隐含层输出的数据进行无损编码,设这部分数据为:x1,x2,x3,…,xn;
设a为x1,x2,x3,…,xn数据集中的精度,则x1,x2,x3,…,xn中的每一个数值都乘以10a即把该序列化为大于0的正整数,从而形成新的数据序列y1,y2,y3,…,yn,其中y1,y2,y3,…,yn为第一序列;
步骤208:将第一序列进行差分编码获得第二序列;
需要说明的是,第一序列y1,y2,y3,…,yn,除y1外,将其中各元素都表示为各该元素与其前一元素的差的编码,则形成新的y1,c2,c3,…,cn序列,其中y1,c2,c3,…,cn为第二序列。
步骤209:将第二序列进行0阶哥伦布编码获得第三序列;
需要说明的是,哥伦布编码就采用了加0前缀,用于表达编码后数据流单个数据的大小,在得到m个0前缀后,就能知道该码字在码流中的长度,并从数据流中把该数据取出来;
y1,c2,c3,…,cn经过哥伦布编码后得到计算机能够识别的二进制序列z1,z2,z3,…,zn,其中z1,z2,z3,…,zn为第三序列。
步骤210:将第三序列依次串联获得的字符串序列作为新的压缩后的数据。
需要说明的是,第三序列z1,z2,z3,…,zn按顺序串联成字符串序列z1z2z3…zn即为最终压缩序列,最终压缩序列为新的压缩后的数据;
通过对堆栈式自编码模型压缩后的数据进行差分编码和哥伦布编码可以获得更高的压缩比。
以上为本发明实施例提供的一种基于堆栈式自编码和PSO算法的数据压缩方法的另一个实施例,以下是本发明实施例提供的一种基于堆栈式自编码和PSO算法的数据压缩装置的一个实施例。
请参阅图3,本发明实施例提供了一种基于堆栈式自编码和PSO算法的数据压缩装置的一个实施例,包括:
整定模块,用于通过PSO算法、预置迭代次数限值和预置适应度阈值对堆栈式自编码模型的网络参数进行整定;
训练模块,用于对经过网络参数整定的堆栈式自编码模型进行训练;
获取模块,用于将未压缩的数据输入经过网络参数整定和训练的堆栈式自编码模型,获取隐含层的输出数据作为压缩后的数据。
以上为本发明实施例提供的一种基于堆栈式自编码和PSO算法的数据压缩装置的一个实施例,以下是本发明实施例提供的一种基于堆栈式自编码和PSO算法的数据压缩装置的另一个实施例。
请参阅图4,本发明实施例提供了一种基于堆栈式自编码和PSO算法的数据压缩装置的另一个实施例,包括:
整定模块,用于通过PSO算法、预置迭代次数限值和预置适应度阈值对堆栈式自编码模型的网络参数进行整定;
训练模块,用于对经过网络参数整定的堆栈式自编码模型进行训练;
获取模块,用于将未压缩的数据输入经过网络参数整定和训练的堆栈式自编码模型,获取隐含层的输出数据作为压缩后的数据。
进一步地,整定模块具体包括:
初始化子模块,用于初始化M个粒子,包括随机位置和速度,每个粒子预置N个维度,分别对应堆栈式自编码器待整定的N个网络参数,其中M和N皆为大于0的整数;
迭代子模块,用于对每个粒子的位置和速度进行更新和迭代,并通过适应度函数计算每个粒子当前位置的适应度;
参数获取子模块,当迭代次数达到预置迭代次数限值或者每个粒子的适应度变化率都低于预置适应度阈值,则停止迭代,获取经过整定的堆栈式自编码模型的网络参数,否则触发迭代子模块。
进一步地,训练模块和获取模块之间还包括:数据处理模块;
数据处理模块,用于对未压缩的数据进行归一化处理、数据矫正和数据补全,得到新的未压缩数据。
进一步地,还包括:二次压缩模块;
二次压缩模块,用于将压缩后的数据通过差分编码和哥伦布编码进行无损压缩,获取新的压缩后的数据。
进一步地,二次压缩模块具体包括:
标准化子模块,用于将压缩后的数据进行小数定标标准化处理,获得第一序列;
差分子模块,用于将第一序列进行差分编码获得第二序列;
哥伦布子模块,用于将第二序列进行0阶哥伦布编码获得第三序列;
串联子模块,用于将第三序列依次串联获得的字符串序列作为新的压缩后的数据。
以上为本发明实施例提供的一种基于堆栈式自编码和PSO算法的数据压缩装置的另一个实施例,以下是本发明实施例提供的一种基于堆栈式自编码和PSO算法的数据压缩方法的一个实际应用例。
本发明提供了一种基于堆栈式自编码和PSO算法的数据压缩方法的一个实际应用例。
此应用例中的实验原始数据来自某栋房屋从2006年到2010年的电能消耗数据,每分钟采样一次,共计2075259条数据,本实验中从实验原始数据中进行二次采样,均匀获取其中采样间隔为15分钟的电能消耗数据,因采样损耗等原因,最后共计采样105600条数据。
对二次采样的数据进行归一化处理、数据矫正和数据补全,得到新的未压缩数据。
将1100天的数据随机抽取其中的1000天的数据作为训练样本,其余的100天的数据作为测试数据,对以下模型进行实验。
分别进行如下两个实验进行测试,实验1如下:
实验中,固定的网络结构为[96 64 32 8 32 64 96]和学习率r=0.1,改变迭代次数分别多传统的神经网络模型(ANN)和堆栈式自编码模型(SAE)进行实验比较,具体通过计算分别进行数据压缩和解压后原始数据和重构数据的平均真实误差(MAPE)和相对提高百分比R进行展示,MAPE的计算公式如下:
相对提高百分比R的计算公式为:
其中,MAPE1为ANN的平均真实误差,MAPE2为SAE的平均真实误差;具体数据参见表格1,表格1如下:
表1.ANN和SAE的实验对比表
通过表1可以看出堆栈式自编码模型的重构误差普遍比传统的神经网络模型小,说明堆栈式自编码模型的在相同的迭代次数下,能够得到比传统神经网络模型更低的平均真实误差,相对提高百分比为10.3611%。
实验2如下:
通过PSO对堆栈式自编码模型的参数进行整定,并对每次PSO迭代后的参数进行实验,结果如表2所示:
表2.PSO算法参数整定后堆栈式自编码模型实验数据表
PSO迭代次数 | 网络结构 | 迭代次数 | MAPE |
第一次 | 96 64 43 5 43 64 96 | 512 | 0.7666% |
第二次 | 96 73 24 16 24 73 96 | 630 | 0.6650% |
第三次 | 96 56 39 16 39 56 96 | 616 | 0.5890% |
... | ... | ... | ... |
第四十九次 | 96 56 33 18 33 56 96 | 578 | 0.5774% |
第五十次 | 96 54 33 15 33 54 96 | 590 | 0.5638% |
通过表2可以看出,随着PSO算法的迭代次数的增加,参数整定后的堆栈式自编码模型进行数据压缩时的平均真实误差不断下降并最后收敛于一个值,经过预置的50次迭代后得到的堆栈式自编码模型的平均真实误差最小,以此时的网络结构为最优的网络结构。
此时经过参数整定的堆栈式自编码模型通过50次迭代后数据的平均真实误差为0.5638%,其迭代精度远高于传统的神经网络模型和未经过参数整定的堆栈式自编码模型,并且迭代次数更少,提高了搜索速度。
通过上述两个实验可知,堆栈式自编码模型与传统的神经网络模型相较,在重构误差方面误差较小,并且通过逐层学习算法和整体网络权值的微调可以提高神经网络的训练速度,且可以去除数据中冗余信息,提取到原始数据中最有价值的信息,避免被新的特征扰动,同时堆栈式自编码模型的多层网络结构赋予了堆栈式自编码模型良好的非线性映射能力,且逐层学习算法和整体网络权值的微调可以为堆栈式自编码模型赋予了适用于表现样本的权值,学习到数据本身的特征,无需输入数据具备标签;
并且通过PSO算法对堆栈式自编码模型的参数进行整定,提高了搜索精度和搜索速度,在较高的压缩比下尽可能减小原始数据和重构数据之间的误差,在现实生产生活中具有很高的应用价值。
本发明采用的基于堆栈式自编码和PSO算法的数据压缩方法通过逐层学习算法和整体网络权值的微调可以提高神经网络的训练速度,且可以去除数据中冗余信息,提取到原始数据中最有价值的信息,避免被新的特征扰动,同时堆栈式自编码模型的多层网络结构赋予了堆栈式自编码模型良好的非线性映射能力,且逐层学习算法和整体网络权值的微调可以为堆栈式自编码模型赋予了适用于表现样本的权值,学习到数据本身的特征,无需输入数据具备标签,同时堆栈式自编码器的网络参数通过PSO算法进行整定,可以进一步提高精度和搜索速度,解决了现有使用浅层神经网络进行数据压缩时收敛速度慢、非线性映射能力差以及需要输入数据带有标签的技术问题。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (4)
1.一种基于堆栈式自编码和PSO算法的数据压缩方法,其特征在于,包括:
S1:通过PSO算法、预置迭代次数限值和预置适应度阈值对堆栈式自编码模型的网络参数进行整定;
S2:获取训练样本,对经过网络参数整定的堆栈式自编码模型进行训练;
S4:对未压缩的数据进行归一化处理、数据矫正和数据补全,得到新的未压缩数据;
S3:将未压缩的数据输入经过网络参数整定和训练的堆栈式自编码模型,获取隐含层的输出数据作为压缩后的数据;
S5:将压缩后的数据通过差分编码和哥伦布编码进行无损压缩,获取新的压缩后的数据;
步骤S5具体包括:
S501:将压缩后的数据进行小数定标标准化处理,获得第一序列;
S502:将第一序列进行差分编码获得第二序列;
S503:将第二序列进行0阶哥伦布编码获得第三序列;
S504:将第三序列依次串联获得的字符串序列作为新的压缩后的数据。
2.根据权利要求1所述的一种基于堆栈式自编码和PSO算法的数据压缩方法,其特征在于,步骤S1具体包括:
S101:初始化M个粒子,包括随机位置和速度,每个粒子预置N个维度,分别对应堆栈式自编码器待整定的N个网络参数,其中M和N皆为大于0的整数;
S102:对每个粒子的位置和速度进行更新和迭代,并通过适应度函数计算每个粒子当前位置的适应度;
S103:当迭代次数达到预置迭代次数限值或者每个粒子的适应度变化率都低于预置适应度阈值,则停止迭代,获取经过整定的堆栈式自编码模型的网络参数,否则返回步骤S102。
3.一种基于堆栈式自编码和PSO算法的数据压缩装置,其特征在于,包括:
整定模块,用于通过PSO算法、预置迭代次数限值和预置适应度阈值对堆栈式自编码模型的网络参数进行整定;
训练模块,用于对经过网络参数整定的堆栈式自编码模型进行训练;
数据处理模块,用于对未压缩的数据进行归一化处理、数据矫正和数据补全,得到新的未压缩数据;
获取模块,用于将未压缩的数据输入经过网络参数整定和训练的堆栈式自编码模型,获取隐含层的输出数据作为压缩后的数据;
二次压缩模块;
二次压缩模块,用于将压缩后的数据通过差分编码和哥伦布编码进行无损压缩,获取新的压缩后的数据;
二次压缩模块具体包括:
标准化子模块,用于将压缩后的数据进行小数定标标准化处理,获得第一序列;
差分子模块,用于将第一序列进行差分编码获得第二序列;
哥伦布子模块,用于将第二序列进行0阶哥伦布编码获得第三序列;
串联子模块,用于将第三序列依次串联获得的字符串序列作为新的压缩后的数据。
4.根据权利要求3所述的一种基于堆栈式自编码和PSO算法的数据压缩装置,其特征在于,整定模块具体包括:
初始化子模块,用于初始化M个粒子,包括随机位置和速度,每个粒子预置N个维度,分别对应堆栈式自编码器待整定的N个网络参数,其中M和N皆为大于0的整数;
迭代子模块,用于对每个粒子的位置和速度进行更新和迭代,并通过适应度函数计算每个粒子当前位置的适应度;
参数获取子模块,当迭代次数达到预置迭代次数限值或者每个粒子的适应度变化率都低于预置适应度阈值,则停止迭代,获取经过整定的堆栈式自编码模型的网络参数,否则触发迭代子模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710971619.0A CN107749757B (zh) | 2017-10-18 | 2017-10-18 | 一种基于堆栈式自编码和pso算法的数据压缩方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710971619.0A CN107749757B (zh) | 2017-10-18 | 2017-10-18 | 一种基于堆栈式自编码和pso算法的数据压缩方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107749757A CN107749757A (zh) | 2018-03-02 |
CN107749757B true CN107749757B (zh) | 2020-08-14 |
Family
ID=61253116
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710971619.0A Active CN107749757B (zh) | 2017-10-18 | 2017-10-18 | 一种基于堆栈式自编码和pso算法的数据压缩方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107749757B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20210017985A (ko) | 2018-06-08 | 2021-02-17 | 상하이 캠브리콘 인포메이션 테크놀로지 컴퍼니 리미티드 | 범용 기계학습 모델, 모델 파일의 생성 및 분석방법 |
CN110647996B (zh) * | 2018-06-08 | 2021-01-26 | 上海寒武纪信息科技有限公司 | 通用机器学习模型的执行方法、装置和存储介质 |
CN109361404B (zh) * | 2018-09-28 | 2020-07-28 | 华南理工大学 | 一种基于半监督深度学习网络的ldpc译码系统及译码方法 |
CN111224670B (zh) * | 2018-11-27 | 2023-09-15 | 富士通株式会社 | 自动编码器及用于对自动编码器进行训练的方法和介质 |
CN109598336A (zh) * | 2018-12-05 | 2019-04-09 | 国网江西省电力有限公司信息通信分公司 | 一种基于栈式降噪自编码神经网络的数据约简方法 |
CN112307230B (zh) * | 2019-07-29 | 2024-01-26 | 杭州海康威视数字技术股份有限公司 | 一种数据存储的方法、及其数据获取方法、装置 |
CN111309690B (zh) * | 2020-02-05 | 2022-10-21 | 吉林大学 | 一种数控机床g代码数据无损压缩方法 |
CN114400014A (zh) * | 2021-12-09 | 2022-04-26 | 慧之安信息技术股份有限公司 | 一种基于深度学习的音频码流压缩方法和装置 |
CN114422607B (zh) * | 2022-03-30 | 2022-06-10 | 三峡智控科技有限公司 | 一种实时数据的压缩传输方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101183873B (zh) * | 2007-12-11 | 2011-09-28 | 广州中珩电子科技有限公司 | 一种基于bp神经网络的嵌入式系统数据压缩解压缩方法 |
CN101710988B (zh) * | 2009-12-08 | 2011-10-05 | 深圳大学 | 应用于图像压缩的图像矢量量化的邻域粒子对优化方法 |
CN102323540A (zh) * | 2011-05-25 | 2012-01-18 | 哈尔滨工业大学 | 一种基于编码的soc的测试方法 |
CN104244012B (zh) * | 2014-10-14 | 2017-08-04 | 重庆真测科技股份有限公司 | 一种ct数据压缩方法 |
CN105138717A (zh) * | 2015-07-09 | 2015-12-09 | 上海电力学院 | 一种动态变异粒子群优化神经网络的变压器状态评估方法 |
CN106503790A (zh) * | 2015-08-28 | 2017-03-15 | 余学飞 | 一种改进粒子群优化神经网络的压力导丝温度补偿方法 |
CN106934458A (zh) * | 2015-12-31 | 2017-07-07 | 中国科学院深圳先进技术研究院 | 基于深度学习的多层自动编码方法及系统 |
CN106055653A (zh) * | 2016-06-01 | 2016-10-26 | 深圳市唯特视科技有限公司 | 基于图像语义注释的视频浓缩对象检索方法 |
CN106599810B (zh) * | 2016-12-05 | 2019-05-14 | 电子科技大学 | 一种基于栈式自编码的头部姿态估计方法 |
CN107240136B (zh) * | 2017-05-25 | 2020-07-10 | 华北电力大学 | 一种基于深度学习模型的静态图像压缩方法 |
-
2017
- 2017-10-18 CN CN201710971619.0A patent/CN107749757B/zh active Active
Non-Patent Citations (3)
Title |
---|
"A novel stacked denoising autoencoder with swarm intelligence optimization for stock index prediction";Jiaxi Li等;《2017 International Joint Conference on Neural Networks (IJCNN)》;20170703;第1956页到第1961页 * |
"Optimize real-valued RBM with Bidirectional Autoencoder";Qiying Feng等;《2015 International Conference on Fuzzy Theory and Its Applications (iFUZZY)》;20160428;第22页到第27页 * |
"一种稀疏降噪自编码神经网络研究";张成刚等;《内蒙古民族大学学报(自然科学版)》;20160131;第31卷(第1期);第21页到第25页 * |
Also Published As
Publication number | Publication date |
---|---|
CN107749757A (zh) | 2018-03-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107749757B (zh) | 一种基于堆栈式自编码和pso算法的数据压缩方法及装置 | |
Liang et al. | Stacked denoising autoencoder and dropout together to prevent overfitting in deep neural network | |
CN110175386B (zh) | 变电站电气设备温度预测方法 | |
CN110515931B (zh) | 一种基于随机森林算法的电容型设备缺陷预测方法 | |
CN111078895B (zh) | 基于去噪卷积神经网络的远程监督实体关系抽取方法 | |
US20230297617A1 (en) | Video retrieval method and apparatus, device, and storage medium | |
Zhou et al. | Online filter clustering and pruning for efficient convnets | |
CN114067157A (zh) | 基于忆阻器的神经网络优化方法、装置及忆阻器阵列 | |
Yin et al. | Deep learning based feature reduction for power system transient stability assessment | |
CN111353534B (zh) | 一种基于自适应分数阶梯度的图数据类别预测方法 | |
CN114626487A (zh) | 基于随机森林分类算法的线变关系校核方法 | |
Fan et al. | Layer-wise model pruning based on mutual information | |
CN113392868A (zh) | 一种模型训练的方法、相关装置、设备及存储介质 | |
CN116298699A (zh) | 基于小波优化和图卷积神经网络的配电网故障辨识方法 | |
CN111831955A (zh) | 一种锂离子电池剩余寿命预测方法及系统 | |
CN109325140B (zh) | 从图像中提取哈希码的方法、装置及图像检索方法、装置 | |
CN113609809B (zh) | 射频低噪放电路故障诊断方法、系统、设备、介质、终端 | |
Rui et al. | Smart network maintenance in an edge cloud computing environment: An adaptive model compression algorithm based on model pruning and model clustering | |
CN114880538A (zh) | 基于自监督的属性图社团检测方法 | |
CN114037051A (zh) | 一种基于决策边界的深度学习模型压缩方法 | |
Shen et al. | Learning to prune in training via dynamic channel propagation | |
CN109145132B (zh) | 从图像中提取哈希码的方法、装置及图像检索方法、装置 | |
CN112257469A (zh) | 用于小型移动设备的深层神经机器翻译模型的压缩方法 | |
CN117725454B (zh) | 一种输电线路缺陷特征分布学习方法 | |
Xu et al. | Local feature aggregation for blind image quality assessment |
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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20201112 Address after: 510080 Dongfeng East Road, Dongfeng, Guangdong, Guangzhou, Zhejiang Province, No. 8 Patentee after: Electric Power Research Institute of Guangdong Power Grid Co.,Ltd. Patentee after: Measurement Center of Guangdong Power Grid Co.,Ltd. Address before: 510080 Dongfeng East Road, Dongfeng, Guangdong, Guangzhou, Zhejiang Province, No. 8 Patentee before: Electric Power Research Institute of Guangdong Power Grid Co.,Ltd. |