电力数据的shapelets的获取方法、装置、电子设备及存储介质

文档序号:31838886发布日期:2022-10-18 22:04阅读:103来源:国知局
电力数据的shapelets的获取方法、装置、电子设备及存储介质

1.本发明涉及深度学习技术领域,特别是涉及一种电力数据的shapelets的获取方法、装置、电子设备及存储介质。


背景技术:

2.用户用电数据主要来自安装在消费者侧的智能电表和公用事业操作中心的计量数据管理系统。具有数据体量大、数据类型多、要求处理速度快等特点。因此,需要使用合理的数据降维算法。这些算法的目标是在较低维空间中表示智能电表数据,同时保留基本的数据属性。这可以加快计算和创建集群,将智能电表数据分类为具有共同特征的组。
3.2015年,john等人提出了k-shape,一种与领域无关、高精度、高效的时间序列聚类方法。该方法是k-means演变而来的,与k-means不同,它采用基于归一化版本的互相关方法作为距离度量,以及质心计算方法。但是仅仅用原数据来直接进行聚类的效果是不理想的。
4.根据调研有学者提出时间序列shapelets,是时间序列中的一种小的局部模式,可以高度预测一个类。shapelets的概念是由ye作为时间序列数据挖掘的原语引入的。从那时起,许多其他的研究人员已经证明了shapelets在分类时间序列数据方面的效用。但是,这种方法要求带有标签的时间序列,是有监督的聚类。这与聚类的无监督定义相违背。


技术实现要素:

