马学森, 杨智捷, 储昭坤, 周天保
(1.合肥工业大学 计算机与信息学院,安徽 合肥 230601; 2.安全关键工业测控技术教育部工程研究中心,安徽 合肥 230601)
根据思科统计[1],2021年全球上传至网络的视频内容激增,每月全球网络上新增的视频需要耗费每个人超过500万年的时间才能观看完。因为用户的时间和注意力是有限的,所以大多数视频几乎并没有被注意到,只有少数受欢迎的视频获得大多数人的观看。文献[2]指出,许多应用程序中使用着预测视频受欢迎程度的功能,此项功能是广告和推荐的关键一环。通过观察YouTube视频网站上很多用户的反馈行为,一部分视频在公开后的一段时间内,收到用户的正向反馈后,视频的流行度有显著增加。文献[3]指出,由于发布在线视频的形式复杂,内容多样,巨大的数据量给人们造成信息过量的困扰,研究者在视频流行度预测的研究中侧重于从海量信息中预测筛选出将来热门的信息。
目前主流的视频流行度预测模型有基于统计学和基于机器学习的预测方法。基于统计学的预测方法[4]在不同时间段,使用累计浏览量的序列间关系进行建模,未引入外部因素辅助预测,准确度仍不足。文献[5]提出一种新的算法K-ARMA,找出K个最近的样本并给予一定的权重值,根据K个样本的流行度和自回归滑动平均(auto regressive moving average,ARMA)模型相结合开展预测;该模型相比传统ARMA模型在预测准确度上有明显的提升,但是未结合用户行为数据,未设置多组特征值。文献[6]提出一种融合搜索引擎数据与社交网络数据的多元线性回归模型预测点播量排名,该模型比单独用搜索引擎数据或社交网络的预测模型预测效果更佳。
基于机器学习的流行度预测方法,文献[7]提出一种混合机器学习方法来预测未发布视频内容的流行度,该模型通过视频历史内容的信息预测新内容的受欢迎程度,但未考虑观众的反馈数据(如观众人数、评分等)。随着深度学习理论的出现与发展,长短期记忆(long short-term memory,LSTM)网络广泛运用于如风速[8]、语音处理[9]、船舶航迹[10]等领域,预测效果良好。LSTM网络在序列建模任务中有很大的优势,它具有长时记忆功能,能够单一方向提取时间序列的时间特征,其变体GRU(gate recurrent unit)因结构相似,计算简单等特点也被广泛运用于预测方面。双向长短斯记忆(bi-directional long short-term memory,BiLSTM)网络由双向LSTM组成,主要应用于文本情感分析[11]、命名实体识别等领域。文献[12]提出将神经网络和马尔可夫相组合的模型(a video popularity prediction algorithm based on a neural network and Markov combined model,Mar-BiLSTM),在使用Mar-BiLSTM模型后,精度有所提升的同时仍保持低模型复杂度。文献[13]将自回归与循环神经网络相结合,提出一种基于自回归循环神经网络(auto regressive recurrent neural network,DeepAR),主要应用于零售等领域,该算法可有效融合大量相关时间序列,产生准确的概率预测;此算法运用于视频流行度的预测还需进一步研究。
此外,更多学者将注意力机制引入时间序列预测中。文献[14]提出一种将内容特征与时序信息相融合的注意力视频流行度模型,将内容特征与时间序列分开处理后融合在一起,该模型很好地捕捉流行趋势。文献[15]研究微信文章的浏览量、点击量等用户反馈事件的出现频次,引入注意力机制作用于LSTM网络,将微信文章的变化过程进行建模用于预测流行趋势。文献[16]提出一种多变量时间模式预测的注意力机制(temporal pattern attention,TPA)模型,进行多变量时间序列预测,并有效运用于电力负荷[16]、股票指数[17]、泊位占有率[18]等方面的预测。实验表明,TPA机制能融合多特征,预测精度较传统方法更佳,但仍需进一步验证在视频流行度预测方向是否适用。
通过以上视频流行度预测方法可以得出视频流行度的预测面临如下难题:
1) 观众点击观看视频的行为具有不确定性,即观众在选择在何时点击何种视频是不确定事件,与个人所面临的环境事件与心理状态有关,这为视频流行度预测增添了不确定性。
2) 视频的流行度与视频播放网站的用户反馈具有相关性,即视频网站会优先推送更热门的视频给观众,观众会通过其他观众反馈的数据(如观看数、评分等)来决定是否观看视频。
基于以上分析,本文提出注意力与神经网络的视频流行度预测算法TPA-BiLSTM,并验证其在视频流行度预测领域的有效性。本文贡献主要包括以下3个方面。
首先,本文考虑不同用户反馈事件[15]分析视频的观看量、点赞量、转发量、收藏量等宏观事件发生的次数。
其次,本文利用时间模式注意力TPA机制,对视频流行度的复杂结构进行建模。TPA机制能够聚焦最有利于预测的特征,并研究特征之间的关系,提高预测的准确性。注意力机制可以计算每个维度输入特征的权重,当权值大时,意味着该特征更有利于预测;当权值较小时,表明该特征对视频流行度预测的贡献较小。视频流行度的数据集代表具有短期和长期记忆的周期模式。TPA-LSTM机制包括LSTM模块、卷积神经网络(convolutional neural network,CNN)模块和时间注意力模块,适用于各种数据集,甚至是具有弱周期模式的多元时间序列数据。LSTM组件可以捕获一个相对长期的模式,而CNN模块能提取变量之间的局部依赖性和时间维度下的短期模式。此外,时间注意力模块可以选择有助于预测和捕捉时间信息的变量。
最后,通过LSTM与双向CNN组建的BiLSTM网络,可保留双向时间序列的特征依赖。为使预测网络从视频观看量的时间序列中不仅提取双向时间特征,而且提取多维输入之间的变化规律,结合BiLSTM和TPA的优点,建立注意力与神经网络的视频流行度预测模型。
forwardt-w,…,t-1,favoritet-w,…,t-1}
(1)
BiLSTM是从LSTM模型结构改进的双向LSTM。LSTM模型提出门控机制,采用3种门控机制有效解决梯度爆炸问题,如图1所示。
图1 LSTM隐藏单元结构
图1中,t时刻输入的特征向量xt以及t-1时刻隐藏向量ht-1和细胞状态Ct-1,在结构内计算权值与激活函数获得信息,并输出t时刻细胞状态Ct和隐藏向量ht,具体计算过程为:
ft=σ(Wf[ht-1,xt]+bf)
(2)
it=σ(Wi[ht-1,xt]+bi)
(3)
(4)
(5)
ot=σ(Wo[ht-1,xt]+bo)
(6)
ht=ot×tanh(Ct)
(7)
BiLSTM用于上下文信息的建模,具有良好的长期信息存储能力。数据的逆传播意味着时间序列以相反顺序被传输到模型,神经元存储2个输入方向的信息,使用叠加的多层神经网络结构,完成流行度系列的深层特征挖掘,有效地提高模型的预测效果。BiLSTM的总体实现流程如图2所示。
图2 BiLSTM总体实现流程
图2中,BiLSTM以LSTM作为基础,分别通过正向传播和反向传播来提取历史数据的正向时间特征和反向时间特征,再由此时的2个隐藏单元所输出的向量相连组成该时刻输出,其中,h0、h1、ht-1、ht分别为对应的0、1、t-1、t时刻的输出向量。t-1时刻BiLSTM的计算过程为:
(8)
(9)
(10)
TPA结构在TPA-BiLSTM模型中的作用和原理如下。
(11)
对时间模式矩阵进行评分,评分函数f为:
(12)
(13)
其中:f为评分函数;ai(i=1,2,3,…,n)为注意力权重。
基于1.3节介绍的TPA结构,构建TPA-BiLSTM网络模型,设计TPA-BiLSTM模型求解视频流行度预测问题。
TPA-BiLSTM模型的视频流行度预测过程,如图3所示。
图3 TPABiLSTM算法模型的预测过程
1) 输入层。输入数据包括视频观看量、点赞量、转发量、收藏量。输出数据为视频流行度。首先对视频观看量、点赞量、转发量、收藏量的历史数据进行处理,包括清洗数据、去噪等。
2) BiLSTM层。预处理后的数据输入BiLSTM网络,BiLSTM模型从正向和反向提取时间特征ht。
3) TPA层。TPA使用BiLSTM网络的输出特征作为输入,在所有采样时刻提取单个特征状态所包含的深层信息,并聚焦有利于预测的时间模式。
通过评价指数对模型进行评价。对HC的行加权求和,得到信息向量vt为:
(14)
其中,ai为时间模式矩阵HC的第i行注意力权重。最后将vt和最后一个时刻的输出ht融合,通过线性变化,得到最后的预测输出,计算过程为:
ht′=Whht+Wvvt
(15)
(16)
实验采用kaggle网站的YouTube视频数据集,主要用于时间序列变化分析、情感分析和流行度分析等。本文选取2020年6月1日至9月31日的历史数据作为数据集,数据信息包括每日内每小时的视频观看量、点赞量、转发量、收藏量等观众反馈事件,也包含视频ID、视频播放时间、视频种类。
为了保证实验数据的完整性并提高预测模型的准确性和稳定性。首先,补充数据集内缺失的值,保证数据集的完整性;其次,去除噪声数据;最后,对数据集进行归一化,将数据进行线性变化。划分每个视频数据集,训练集的选取为整个数据集的前80%,剩余的数据集作为测试集。
选取主流的5种时序预测方法与TPA-BiLSTM模型进行对比,这些方法包括:ARMA模型、LSTM模型、GRU模型、DeepAR模型、Mar-BiLSTM模型。按照2.1节所描述处理时间序列数据,然后进行数据归一化,输入模型训练,最后对比测试集预测结果。对于ARMA模型,本文直接使用文献[5]设定的参数和公开代码进行实验。LSTM模型与GRU模型隐藏层神经元的个数为24,批处理尺寸为32,学习率为0.001,迭代次数为1 000。DeepAR模型隐藏层神经元的个数为40,批处理尺寸为32,学习率为0.001,迭代次数为1 000。对于Mar-BiLSTM模型,本文参考文献[12]内的代码与参数设定进行训练模型。经多次调整参数以训练模型后得出TPA-BiLSTM流行度预测模型的模型参数如下:迭代次数为1 000;学习率为0.001;输入特征数为4;TPA-BiLSTM模型训练选取的样本量取64;BiLSTM隐藏层神经元的个数为24,隐藏层的层数为2。
使用均方根误差(root mean square error,RMSE)ERMS和平均绝对误差(mean absolute error,MAE)EMA作为评价指标[3]。其中:ERMS能够计算得到真实值与预测值的差别;EMA能够计算得到求平均值后的预测值与真实值之间误差的绝对值。
(17)
(18)
将TPA-BiLSTM模型与对比模型的实验结果进行对比。实验测试TPA-BiLSTM模型与对比模型在不同预测步长h的预测精度[16],h分别取6、12、24、48 h时不同模型的预测性能见表1所列。
表1 不同模型在不同预测步长下的预测性能对比
由表1可知,视频流行度趋势变化具有复杂多变的特点,当前发展变化规律与历史规律不完全一致。传统的时间序列预测未考虑外部因素的影响仅强调时间序列预测,更适合在平稳时间序列内进行预测,因此当存在预测误差的缺陷并且外部因素的变化大时,会产生大的偏差。随着h逐渐增大时,预测难度增大。LSTM与GRU整体上表现优于ARMA,说明在视频流行度的预测问题上,基于神经网络的方法能够更好地拟合非线性的时间序列数据。Mar-BiLSTM模型在预测过程中兼具时间序列的前、后2个方向的依赖信息,并通过建立马尔可夫修正模型修正神经网络训练时产生的预测误差,在保持模型复杂度的同时提高了模型的预测精度,该模型相较于其他单一模型的预测表现更优。DeepAR模型融合自回归与循环神经网络,针对多重时间序列良好的表现,综合表现优于单一模型的使用。本文提出的TPA-BiLSTM模型的RMSE和MAE 2种评价指标均取得较好的实验结果。特别地,在预测未来6 h内的视频流行度时,TPA-BiLSTM模型较Mar-BiLSTM模型的RMSE降低12%,较DeepAR模型RMSE降低16%。在预测未来48 h内的视频流行度时,TPA-BiLSTM模型较LSTM模型RMSE降低5%,较DeepAR模型降低6%。从整体情况来看,TPA-BiLSTM模型随着h的增加,预测指标RMSE、MAE随着h的增大而增大。经测试TPA-BiLSTM模型的表现优于其他模型,在不同预测步长h的预测精度上均有良好的表现。
综上可得到如下结论:
1) 对比TPA-BiLSTM模型和ARMA模型的结果,发现TPA-BiLSTM模型的效果明显优于基于统计学的模型。传统基于统计学的模型在多变量时序预测场景下,未考虑变量之间的相关性,且对非线性数据无法很好地处理,TPA-BiLSTM模型的预测结果更为准确。
2) 对比TPA-BiLSTM、LSTM、GRU、DeepAR和Mar-BiLSTM模型,发现TPA-BiLSTM模型要强于现有基于神经网络方法的相关模型,模型预测在稳定性与准确性有更好地提升。TPA-BiLSTM模型相较于其他组合模型预测精度更高,误差更小。这是由于TPA-BiLSTM模型捕获多变量的时间序列模式,相比于只获取单一变量的时间序列模式的模型效果更好。
采用YouTube视频播放数据集进行消融实验,以验证TPA-BiLSTM模型各模块设计的作用。每次删去模型中一个组件,并与TPA-BiLSTM模型进行对比验证各组件的有效性。将移除组件的模型进行命名区分。即TPA-BiLSTMw/oCN模型,即不包含卷积神经网络模块的模型;TPA-BiLSTMw/oBL模型,即不包含双向隐藏层模块的模型;TPA-BiLSTMw/oAT模型,即不包含注意力机制模块的模型。3种模型的预测性能见表2所列。
表2 TPA-BiLSTM的不同结构变种在不同预测步长下的预测性能对比
从表2可以看出:各组件对视频流行度的预测都有贡献,其中贡献最大的是CNN模块,CNN模块在不同h时都起着关键作用,在h为6、12、24、48 h时,TPA-BiLSTM和TPA-BiLSTMw/oCN模型相比RMSE值分别下降19%、20%、4%、9%。贡献其次的是双向隐藏层模块与注意力机制模块,TPA-BiLSTM和TPA-BiLSTMw/oBL模型相比RMSE值也分别降低16%、11%、3%、6%,TPA-BiLSTM和TPA-BiLSTMw/oAT模型相比RMSE值下降17%、15%、4%、7%。
这意味着缺少任意一个组件都无法发挥该模型的准确与稳定性能,结合实验数据可知,本文提出的TPA-BiLSTM模型每个模块的设计都是必要且有效的。
针对视频流行度预测问题,本文提出一种基于注意力与神经网络的视频流行度预测模型,能够有效地提高流行度的预测性能。该模型从2个方向提取视频流行度数据的时间特征,为了提高流行度预测精度,在模型中将点赞量、转发量、收藏量数据特征作为视频流行度的融合特征,使模型在预测精度与泛化能力上更出色,解决现有单一神经网络模型和传统基于统计学方法难以准确预测真实视频流行度、难以融合多特征的问题。为了客观地比较模型的有效性,将真实视频流行度样本分为训练集与测试集进行实验。结果表明,本文所提模型比ARMA模型、LSTM模型、GRU模型、DeepAR模型和Mar-BiLSTM模型表现出更好的预测效果,并在消融实验中表明每个模块的作用。后续的研究可将不同类型视频的独有特征纳入考虑,设计适用于更为复杂情形的预测模型并进行运用推广。