基于LSTM-Attention融合的电力客户主动服务推荐方法

2022-05-13 09:42:00朱吉然唐海国张志丹唐小伟颜宏文
电力科学与技术学报 2022年2期
关键词:特征提取神经网络客户

张 帝,王 韬,朱吉然,唐海国,张志丹,唐小伟,颜宏文

(1.国网湖南省电力有限公司电力科学研究院,湖南 长沙 410007;2.长沙理工大学电气与信息工程学院,湖南 长沙 410114;3.长沙理工大学计算机与通信工程学院,湖南 长沙 410114)

电网企业因其行业的特殊性,本身拥有大量的客户群体及历史用电数据,且提供的传统电力服务是全面的。但随着电力体制深入改革及售电侧放开,大量资本涌入电力市场并展开激烈的市场竞争,电网企业不再具有垄断地位,电力客户的购电对象选择也变的多样化[1]。为此,全方位了解用户需求,提供迎合电力用户需求的主动优质服务是及其必要且可行的,不断稳固且提高电力用户的保有量,也是提高市场竞争力的必要手段。与传统95598派工工单方式相比,主动服务主要通过提取用户特征,从而发现用户的潜在需求,进而为用户推荐服务。目前,在主动服务主动推荐方面算法方面,较著名也最常用的算法是协同过滤推荐算法[2-5]。按照主动服务推荐应用对象划分,可将其分为基于项目与基于用户的2种不同的协同过滤推荐算法,二者原理相似,主要优点在于简单有效、便于理解,但缺点也十分明显,具有推荐精度较低、冷启动等问题。

随着人们在信息技术领域的不断探索,深度学习技术已经得到了巨大的发展,并在各行各业大放异彩,在推荐系统方面,由于深度学习模型的使用,能够极大地克服传统传统推荐方法的不足。文献[6]利用深度学习算法进行用户行为推荐,能克服矩阵分解和协同过滤的数据稀疏性以及过拟合问题;文献[7]在推荐系统中应用了深度学习,提出一种多交互的混合推荐模型,能够聚合考虑多维度的评分信息,具有更好的推荐性能;文献[8]构建了基于深度神经网络和卷积神经网络的混合推荐模型,能够更深层次的获取隐式信息反馈,有效提高推荐性能;文献[9]将BP神经网络应用于窃电检测,其结果十分理想,在提高窃电检测准确率的同时,也有效地降低了管理线损;针对风力发电中风况不可控原因,文献[10]将小波神经网络应用于风力发电机故障预测,其实现结果证明方法能有效预测其故障发生。在电力行业中,深度学习主要应用于保障供电可靠性、电力设备稳定性等方面,对电力服务方面的研究探索较少[11-12]。

由于应用于电力客户主动服务推荐的数据是时序的,循环神经网络在时间特征序列特征中具有更优良的预测及推荐性能[12]。实际应用中由于其结构设计,对于时间长久的信息记忆力不足,无法建立长期依赖,从而导致特征提取不充分,长短时间记忆网络(long short-term memory,LSTM)具有更好的性能,在数据间建立长期依赖。注意力机制(attention mechanisms)能够对LSTM进行优化处理,能更好应用于主动服务推荐[13-14]。为此,本文提出一种LSTM-Attention融合算法的电力客户主动服务推荐,基于投诉工单数据构建客户潜在需求模型,并利用实际数据进行仿真分析。

1 基于LSTM-Attention融合算法

LSTM隶属于循环神经网络(recurrent neural network,RNN),是一种改良过的RNN,与RNN相比,LSTM在原有的RNN上增加了3个门控单元:输入门、忘记门以及输出门,其主要解决了RNN所存在的固有问题[15]。LSTM的结构与RNN不同,其增添了特殊的隐层结构,通过增加隐层单元,从而能够更加有效地与长久信息建立长期依赖,是目前应用最为广泛的循环神经网络模型。同时结合Attention机制的优越性能,从而提高模型的准确度。

图1 LSTM单元结构Figure 1 LSTM cell structure

2 电力投诉工单提取客户潜在服务需求