5.基于此,本发明的目的在于,提供一种电力数据的shapelets的获取方法、装置、电子设备及存储介质,使用m-shapenet模型训练时间序列,该模型基于lstm进一步优化了 shapenet模型,解决了shapenet模型不能很好的处理时序数据的缺点。
6.第一方面,本发明提供一种电力数据的shapelets的获取方法,包括以下步骤:
7.获取待处理的电力数据;
8.对所述电力数据进行数据清理和特征工程处理,得到所述电力数据对应的二维数据;
9.将所述二维数据输入训练好的shapelets提取网络,得到所述电力数据对应的shapelets;其中,所述shapelets提取网络包括顺次连接的序列输入层、lstm层、全连接层、最大池化层和线性层。
10.进一步地,还包括以下步骤:
11.使用如下聚类损失函数,对所述shapelets进行聚类:
[0012][0013]
其中,d
ap
、d
an
分别表示anchor到正负样本之间的距离,d
instra
表示类间距离,λ是超参数;
[0014][0015][0016][0017][0018][0019]dinstra
=d
p
+dn[0020]
其中,s表示样本个数;cosθ
∠pna
、cosθ
∠pan
是控制正负样本之间距离的因子,取值范围 [-1,1];
[0021][0022][0023]
进一步地,将所述二维数据输入训练好的shapelets提取网络,得到所述电力数据对应的 shapelets,包括:
[0024]
将所述二维数据输入所述序列输入层,构建序列数据;
[0025]
将所述序列数据输入所述lstm层,得到序列特征向量;
[0026]
将所述序列特征向量顺次输入所述全连接层、所述最大池化层和所述线性层,使得所述全连接层、所述最大池化层和所述线性层将所述序列特征向量嵌入到一个统一长度的空间中,得到所述电力数据对应的shapelets。
[0027]
进一步地,所述shapelets提取网络的训练参数包括:
[0028]
模型的输入数据为1
×
100的cell,每个cell又包含1
×
2160个数据;
[0029]
输出的shapelets为1
×
100的向量;
[0030]
训练参数为:学习率0.001,迭代次数epoch为250次,dropout值为0.75,lambda为1。
[0031]
进一步地,所述电力数据对应的二维数据格式为:
[0032]
横向表示100个样本,纵向表示单个样本在时间间隔为1h之间消耗的电量,共3个月, 2160小时。
[0033]
进一步地,对所述电力数据进行数据清理,包括:
[0034]
利用pandas将数据转换成dataframe格式;
[0035]
删除空缺值,改变数据类型。
[0036]
进一步地,对所述电力数据进行特征工程处理,包括:
[0037]
添加代表星期的列,根据原始电力数据中的日期得到所述代表星期的列的内容;
[0038]
添加代表日期的列,根据原始电力数据中的日期得到所述代表日期的列的内容;
[0039]
按照id和日期进行重新排序;
[0040]
过滤掉时间为周末的用电数据。
[0041]
第二方面,本发明还提供一种电力数据的shapelets的获取装置,包括:
[0042]
电力数据获取模块,用于获取待处理的电力数据;
[0043]
预处理模块,用于对所述电力数据进行数据清理和特征工程处理,得到所述电力数据对应的二维数据;
[0044]
shapelets提取模块,用于将所述二维数据输入训练好的shapelets提取网络,得到所述电力数据对应的shapelets;其中,所述shapelets提取网络包括顺次连接的序列输入层、lstm层、全连接层、最大池化层和线性层。
[0045]
第三方面,本发明还提供一种电子设备,包括:
[0046]
至少一个存储器以及至少一个处理器;
[0047]
所述存储器,用于存储一个或多个程序;
[0048]
当所述一个或多个程序被所述至少一个处理器执行,使得所述至少一个处理器实现如本发明第一方面任一所述的一种电力数据的shapelets的获取方法的步骤。
[0049]
第四方面,本发明还提供一种计算机可读存储介质,
[0050]
所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如本发明第一方面任一所述的一种电力数据的shapelets的获取方法的步骤。
[0051]
本发明提供的一种电力数据的shapelets的获取方法、装置、电子设备及存储介质,通过使用增加了最大池化层以及线性层的lstm模型,进一步优化了模型对时间序列数据的训练,与shapenet模型相比,lstm比cnn更适合处理时间序列数据,因为lstm具有记忆功能,可以根据上下文得出结论,而cnn只能识别出一部分的特征,即使添加各种辅助性处理,效果也不一定好,因此cnn并不完全适用于学习时间序列。传统的聚类方法,可解释性差,对时间序列数据的聚类局限于长度一致的时间序列数据,而改进的shapenet可以对不同长度的时间序列进行特征提取。而shapelets本身就具有强的可解释性。提出了新的聚类方法,改善现有聚类方法可解释性差的问题,提出了m-shapenet模型训练时间序列,该模型基于lstm 进一步优化了shapenet模型,解决了shapenet模型不能很好的处理时序数据的缺点。
[0052]
并提出了新的聚类损失函数,它以多个正负样本和正负样本内的距离作为输入。加入了判别pn之间的距离,能够解决原先的三重损失函数,只考虑了anchor到正负样本的距离,忽略了正负样本两者间的距离,比如避免不了损失函数很小但是正负样本距离也很小这种情况的出现。
[0053]
为了更好地理解和实施,下面结合附图详细说明本发明。
附图说明
[0054]
图1为本发明提供的一种电力数据的shapelets的获取方法的步骤示意图;
[0055]
图2为本发明在一个实施例中的pandas数据清理流程图;
[0056]
图3为本发明在一个实施例中的3个月电力数据逐时消耗量示意图;
[0057]
图4为本发明在一个实施例中使用的shapelets提取网络的结构示意图;
[0058]
图5为本发明在一个实施例中经过聚类得到的日负荷曲线图;
[0059]
图6为本发明提供的一种电力数据的shapelets的获取装置的结构示意图。
具体实施方式
[0060]
为使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术实施例方式作进一步地详细描述。
[0061]
应当明确,所描述的实施例仅仅是本技术实施例一部分实施例,而不是全部的实施例。基于本技术实施例中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本技术实施例保护的范围。
[0062]
在本技术实施例使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本技术实施例。在本技术实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和 /或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
[0063]
下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。在本技术的描述中,需要理解的是,术语“第一”、“第二”、“第三”等仅用于区别类似的对象,而不必用于描述特定的顺序或先后次序,也不能理解为指示或暗示相对重要性。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本技术中的具体含义。
[0064]
此外,在本技术的描述中,除非另有说明,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在 a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
[0065]
针对背景技术中的问题,本技术实施例提供一种电力数据的shapelets的获取方法,如图 1所示,该方法包括以下步骤:
[0066]
s01:获取待处理的电力数据。
[0067]
用户用电数据主要来自安装在消费者侧的智能电表和公用事业操作中心的计量数据管理系统。
[0068]
在本发明使用的shapelets提取网络的训练过程中,使用的数据集是源自pecan streetenergy database的数据库文件,该数据集包含216个用户从2015-7-01 00:00:00到2015-8-0100:00:00共一个月的用电记录。
[0069]
s02:对所述电力数据进行数据清理和特征工程处理,得到所述电力数据对应的二维数据。
[0070]
优选的,如图2所示,对所述电力数据进行数据清理,包括:
[0071]
利用pandas将数据转换成dataframe格式;删除空缺值,改变数据类型。
[0072]
优选的,对如图3所示的电力数据进行特征工程处理,包括:
[0073]
添加代表星期的列,根据原始电力数据中的日期得到所述代表星期的列的内容;
[0074]
添加代表日期的列,根据原始电力数据中的日期得到所述代表日期的列的内容;
[0075]
按照id和日期进行重新排序;
[0076]
过滤掉时间为周末的用电数据。
[0077]
经过处理后,得到的所述电力数据对应的二维数据格式为:
[0078]
横向表示100个样本,纵向表示单个样本在时间间隔为1h之间消耗的电量,共3个月, 2160小时。
[0079]
s03:将所述二维数据输入训练好的shapelets提取网络,得到所述电力数据对应的shapelets。
[0080]
在一个优选的实施例中,如图4所示,所述shapelets提取网络包括顺次连接的序列输入层、lstm层、全连接层、最大池化层和线性层。
[0081]
与shapenet模型相比,lstm比cnn更适合处理时间序列数据,因为lstm具有记忆功能,可以根据上下文得出结论,而cnn只能识别出一部分的特征,即使添加各种辅助性处理,效果也不一定好,因此cnn并不完全适用于学习时间序列。
[0082]
根据上述shapelets提取网络,将所述二维数据输入训练好的shapelets提取网络,得到所述电力数据对应的shapelets,包括以下处理步骤:
[0083]
s031:将所述二维数据输入所述序列输入层,构建序列数据;
[0084]
s032:将所述序列数据输入所述lstm层,得到序列特征向量;
[0085]
s033:将所述序列特征向量顺次输入所述全连接层、所述最大池化层和所述线性层,使得所述全连接层、所述最大池化层和所述线性层将所述序列特征向量嵌入到一个统一长度的空间中,得到所述电力数据对应的shapelets。
[0086]
优选的,shapelets提取网络模型的输入数据为1
×
100的cell,每个cell又包含1
×
2160 个数据;输出的shapelets为1
×
100的向量。
[0087]
shapelets提取网络模型的训练参数为:学习率0.001,迭代次数epoch为250次,dropout 值为0.75,lambda为1。
[0088]
在一个具体的应用场景中,得到电力数据的shapelets后,可以将模型输出的shapelets输入到聚类算法k-shape中进行聚类,如图5所示,得到的聚类中心即电力数据对应的日负荷曲线。
[0089]
优选的,使用如下聚类损失函数,对所述shapelets进行聚类:
[0090][0091]
其中,d
ap
、d
an
分别表示anchor到正负样本之间的距离,d
instra
表示类间距离,λ是超参数。
[0092][0093][0094][0095][0096][0097]dinstra
=d
p
+dn[0098]
其中,s表示样本个数;cosθ
∠pna
、cosθ
∠pan
是控制正负样本之间距离的因子,取值范围 [-1,1],cosθ
∠pna
越小越好,cosθ
∠pan
越大越好。
[0099][0100][0101]
本技术实施例还提供一种电力数据的shapelets的获取装置,如图6所示,该电力数据的 shapelets的获取装置400包括:
[0102]
电力数据获取模块401,用于获取待处理的电力数据;
[0103]
预处理模块402,用于对所述电力数据进行数据清理和特征工程处理,得到所述电力数据对应的二维数据;
[0104]
shapelets提取模块403,用于将所述二维数据输入训练好的shapelets提取网络,得到所述电力数据对应的shapelets;其中,所述shapelets提取网络包括顺次连接的序列输入层、lstm 层、全连接层、最大池化层和线性层。
[0105]
优选的,还包括聚类模块,用于使用如下聚类损失函数,对所述shapelets进行聚类:
[0106][0107]
其中,d
ap
、d
an
分别表示anchor到正负样本之间的距离,d
instra
表示类间距离,λ是超参数;
[0108][0109][0110][0111][0112][0113]dinstra
=d
p
+dn[0114]
其中,s表示样本个数;cosθ
∠pna
、cosθ
∠pan
是控制正负样本之间距离的因子,取值范围[-1,1];
[0115][0116][0117]
优选的,shapelets提取模块包括:
[0118]
序列数据构建单元,用于将所述二维数据输入所述序列输入层,构建序列数据;
[0119]
序列特征向量提取单元,用于将所述序列数据输入所述lstm层,得到序列特征向
量;
[0120]
序列特征向量嵌入单元,用于将所述序列特征向量顺次输入所述全连接层、所述最大池化层和所述线性层,使得所述全连接层、所述最大池化层和所述线性层将所述序列特征向量嵌入到一个统一长度的空间中,得到所述电力数据对应的shapelets。
[0121]
优选的,所述shapelets提取网络的训练参数包括:
[0122]
模型的输入数据为1
×
100的cell,每个cell又包含1
×
2160个数据;
[0123]
输出的shapelets为1
×
100的向量;
[0124]
训练参数为:学习率0.001,迭代次数epoch为250次,dropout值为0.75,lambda为1。
[0125]
优选的,所述电力数据对应的二维数据格式为:
[0126]
横向表示100个样本,纵向表示单个样本在时间间隔为1h之间消耗的电量,共3个月, 2160小时。
[0127]
优选的,预处理模块包括:
[0128]
格式转换单元,用于利用pandas将数据转换成dataframe格式;
[0129]
空缺值删除单元,用于删除空缺值,改变数据类型。
[0130]
优选的,预处理模块还包括:
[0131]
星期列添加单元,用于添加代表星期的列,根据原始电力数据中的日期得到所述代表星期的列的内容;
[0132]
日期列添加单元,用于添加代表日期的列,根据原始电力数据中的日期得到所述代表日期的列的内容;
[0133]
排序单元,用于按照id和日期进行重新排序;
[0134]
过滤单元,用于过滤掉时间为周末的用电数据。。
[0135]
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0136]
本技术实施例还提供一种电子设备,包括:
[0137]
至少一个存储器以及至少一个处理器;
[0138]
所述存储器,用于存储一个或多个程序;
[0139]
当所述一个或多个程序被所述至少一个处理器执行,使得所述至少一个处理器实现如前所述的一种电力数据的shapelets的获取方法的步骤。
[0140]
对于设备实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的设备实施例仅仅是示意性的,其中所述作为分离部件说明的组件可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本公开方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0141]
本技术实施例还提供一种计算机可读存储介质,
[0142]
所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如前所述的一种电力数据的shapelets的获取方法的步骤。
[0143]
计算机可用存储介质包括永久性和非永久性、可移动和非可移动媒体,可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括但不限于:相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(r am)、只读存储器(r o m)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器 (cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
[0144]
本发明提供的一种电力数据的shapelets的获取方法、装置、电子设备及存储介质,通过使用增加了最大池化层以及线性层的lstm模型,进一步优化了模型对时间序列数据的训练,与shapenet模型相比,lstm比cnn更适合处理时间序列数据,因为lstm具有记忆功能,可以根据上下文得出结论,而cnn只能识别出一部分的特征,即使添加各种辅助性处理,效果也不一定好,因此cnn并不完全适用于学习时间序列。传统的聚类方法,可解释性差,对时间序列数据的聚类局限于长度一致的时间序列数据,而改进的shapenet可以对不同长度的时间序列进行特征提取。而shapelets本身就具有强的可解释性。提出了新的聚类方法,改善现有聚类方法可解释性差的问题,提出了m-shapenet模型训练时间序列,该模型基于lstm 进一步优化了shapenet模型,解决了shapenet模型不能很好的处理时序数据的缺点。
[0145]
并提出了新的聚类损失函数,它以多个正负样本和正负样本内的距离作为输入。加入了判别pn之间的距离,能够解决原先的三重损失函数,只考虑了anchor到正负样本的距离,忽略了正负样本两者间的距离,比如避免不了损失函数很小但是正负样本距离也很小这种情况的出现。
[0146]
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1