陈春燕,张 钰,常 标,吕俊龙
1.蚌埠医学院卫生管理系,安徽蚌埠2330302.中国科学技术大学计算机科学与技术学院,合肥2300003.蚌埠学院计算机科学与技术系,安徽蚌埠233030
ISSN 1673-9418 CODEN JKYTA8
Journal of Frontiers of Computer Science and Technology 1673-9418/2016/10(03)-0425-08
基于ARMA模型的在线电视剧流行度预测*
陈春燕1,2,张钰1,2,常标2,吕俊龙3+
1.蚌埠医学院卫生管理系,安徽蚌埠233030
2.中国科学技术大学计算机科学与技术学院,合肥230000
3.蚌埠学院计算机科学与技术系,安徽蚌埠233030
ISSN 1673-9418 CODEN JKYTA8
Journal of Frontiers of Computer Science and Technology 1673-9418/2016/10(03)-0425-08
E-mail: fcst@vip.163.com
http://www.ceaj.org
Tel: +86-10-89056056
* The Natural Science Foundation of Anhui Province under Grant No. 1408085QF110 (安徽省自然科学基金); the Fundamental Research Funds for the Central Universities of China under Grant No. WK0110000042 (中央高校基本科研业务费专项资金); the University Natural Science Foundation of Anhui Province under Grant No. KJ2015B071by (安徽省高等学校自然科学研究项目); the University ExcellentYouth Talents FoundationofAnhui Provinceunder Grant No.2010SQRL126(安徽省高等学校优秀青年人才基金).
Received 2015-05,Accepted 2015-07.
CNKI网络优先出版: 2015-08-11, http://www.cnki.net/kcms/detail/11.5602.TP.20150811.1517.003.html
Key words: autoregressive moving average model; popularity prediction; online teleplays; time series; sharing parameters
摘要:在线电视剧的迅速普及和发展,引发了一个全新的研究问题,即在线电视剧流行度预测。电视剧情节演化的连续性,使相邻剧集的流行度序列具有很强的线性相关性。扩展了自回归滑动平均(autoregressive moving average,ARMA)模型。具体地,采用多集单天和多集多天两种不同的建模策略,使用电视剧之间共享参数方法进行模型参数估计。利用均方根误差(root mean squared error,RMSE)评价预测方法的准确性,在大量的真实数据集上的实验表明,上述两种策略相比于对比方法,可以使RMSE平均分别降低22.0%和32.3%。关键词:自回归滑动平均模型;流行度预测;在线电视剧;时间序列;共享参数
近年来,国内网民数量一直呈上升趋势,数量超过6亿,互联网的普及率接近50%,各种网络应用深刻改变着网民的生活。传统的电视节目在观看时间上使用户受到了很大的限制,已经不能满足老百姓的日常娱乐生活。这就促使了许多提供在线电视剧网站的迅速发展,国内也迅速涌现出了许多视频网站,如优酷、爱奇艺等。使用网络在线观看电视连续剧,已经成为很多互联网用户的主要娱乐生活。
目前国内外的研究多集中在用户生成内容(user generated content,UGC)的流行度的预测,文献[1]针对论坛讨论帖的流行度预测问题,提出了融合多个动态因素的讨论帖流行度预测。文献[2]也是讨论在线内容的流行度预测。文献[3]提出的方法能够精确地预测在视频流行度问题上各种未知内容的影响。
然而在线电视剧有它固有的特点,网站提供电视连续剧通常不会一次性更新所有剧集,而是在固定时间(每天或每周)更新一集或多集。而电视剧更新时间不同也可能会吸引不同的观众,比如在周末或节假日更新可能会吸引更多的上班族和学生来观看。这就引发了一个非常实际的问题,如果能够预测在线电视剧的流行度,可以有更广阔的应用前景,如给用户推荐电视剧[4]、广告投放[5-6]等。
若根据昨天的播放量或前若干天播放量的平均值来进行预测,则这种方法忽略了电视剧剧情发展的特点。电视剧的情节演化是在相邻集之间,并且有强烈的顺序依赖性,这是典型的时间序列[7-8]预测问题。相邻剧集的流行度有强烈的线性相关性,本文充分考虑在线电视剧时间序列的特点和相邻集之间的线性相关性,使用自回归滑动平均(autoregressive moving average, ARMA)模型预测在线电视剧的流行度。在真实数据集上的实验表明,此方法预测在线电视剧的流行度是非常有效的。
网站通常在固定的时间更新剧集,每天或每周更新一集或多集,本文中约定同一时间更新的剧集当作一集来处理。观众可以在剧集更新后的任意时间观看,更新后每一集的观看量就组成了电视连续剧的流行度记录[9]。
下面介绍本文使用的符号:
每一部在线电视剧T包括n集,记作T={e1, e1, …,ei,…, en},其中第ei集在时间戳ti释放,相邻两集的更新时间间隔记为∆t=ti-ti-1。
取相邻剧集的更新时间间隔为一个单位时间,剧集更新后每个单位时间内的观看量构成了每一集的流行度。因此,ei集的流行度可以用如下时间序列[10]描述,即φi={vi1,vi2},其中vij表示ei在更新后的第j个单位时间间隔的流行度。我国电视剧单位时间间隔通常为一天,如v21表示第2集在更新后第一天的观看量。用表1说明上述问题。
从表1可以看出,不同的剧集是在不同的时间戳被更新的,那么不同的剧集ei的流行度记录时间序列φi的长度是不同的。电视剧T的流行度记录由每一集的流行度构成[11],记为ϕn={φ1,φ2,φi},其中i≤n。
Table 1 Popularity records of online teleplay表1 一部在线电视剧的流行度记录
综合以上所述,现给出电视剧流行度预测问题如下:给定在线电视剧T,已经发布了前i集,它的流行度记为ϕi={φ1,φ2,φi},预测目标是下一集(即第i+1集)在发布后的流行度记录φi+1,φi+1= {vi+1,1,vi+1,2}。
本文的主要工作是根据历史剧集的流行度记录预测即将发布剧集的流行度。然而电视剧的情节在相邻剧集间有密切的相关性,有强烈的顺序特征,符合时间序列的特征,这种特征可以用自回归模型很好地表示[12]。因此本文利用相邻剧集流行度序列的相关性,使用自回归滑动平均模型ARMA预测在线电视剧的流行度。
ARMA流行度预测模型考虑了相邻剧集间流行度序列的依赖性,利用历史电视剧流行度数据训练模型,训练过程如算法1所示。算法首先对历史电视剧流行度数据进行预处理,过滤流行度数据、集数太少、异常等的电视剧;然后按照“多集单天”或“多集多天”的建模策略,提取相应的特征,构成原始数据矩阵,并使用min-max方法标准化每行数据;最后根据第4章介绍的参数估计方法训练ARMA模型,得到模型参数。使用得到的模型便可预测流行度。
算法1 ARMA流行度预测模型训练算法
输入:历史电视剧流行度数据。
输出:ARMA模型参数。
(1)历史电视剧流行度数据预处理;
(2)根据第3.1或3.2节中建模策略提取特征;
(3)特征数据标准化;
(4)根据第4章参数估计方法训练ARMA模型。
3.1多集单天ARMA模型
本文使用ARMA模型[13],在剧集发布后的第j个单位时间间隔内,利用已经更新过的剧集的流行度去预测新剧集的流行度。本文用表2来进一步说明,使用相同颜色表示的流行度去预测新释放剧集的流行度,也就是用(v1j, v2j, vi-1, j)去预测vij的流行度。具体地说,如预测v41,即第4集在发布后的第1天的流行度。使用第1、2、3集在发布后第1天的流行度去预测,即使用v11、v21和v31来预测v41。
Table 2 Multiple episodes single day data表2 多集单天使用数据
把每一集在更新后第j个单位时间间隔的流行度vij表示为先前p集在更新后第j个单位时间间隔的流行度的线性组合,即:
其中,α是自动回归系数;β是滑动平均系数。误差项εt假设是独立同分布的随机变量,服从均值为0,方差为σ2的正态分布[14],εtN(0,σ2)。
式(1)中,模型参数为w=(α0,α1,αp,1,β1, β, Z=(1,vi-1,j,vi-p,j,εi,εi-1,εi-q)。式(1)可以写成:
3.2多集多天ARMA模型
本文使用的方法是在剧集发布后的第j个单位时间间隔内,利用已更新的剧集的流行度去预测即将更新的剧集的流行度。在表2中体现为,预测新剧集的流行度只使用相同颜色标识的流行度数据。这样就导致了在新剧集更新前的一部分流行度数据被忽略了,而这部分数据可能会对新剧集的流行度也有较大的影响。现在举例说明,在表3中仍然以预测v41为例。第2.1节中使用的数据是第1、2、3集在发布后第1天的流行度,即v11、v21和v31。但是由于电视连续剧的剧情在相邻集之间有强烈的相关性和顺序依赖特征,对于v41而言,v11的影响可能不如v22(第2集在更新后第2天的流行度)对v41的影响效果明显,而在式(1)中恰恰把v22忽略了。其次,有些用户由于工作或学习的原因没在剧集更新后的当天观看,而是等到周末或节假日剧集已经更新过一段时间后才观看,这时可以同时观看网站连续多天的更新剧集,这部分观众或许也是这部电视剧的粉丝。
本节预测更新剧集的流行度使用的数据在表3中进行详细说明。使用被预测流行度(红色标识)左上三角区域的历史流行度数据(蓝色标识)来预测。如预测v41使用前两集在v41左上三角的流行度数据,也就是p=2时,使用v21、v22和v31进行计算。如果令p=3,此时使用前三集在v41左上三角的流行度数据,那就是使用6个数据,再多加v11、v12和v13。
Table 3 Multiple episodes multi day data表3 多集多天使用数据图示
同样,预测第i集在更新后第j个单位时间的流行度vij,使用先前p集在其左上三角的流行度数据的线性组合,式(1)可以改写为:
n=1m=1
其中p, q∈[1, i-1]。把式(3)展开即为:
在式(4)中,模型参数仍然记为w,w=(α0,α11,α21, α22,α31,α32,α33,1,β11,β21,β22,β31,β32,β33)T,Z=(1, vi-1,j, vi-2,j, vi-2,j+1, vi-3,j, vi-3,j+1,vi-3,j+2,εi,εi-1,j,εi-2,j, εi-2,j+1,εi-3,j,εi-3,j+1,εi-3,j+2)
基于上述表示,式(4)可以表示为式(2)的形式,即:vij=wTZ
为了获得更好的预测结果,本文使用了共享参数方法学习模型参数。假定所有在线电视剧有共同的参数,使用共享参数方法来学习模型的参数[15]。
给定一部在线电视剧的训练集T和它的流行度记录ϕ={φ1,φ2,φs},按照经验风险最小化的策略求解参数,即多项式的系数。损失函数使用平均相对平方误差[16](mean relative squared error,mRSE),即:
其中vij是电视剧真实的流行度。使损失函数L(w)最小化,求解参数w,即:
对w求偏导数并令其为0,可以求解w,然后得到最优解w[17]。
ARMA参数估计算法[18]如下:
(1)估计高阶AR;
(2)估计没有被观察到的噪声εt;
(3)回归vij到vi-1,j, vi-2,j,…,vi-p,j,εi-1,j,εi-2,j,…, εi-q,j;
(4)再次回归提高εt的估计。
5.1实验数据
实验数据是从优酷网(http://www.youku.com/)爬取的从2012-05-01至2014-09-08上映的我国电视剧播放量数据,网站提供电视剧上映后每集每天的播放量信息,电视剧会每天更新至少一集。先从电视剧列表页(http://www.youku.com/v_olist/c_97.html)获取待爬取的电视剧IDs,然后根据IDs构造电视剧播放信息所对应的页面URL,即优酷指数(http:// index.youku.com/),例如电视剧《古剑奇谭》在优酷内的ID是z9ffa9418853611e2a19e,所对应的优酷指数页面URL是http://index.youku.com/vr_show/showid_ z9ffa9418853611e2a19e.html。过滤掉集数比较少的电视剧后,实验数据最终包括211部电视剧,而且电视剧集数分布如图1所示。
从图1中可以看出,大部分的电视剧在25集到44集之间,并且电视剧通常是每天发布一集或多集,换句话说,电视剧的更新频率是一天。因此在实验中,设置电视剧的预测单位时间为一天。
实验数据所用211部电视剧的观看量的统计结果分别展示在图2和图3中。图2展示了211部电视剧每集在更新后一周内的平均观看量。从图2中可以看出,不同电视剧的流行趋势有很大的差别,只有少数电视剧的观看量非常多。因此预测在线电视剧的流行度是很有必要的。
图3展示了电视剧每集在上映后15天内的平均观看量。可以看出大多数观众选择在上映后第一天观看,从第2天开始观看量骤减,第5天后观看量的降幅趋于平稳。因此在实验中,预测新剧集在上映后7天的观看量。
Fig.2 Views of each episode in the first week图2 每集首周平均播放量
Fig.3 Average views of every day图3 单天平均播放量
5.2对比方法和评价指标
为了评价ARMA模型在预测电视剧流行度时的性能,在实验中与文献[9]中的朴素自回归模型(Naive Autoregressive Model,NAR)进行比较。
把ARMA模型分为多集单天和多集多天两种策略,分别记为ARMA-s和ARMA-m。利用均方根误差(root mean square error,RMSE)[19]去评价流行度预测的效果,其定义为:
其中,Pi为预测值;Ri为真实值;N为测试集大小。RMSE越小表明流行度预测效果越好。
5.3实验结果
为了降低模型训练的不确定性,利用五折交叉验证来评价模型的性能。通过实验证明使用被预测剧集前4集的流行度数据进行预测,能够达到较好的预测效果。因此在本文实验中取p=4。当p=4,q取不同值时,ARMA-s和ARMA-m方法的均方根误差RMSE如图4所示。
从图4中可以看出,取不同q值时,ARMA-s方法均方根误差基本稳定;当q<6时ARMA-m方法的均方根误差比较大,当q≥6时均方根误差趋于稳定。总之,当p=4,q取6时可以达到比较好的预测效果,使用更多的信息(q>6)并不意味着更好的效果。
Fig.4 RMSE graph with different q图4 不同q时RMSE曲线图
对本文方法与文献[9]中的NAR方法进行比较。NAR方法使用先前3集的观看量可以达到较好的预测效果,ARMA使用先前4集的流行度数据可以达到较好的预测效果。预测新剧集在播放后7天的播放量,均方根误差详细的比较结果展示在图5中。
Fig.5 RMSE graph with different algorithms图5 不同算法的RMSE图
从图5中可以看出,ARMA-s和ARMA-m比NAR预测效果要好,有较低的RMSE,可以使RMSE平均分别降低22.0%和32.3%。特别是在第4天时,ARMA-s方法的均方根误差比NAR方法降低了29.8%,ARMA-m方法的均方根误差比NAR方法降低了48.3%。总体来说,ARMA模型的多集单天和多集多天策略的预测效果要比NAR方法好。从图5中也可以看出,预测第一天时ARMA-s方法的RMSE要比ARMA-m方法低,而从第二天开始ARMA-m方法的效果要比ARMA-s好。这是因为第一天的播放规律不明显,ARMA-m使用多集多天的信息太多,所以效果不好;在第二天以后播放量变化规律明显,所以使用多集多天的效果更好。新剧集随着发布时间的推移,播放量的变化规律逐渐变得明显。因此随着时间的推移,RMSE也逐渐降低,并且在第4天后趋于稳定。
为了更好地说明模型预测流行度的效果,图6给出了使用ARMA-m模型(其中p=4,q=6)预测电视剧“产科男医生”每次更新后第一天播放量的示例。此电视剧周一到周五每次更新3集,周六至周日更新两集,把每次更新的剧集的播放量平均值作为此次更新的播放量。从图6中可以看出,ARMA-m模型可以准确地预测每次更新剧集第一天的平均播放量,验证了方法的有效性。
Fig.6 ARMA-m predciting example图6 ARMA-m预测示例
在线电视剧的流行度相邻集之间有强烈的线性相关性,本文采用多集单天和多集多天两种不同的建模策略扩展了ARMA模型,通过已更新剧集的流行度预测即将更新的新剧集的流行度。与传统方法相比,预测结果更具有准确性和参考价值。在真实数据集上的实验结果也表明,实际预测效果非常好,精度较高,与电视剧的实际观看量非常接近。总之,使用ARMA模型预测在线电视剧的流行度,实验表明此方法是非常有效的。未来可以探索融入其他数据,如评论、搜索量等,进一步提高预测精度。
References:
[1] Kong Qingchao, Mao Wenji. Predicting popularity of forum threads based on dynamic evolution[J]. Journal of Software, 2014, 25(12): 2767-2776.
[2] Szabo G, Huberman B A. Predicting the popularity of online content[J]. Communication of the ACM, 2010, 53(8): 80-88.
[3] Borghol Y, Ardon S, Carlsson N, et al. The untold story of the clones: content-agnostic factors that impact YouTuBe video popularity[C]//Proceedings of the 18th ACM SIGKDD International Conference on Knowledge Discovery in Database, Beijing, China, Aug 12-16, 2012. New York, USA: ACM, 2012: 1186-1194.
[4] Yin Peifeng, Luo Ping, Wang Min, et al. A straw shows which way the wind blows: ranking potentially popular items from early votes[C]//Proceedings of the 5th ACM International Conference on Web Search and Data Mining, Seattle, USA, Feb 8-12, 2012. New York, USA:ACM, 2012: 623-632.
[5] Himabindu L, Jitendra A. Attention prediction on social media brand pages[C]//Proceedings of the 20th ACM International Conference on Information and Knowledge Management, Glasgow, England, Oct 24-28, 2011. New York, USA: ACM, 2011: 2157-2160.
[6] Ahmed M, Spagna S, Huici F. A peek into the future: predicting the evolution of popularity in user generated content [C]//Proceedings of the 6th ACM International Conference on Web Search and Data Mining, Rome, Italy, Feb 4- 8, 2013. New York, USA:ACM, 2013: 607-616.
[7] Han J W, Kamber M. Data mining: concepts and techniques [M]. Fan Ming, Meng Xiaofeng, translated. 2nd ed. Beijing: China Machine Press, 2007: 306-345.
[8] Yu Yufeng, Zhu Yuelong, Wan Dingsheng, et al. Time series outlier detection based on sliding windows prediction[J]. Journal of Computer Applications, 2014, 34(8): 2217-2220.
[9] Chang Biao, Zhu Hengshu, Ge Yong, et al. Predicting the popularity of online serials with autoregressive models[C]// Proceedings of the 2014 International Conference on Information and Knowledge Management, Shanghai, China, Nov 3-7, 2014. New York, USA:ACM, 2014: 1339-1348.
[10] Zhang Dengyi, Ouyang Chufei, Wu Wenli. Cluster-based hidden Markov model in time series multi-step prediction[J]. Chinese Journal Electronics, 2014, 42(12): 2359-2364.
[11] Figueiredo F, Almeida J M, Benevenuto F, et al. Does content determine information popularity in social media?[C]// Proceedings of the 2014 ACM Conference on Human Factors in Computing Systems, Toronto, Canada, Apr 26-27, 2014. New York, USA:ACM, 2014: 979-982.
[12] Lütkepohl H. New introduction to multiple time series analysis[M]. New York: Springer Press, 2007: 447-491.
[13] Autoregressive-moving-average model[EB/OL].[2014-12-20]. http://en.wikipedia.org/wiki/Autoregressive%E2%80%93 moving-average_model.
[14] Barnard R W. Trindade AA, Wickramasinghe R I P. Autoregressive moving average models under exponential power distributions[J]. ProbStat Forum, 2014, 7: 65-77.
[15] Merabti H, Massicotte D. FPGA based implementation of a genetic algorithm for ARMA model parameters identification[C]//Proceedings of the 2014 International Conference on Great Lakes Symposium on VLSI Systems, Houston, USA, May 21-23, 2014. New York, USA:ACM, 2014: 95-96.
[16] Pinto H, Almeida J, Gonçalves M A. Using early patterns to predict the popularity of YouTuBe videos[C]//Proceedings of the 6th ACM International Conference on Web Search and Data Mining, Rome, Italy, Feb 4-8, 2013. New York, USA:ACM, 2013: 365-374.
[17] Murphy K P. Machine learning: a probabilistic perspective [M]. Boston: MIT Press, 2012: 217-244.
[18] Hannan E J, Rissanen J. Recursive estimation of mixed autoregressive moving average order[J]. Biometrika, 1982, 69 (1): 81-94.
[19] Bishop C M. Pattern recognition and machine learning[M]. New York: Springer Press, 2006: 179-224.
附中文参考文献:
[1]孔庆超,毛文吉.基于动态演化的讨论帖流行度预测[J].软件学报, 2014, 25(12): 2767-2776.
[7] Han J W, Kamber M.数据挖掘:概念与技术[M].范明,孟小峰,译. 2版.北京:机械工业出版社, 2007: 306-345.
[8]余宇峰,朱跃龙,万定生,等.基于滑动窗口的水文时间序列异常监测[J].计算机应用, 2014, 34(8): 2217-2220.
[10]章登义,欧阳黜霏,吴文李.针对时间序列多步预测的聚类隐马尔科夫模型[J].电子学报, 2014, 42(12): 2359-2364.
CHEN Chunyan was born in 1981. She received the M.S. degree in computer applications from Jiangnan University in 2008. Now she is a lecturer at Bengbu Medical College. Her research interests include data mining and machine learning, etc.陈春燕(1981—),女,安徽蚌埠人,2008年于江南大学计算机应用专业获得硕士学位,现为蚌埠医学院讲师,主要研究领域为数据挖掘,机器学习等。
ZHANG Yu was born in 1979. She received the M.S. degree in computer applications from Hefei University of Technology. Now she is a lecturer at Bengbu Medical College. Her research interests include data mining and pattern recognition, etc.张钰(1979—),女,安徽蚌埠人,2012年于合肥工业大学计算机应用专业获得硕士学位,现为蚌埠医学院讲师,主要研究领域为数据挖掘,模式识别等。
CHANG Biao was born in 1990. He is a Ph.D. candidate at University of Science and Technology of China. His research interests include pattern recognition and machine learning, etc.常标(1990—),男,安徽阜阳人,中国科学技术大学计算机应用技术博士研究生,主要研究领域为模式识别,机器学习等。
LV Junlong was born in 1979. He received the M.S. degree in control theory and engineering from Jiangsu University in 2010. Now he is a lecturer at Bengbu College. His research interests include data mining and machine learning, etc.吕俊龙(1979—),男,安徽蚌埠人,2010年于江苏大学控制理论与控制工程专业获得硕士学位,现为蚌埠学院讲师,主要研究领域为数据挖掘,机器学习等。
Predicting Popularity of Online Teleplays with ARMAModelsƽ
CHEN Chunyan1,2, ZHANG Yu1,2, CHANG Biao2, LV Junlong3+
1. Department of Health Management, Bengbu Medical College, Bengbu,Anhui 233030, China
2. School of Computer Science and Technology, University of Science and Technology of China, Hefei 230000, China
3. Department of Computer Science and Technology, Bengbu College, Bengbu,Anhui 233030, China
+ Corresponding author: E-mail: ccyljl@126.com
CHEN Chunyan, ZHANG Yu, CHANG Biao, et al. Predicting popularity of online teleplays with ARMA models. Journal of Frontiers of Computer Science and Technology, 2016, 10(3): 425-432.
Abstract:With the rapid prevalence and development of online TV series (or teleplays), there is a novel research problem, predicting the popularity of online teleplays. The continuity of teleplay plots makes the popularity of adjacent episodes have a strong correlation. This paper extends the classical autoregressive moving average (ARMA) model. Specifically, this paper considers two modeling strategies, namely multiple episodes and single day, and multiple episodes and multiple days. Both of them use the sharing parameter method to estimate the model parameters. This paper applies the root mean squared error (RMSE) as the evaluation measure, many experiments on a real-world dataset show that the above two strategies can reduce RMSE by 22.0% and 32.3% respectively.
doi:10.3778/j.issn.1673-9418.1505053
文献标志码:A
中图分类号:TP181