本文采用C市的电力数据,其主要来源为电力服务工单,每条数据都有用户编号、用户性别、台区信息、服务类别等相关信息。以台区信息属性为例,台区属性为文字信息,不易进行直接输入,因此,对其进行编码处理,每个台区拥有自己独立的编码,输入数据为原始数据,数据输入嵌入层(embedding layer),主要目的是将数据向量化,经嵌入完成后,X=(x1,x2,…,xn),其中xi表示用户对第i个项目类型的交互特征向量。

项目特征嵌入完成后将其输入特征提取层,本层采用的是LSTM神经网络进行特征提取,输入数据为特征嵌入输出数据X=(x1,x2,…,xn)。

以Xt为例,即Xt表示t时刻用户对项目交互数据,Xt进入特征提取层,即进入LSTM神经网络当中,ft表示结构中的忘记门,Wf为其所属的权值矩阵,ht-1为t-1时刻用户的状态,bf为忘记门中的偏移值。忘记门采用sigmoid函数,该门控单元将根据t时刻输入数据与t-1时刻的用户状态进行对比,即根据用户前一时刻状态,对当前数据进行对比,从而筛选有用数据,即

ft=σ(Wf[ht-1,Xt]+bf)

(1)

同时输入的Xt数据与ht-1也会传入输入门fi,输入门同样采用sigmoid函数作为激活函数,拥有自己的权值矩阵Wi以及偏移值bi,其公式表示为

it=σ(Wi[ht-1,xt]+bi)

(2)

与此同时,Xt、ht-1还会传入单元状态区,此块区域采用tanh函数作为激活函数,拥有自己的权值矩阵Wc以及偏移值bc,即

(3)

(4)

最终的特征提取值将由输出门进行处理输出,Xt、ht-1作为输入数据进入输出门,将sigmoid函数作为其激活函数,其中Wi、bi分别为输出门的权值矩阵以及偏移值,经过输出门的输出值与单元状态进行运算,最终生成输出值ht,即

ot=σ(WO[ht-1,Xt]+bO)

(5)

ht=ot·tanhCt

(6)

3 基于LSTM-Attention融合算法的电力客户主动服务推荐方

本文针对电力客户进行主动服务推荐,其中,使用LSTM-Attention融合算法对提取的特征进行特征预测,其模型主要架构如图2所示。

原始数据首先进入嵌入层,将数据转化为有效的计算数据,即将数据进行向量化处理,之后进入特征提取层,特征提取层主要是针对用户需求在时序上的改变,同时结合用户历史行为,充分提取隐藏特征。

数据经过提取之后送入特征预测层,伴随时间的推移,用户对服务的需求也会有所改变,其主要原因是主要影响因素发生了变化,从而导致用户需求发生变化。特征预测层主要优势在于可以为最终的预测结构提供丰富的历史信息,从而提高用户需求的预测准去率,推荐给用户更加适合的服务。

图2 模型架构Figure 2 Model architecture

类似于式(1)~(6),使用it、ht分别代表特征预测层的输入和隐藏状态,在特征预测层当中还采用Attention机制来加以优化,其公式表示为

ut=tanh(htWt+bt)

(7)

(8)

式(7)、(8)中ht为特征提取层的输出;Wt为权重矩阵;bt为偏置值;ut为ht的隐藏表示;ea为服务特征向量;W∈RnH·nSnHnS,nH为传入的隐藏状态维度,nS为服务嵌入特征维度。at即Attention产生的分数为反应ea与ht间的关系,倘若之间的联系大,则分数越大。

经过Attention输出at,结合特征提取层中的隐藏状态ht,对其进行权重求积得到:

it=at·ht

(9)

it则作为LSTM的输入值,最终获得hT作为输出值,也就是模型的最终预测值,进入输出层,即

xn=concat(hT,es)

(10)

