面向在线客服系统的服务量预测算法①
2020-04-24周子馨
周子馨
(河海大学 计算机与信息学院,南京 211100)
随着客服中心服务量的不断增加,如何保证在高峰时段和突发情况下有足够的客服人员在服务,已成为一个越来越紧迫的问题.实际上,在线客服系统是不能够完全自动化完成客服中心的复杂调度和计划任务.人的交互作用是客服中心必不可少的,因此如何对客服中心的服务量进行预测,对于保证客服中心提供的服务能够使客户获得较高的满意度是非常重要的[1].
目前,对于服务量的预测方法已有多种,如时间序列、排队论、回归预测和神经网络等.Andrews 等[2]和Antipov 等[3]提出了一种具有解释变量的自回归综合移动平均ARIMAX 模型,该模型使用如促销周期、广告响应和日历效应等外部变量.Aldor-Noiman 等[4]提出了一种基于混合泊松过程方法的统计模型,该模型考虑事件的影响,例如将账单待出时期作为外部变量.Niu 等[5]提出了一种特殊的回波状态网络,在该网络中每个时间序列具有不同的存储层,并且该网络将外部变量也考虑其中.ARIMAX 模型和基于混合泊松过程方法的统计模型属于参数方法,虽然可以明确各变量之间的数量关系,定量分析变量对因变量的影响大小,但是其方法内部参数的设定受使用者的主观影响较大,不同的使用者很可能会得到相差很大的结果[6];回波状态网络属于非参数方法,依靠数据来调节模型内部的参数,进而得到变量与因变量之间的关系,但是对于长时间序列,其预测能力有限.因此长短时记忆神经网络(LSTM)被提出,它是一种改进的时间递归神经网络(RNN),可以学习时间序列长短期信息.由于其包含时间记忆单元,因此适合处理和预测时间序列中的间隔和延迟事件.但是LSTM 仍然有2 个缺点:一是隐含层数和隐含层神经元数难确定;二是学习率和迭代次数难确定[6].隐含层数和隐含层神经元数直接决定模型的拟合能力,学习率和迭代次数影响模型的训练过程和效果.在实际应用中,这些参数都是依靠经验来确定,具有较大的随机性,这降低了模型的预测效果.
本文主要贡献和创新如下:
(1)提出了基于算法DMPSADE 的一种改进算法IDMPSADE,即通过反向引导寻优效果不佳的父代种群变异方向,提升搜索全局最优能力.
(2)建立了IDMPSADE-LSTM 预测模型,并且分析了在线客服系统的系统历史服务量数据,挖掘出关键影响因素,将其作为LSTM 的多输入变量,利用IDMPSADE 对LSTM 的部分超参数进行寻优,从而提升了IDMPSADE-LSTM 预测模型的精确度.
本文内容安排如下:第1 节主要介绍已有的服务量预测方法.第2 节针对各预测方法存在的不足,引入构建本文预测模型所需的背景知识.第3 节介绍改进的算法IDMPSADE,并与多种其它差分进化算法进行实验对比.第4 节构建IDMPSADE-LSTM 预测算法模型.第5 节通过分析历史数据,选取服务量影响因素作为LSTM 的多输入变量,利用IDMPSADE-LSTM 预测模型对服务量进行预测,并且与其他神经网络以及混合预测模型进行实验对比分析.第6 节对IDMPSADELSTM 预测模型进行总结.
1 相关知识
1.1 长短时记忆神经网络LSTM 原理
对于标准循环神经网络结构而言,存在一个问题:一般神经网络的信息从输入层到隐含层到输出层单向流动,循环神经网络的信息传递存在定向的循环,很容易出现梯度消失和梯度爆炸[7-9].LSTM 结构由一组循环连接的子网(称为记忆单元)组成.每个记忆单元包含一个或多个自连接的记忆细胞和三种门(输入门、输出门和遗忘门),这三种门允许记忆细胞存储访问长时间段的信息,因此能够缓解梯度消失的问题[10].LSTM 中由单个记忆细胞构成的记忆单元如图1 所示.
图1 LSTM 单细胞记忆单元示意图
某一时刻t 的状态计算过程如下:
其中,ϕ 和σ 分别为双曲正切(tanh)和sigmoid 函数,W 和b 为 待学习的网络参数.it,ft和ot分别为t 时刻的输入门(input gate)、遗忘门(forget gate)和输出门(output gate),ct为t 时刻记忆单元的内部状态.ct能够在t 时刻保持模型对历史输入信息的编码记忆,输入门控制信息流入,输出门控制信息流出,而遗忘门则控制历史信息对当前记忆单元 ct的影响大小.ht和ht-1分别为记忆单元在t-1 和t 时刻的输出.由于能够较好地对长程和短程依赖关系进行建模,长短时记忆模型被广泛运用到序列编码中[11].
1.2 差分进化算法原理
1.2.1 差分进化算法概述
差分进化算法是一种针对种群演化的计算技术,初衷是为了解决切比雪夫多项式问题,在发展过程中,研究人员发现它也可以用于解决复杂优化问题.差分进化算法保留了基于种群的全局搜索策略,采用实数编码,变异操作采用个体间的差值与变异率相乘,并且使用一对一的竞争生存策略,从而降低简化遗传操作.此外,因为差分进化算法具备独特的记忆能力,所以它可以根据跟踪到的动态搜索情况调整搜索策略,全局收敛能力和健壮性相较其他进化算法优越.虽然数学方法能够对很多抽象问题具象逻辑求解,但是自然界中依旧存在大量利用常规的数学归纳方法无法解决的优化问题,差分进化算法对此类问题无需其特征信息就能求解.因此,差分进化算法因其拥有的高效搜索能力对于学术研究和工程类应用而言存在一定的意义与价值[12].
1.2.2 DMPSADE算法流程
差分进化算法的搜索能力是由被选择的变异策略和相关的控制参数决定,所以选择适当的变异策略和控制参数对差分进化算法性能的改善是至关重要的,基于离散变异控制参数的自适应差分进化算法(DMPSADE)核心是实现控制参数和变异策略的自适应,同时确保每个变量的控制参数能够进行独立演化[13].
(1)初始化
NP 为种群中的个体数量,Gmax为演化过程中的最大迭代数,x为生成的种群个体,个体的变化范围为[xmin,xmax],D为问题维度.每一种变异策略的初始个体数量为 N P/5,种群初始化方式如式(7)所示.
(2)种群进化
Setp为决定单个自适应变异策略使用量的常量,GS为判断种群个体选用何种变异策略的条件,令GS=Setp×Gmax.
交叉操作:如式(8)所示,其中 Rj是[0,1]中的均匀随机数;CR 为交叉控制参数.
选择操作:如式(9)所示.
(3)变异策略自适应
如果G =GS,5 种变异策略DE/rand/1、DE/rand/2、DE/best/2、DE/rand-to-best/1 和DE/rand-to-best/2 会被随机分配给种群中所有的个体.
如果G >GS,计算出每一种变异策略的累积概率,并采用轮盘法决定第G+1 代种群个体的变异策略.
(4)控制参数自适应
由于迭代数G、上一代变异控制参数值与交叉控制参数值对下一代变异控制参数和交叉控制参数的更新有一定影响,故以此为判断条件,通过计算每个个体的权值,获取每个个体的变异控制参数加权平均值与种群的交叉控制参数加权平均值,利用正态分布函数对控制参数进行更新.
(5)迭代
种群迭代一次,即G =G+1.
(6)评估
重复步骤(2)~(5)直到迭代数值达到最大值或评估函数收敛精度达到要求.
2 IDMPSADE算法
DMPSADE算法主要思想是种群在经过初步的初始化、种群进化之后,进行变异策略和控制参数的自适应行为,然后选择评估值小的种群作为最佳种群.IDMPSADE 以DMPSADE算法思想为基础,初始化种群时均采用正向引导变异,当正向引导的效果不佳即子代种群适应度函数大于父代种群适应度函数时,此处的适应度函数为算法的寻优函数,对父代种群个体进行反向引导,即更改引导方向,选择反向引导更为直观,从而提高跳出局部最优和搜索到全局最优的可能性.反向引导体现在改进策略公式的F 参数符号中,具体如式(10),式(11)至式(14)所示.
DE/rand/1 策略:
DE/rand/2 策略:
DE/best/2 策略:
DE/current-to-best/1 策略:
DE/current-to-best/2 策略:
IDMPSADE算法的控制参数包括变异控制参数与交叉控制参数,参数的定义与DMPSADE算法的一致,公式如式(15)至式(17)所示.
当更新条件为G <0.5×Gmax并且个体对应的变异控制参数大于1,或者小于0.1×(0.1-(G/Gmax)2)时,变异控制参数需要按照N (,σ1)进行更新;若更新条件为G >0.5×Gmax并且大于1,则将变异控制参数置为1;若更新条件为<0,则将变异控制参数按照进行更新.交叉控制参数的更新条件与变异控制参数的一致,在各条件下对应的更新式分别为 N(,σ),1,其 中,为个体适应度函数,即目标函数,fmax为种群最优适应度函数.由于CR的值越大,种群个体信息量交换的程度越大.反之,如果C R的值偏小,将会使种群的多样性快速减小,不利于全局寻优;F 主要影响算法的全局寻优能力,F越小,算法对局部的搜索能力更好,F越大算法越能跳出局部极小点,但是收敛速度会变慢.此外,F还影响种群的多样性[14],故令 σ1=σ2=0.8-0.5×(1-(G/Gmax)2),图2为σ 的变化曲线,在寻优过程中以保证更新后的C R 与F均在0.5 左右分布,从而平衡算法的寻优能力与收敛速度.
图2 σ变化曲线
由于IDMPSADE算法的控制参数更新方式与DMPSADE算法相同,故根据已有的实验分析[13]可知,控制参数具有极大的随机性,每个种群个体有其变异控制参数与交叉控制参数,适应性在不同的测试函数上表现也不同.
为了测试IDMPSADE 的寻优性能,除选择DMPSADE算法进行实验对比,还选择了jDE[15]和SaDE[16]在4 种常用测试函数上进行测试,这4 种测试函数具有不同的特性,可抽象地表示实际生活的不同问题.测试函数分别为F1-Shifted Schwefel’s Problem 1.2 with Noise in Fitness,F2-Shifted Rosenbrock’s Function,F3-Non-Continuous Rotated Hybrid Composition Function,F4-Rotated Hybrid Composition Function without bound,其中F1 为单峰函数,F2 为多峰函数且极值点个数较多,F3、F4 为组合测试函数[17].
设置参数NP=100,Gmax=3000,D=30,Setp=0.175,Msp=0.02.评估性能的指标为测试函数均值与标准差,均值与标准差越小,说明算法的收敛精度越高,寻优性能越好.由表1 知,IDMPSADE 的平均值和标准差均比jDE,SaDE 和DMPSADE 的小,说明IDMPSADE算法具有较好的性能.
表1 各差分进化算法标结果对比
3 IDMPSADE-LSTM 预测模型
参数的选取对LSTM 的预测效果存在较大影响.采用IDMPSADE算法对LSTM 参数进行优化,需要进行寻优操作的主要参数有第一层隐藏层的神经元数h1,第二层隐藏层的神经元数h2,学习率r ,训练迭代次数e,训练批次数b,激活函数设置为tanh 函数,由于是预测回归问题,故全连接层输出维度设置为1.
Step 1.初始化.将LSTM 模型中的控制参数数目作为IDMPSADE算法的问题维度,即D 的取值;将在线客服系统的服务量划分为训练LSTM 的训练数据与预测数据.选取LSTM 的拟合值与真实值之间的RMSE 作为目标函数.初始化IDMPSADE算法的基本参数包括种群规模、最大迭代次数、变异参数和交叉参数.IDMPSADE 模型的种群按照式(7)产生,种群中的每个个体均是LSTM 模型的一个参数组合.
Step 2.种群进化.首先判断是否达到迭代结束条件,即全局极小值是否达到了设定的精度或者是否达到了设定的最大迭代次数.如果是,则停止迭代输出最优个体;否则,种群继续进行变异、边界和交叉操作得到下一代种群个体,其中种群的迭代次数以及种群个体目标函数值的分布差异性决定了种群对五种变异策略的选择概率,即变异策略的自适应,转下一步.
Step 3.控制参数自适应.由于迭代数G、上一代变异控制参数值与交叉控制参数值对下一代变异控制参数和交叉控制参数的更新有一定影响,根据种群个体目标函数值的分布差异性以及当前的迭代次数,更新变异控制参数F 与交叉控制参数CR,转下一步.
Step 5.迭代.种群迭代一次,即G =G+1,转Step 2.
Step 6.得到LSTM 最优参数组合以及在线客服系统服务量的预测结果.
4 实验结果分析
4.1 服务量影响因素选取
服务量数据来自于某电力客服中心从2016年1月至2018年12月的数据中心记录,包括每天各时间点的服务记录.影响服务量的因素有很多.由于在冬夏两季受温度影响,居民用电量较多,可能出现跳闸断电、电费相较过去有所增加等情况,导致系统服务量变化较大.雨雪天气影响居民的外出,居民用电量较多,可能出现电力设备故障、电费相较过去有所增加等情况,导致系统服务量变化较大.所以选取温度和降水量为主要影响因素.
在将温度和降水量作为LSTM 的输入前,需要对其进行相关性分析.分析方法利用Pearson 相关性分析和Spearman 秩相关性分析[18].首先将近一年内的在线服务量按照工作日与非工作日划分,同时对异常在线服务量进行数据清洗,分别将温度、降水量作为第一变量,将近一年的工作日在线服务量作为第二变量,对第一、第二变量进行相关系数计算,当Pearson 相关度和Spearman 相关度均大于0.5 时,说明影响因素与服务量的相关性强.影响因素相关性分析结果如表2所示.
由计算结果得出,温度和降水量这两类气象影响因素与在线服务量的相关性强,并且温度和服务量的相关性高于降水量和服务量的相关性,温度和降水量可作为LSTM 预测系统服务量的输入.
表2 影响因素相关性分析
4.2 服务量预测结果分析
(1)IDMPSADE 参数与LSTM 参数设置
种群规模NP 为100,最大迭代次数Gmax为3000,目标函数维度D 为5,决定单个自适应变异策略使用量的参数Setp 为0.175,5 种变异策略的可选概率最大变化量Msp 为0.02,由于是自适应变异控制参数与交叉控制参数,因此根据种群个体目标函数值的分布差异性以及迭代次数,种群个体的更新变异控制参数F 与交叉控制参数CR 的加权平均值如图2 和图3 所示.经过IDMPSADE算法的优化,LSTM 的第一层隐藏层神经元数为40,第二层隐藏层神经元数为30,学习率为0.01,训练迭代次数为10,训练批次为72.
图3 LSTM 五种参数的变异控制参数F 加权平均值
如图3 与图4 所示,变异控制参数F 的加权平均值在0.5 上下浮动,范围在0.4 到0.65 之间;交叉控制参数CR 的加权平均值在0.5 上下浮动,范围在0.4 到0.6 之间,有效地平衡了算法的收敛精度与收敛速度.
(2)服务量预测精确度分析
基于统一测试数据集,利用经过IDMPSADE算法优化后的LSTM 神经网络对在线客服系统的服务量进行预测,预测出代表336 个小时内服务量的336 个样本点数与原实际数据的对比如图4 所示.算法的预测性能指标选取均方误差MSE 和平均绝对误差MAE,如式(18)和式(19)所示.
其中,yi表示真实值,表示预测值,n 表示测试样本数,MSE 与MAE 的值越小,表示误差越小,预测性能越好.
图4 交叉控制参数CR 加权平均值
采用传统的BP 神经网络、RBF 神经网络、SARIMA-SVM 模型预测效果与IDMPADE-LSTM 模型预测效果对比如表3 所示.
表3 不同模型预测结果对比
由图5 可以看出,在线客服系统的服务量具备一定的周期性,预测结果相较实际数据的极值范围更小,能够较好地预测出服务量的总体变化趋势,有助于客服中心对客服提前排班以应对服务量变化情况.
图5 IDMPSADE-LSTM 服务量预测结果
由表3 可以看出,IDMPSADE-LSTM 混合预测模型的预测误差小于BP 神经网络、RBF 神经网络以及SARIMA-SVM 混合预测模型,说明该服务量预测模型具有一定优越性,预测精度有所提升.
5 总结
系统服务量预测的准确性、有效性、实时性是公司为客服人员安排技能培训、进行工作规划的重要依据,应用面向在线客服系统的服务量预测算法可为人力资源调度优化等工作提供科学的依据.
本文在对系统服务量数据调查分析的基础上,提出了一种IDMPSADE-LSTM 服务量预测模型,与BP神经网络、RBF 神经网络以及SARIMA-SVM 混合预测模型相比,本文提出的预测模型将关键影响因素与服务量自身的时间序列特征进行了有效的结合,并且预测的精确度更高.此外,本文提出的IDMPSADELSTM 预测模型解决了神经网络部分超参数的赋值随机性问题,该模型除了可应用于系统服务量预测,对于交通、金融等领域的相关数据预测也具备一定的参考价值.