yn=fsum((frelu(frelu(xn)))

(11)

其中,es表示服务嵌入特征向量,hT则是最终的预测输出值,concat表示将2组向量进行关联拼接,形成xn,xn作为2层全连接的输入值,之所以采用2层,其主要目的是为了降维,最终输出值yn由sum函数输出,从而得到用户所使用的次数。

4 案例仿真与分析

实验环境为PyCharm环境下的Python3.7,同时以PyTorch为底层网络框架创建整个算法数据流图,并搭建深度学习网络,GPU为NVIDA GEFORCE MX150,部分实验参数如表1所示。

表1 模型实验参数Table 1 Model experimental parameters

所使用的数据集为C市的电力用户数据,总数为9 278,主要分为用户信息、服务信息以及用户交互数据。用户信息数据为用户的固有属性,主要包括用户编号、性别、用户所在台区、用电属性、开户年限等;服务信息数据主要包括服务编号、服务名称、服务类型等;用户交互数据主要包括用户编号、服务编号、服务名称等。数据中部分主要服务类型如表2所示,其中用户编号栏为保护用户隐私,在表中显示为序列号;将获取的数据进行8∶2随机分开,其中80%为训练数据集,20%为测试数据集,训练模型时,将Epoch设置为5次,同时将BP神经网络、卷积神经网络(convolutional neural networks, CNN)以及LSTM设置为对比试验。

模型经过训练后为验证模型效果,剩余20%的数据作为测试样本输入至模型,其中实验结果如图3所示(MAE(mean absolute error)为平均绝对误差、RMSE(root mean square error)为均方根误差),详细数据如表3所示。

表2 主要服务类型Table 2 Main service types

图3 测试结果Figure 3 Test result chart

表3 模型测试结果Table 3 Model test results

本文采用MAE、RMSE作为模型评价标准,是由于本文模型输出的最终结果为用户使用服务次数,次数越高,则代表用户更加倾向需要企业提供服务,而模型预测的值越接近真实值,则模型就更加精确。

测试结果显示本文模型的性能优于其他对比模型,本文所提模型的MAE、RMSE分别为0.140、0.150,其中,CNN的MAE以及RMSE远远大于其他模型,而单一LSTM和BP虽优于CNN,但相比本文模型稍有逊色,其主要原因在于Attention机制的使用,Attention机制在服务推荐中将更多的权重集中在用户的主要需求上,从而更能发现用户所需,本文模型的服务推荐性能更优。

为了更好地验证本文模型优于对比模型,本文使用MovieLens数据集对其进行补充实验,得到实验结果如图4所示,其中实验中的详细数据如表4所示。

图4 测试结果(MovieLens)Figure 4 Test results chart(Movielens)

表4 模型测试结果(MovieLens)Table 4 Model test results(Movielens)

从图4中可得LSTM-Attention在MovieLens中也可以取得不错的成绩,MAE、RMSE均优于对比模型,MAE、RMSE取值分别为0.995、1.190。MovieLens对比C市数据测试结果,MAE、RMSE数值相差过大,其主要原因为数据集大小相差大,从而导致评价指标数值相差大。

5 结语

本文提出一种基于LSTM-Attention融合的电力客户主动服务推荐方法。

1)电力行业中在客户主动服务方面的研究较为空缺,且其推荐算法存在相当大的不足,为此,本文提出了将LSTM-Attention融合算法应用于电力客户主动推荐,能极大地克服协同过滤推荐算法所存在的冷启动以及循环神经网络存在的梯度弥散和梯度爆炸等问题;

2)基于电力投诉工单数据,建立了电力客户潜在需求模型,具体阐述了基于LSTM-Attention算法的电力客户主动服务推荐方法;

3)利用C市和MovieLens数据集的电力客户投诉工单数据进行了算例仿真,并与CNN、BP、LSTM等主流推荐算法进行了比较,算例结果证明,本文提出的主动服务推荐算法的精度更高,具有更好的性能,能更好地应用于主动服务推荐领域。

猜你喜欢
特征提取神经网络客户
神经网络抑制无线通信干扰探究
电子制作(2019年19期)2019-11-23 08:42:00
基于Daubechies(dbN)的飞行器音频特征提取
电子制作(2018年19期)2018-11-14 02:37:08
为什么你总是被客户拒绝?
如何有效跟进客户?
Bagging RCSP脑电特征提取算法
基于神经网络的拉矫机控制模型建立
重型机械(2016年1期)2016-03-01 03:42:04
做个不打扰客户的保镖
山东青年(2016年2期)2016-02-28 14:25:41
复数神经网络在基于WiFi的室内LBS应用
基于支持向量机回归和RBF神经网络的PID整定
基于MED和循环域解调的多故障特征提取