基于相关性与小波神经网络的视频点击预测

移动边缘计算环境中视频热门度的预测方法

1. 引言

目前,智能设备用户在视频和电影等娱乐应用上的碎片化时间占比超过70%。视频内容提供商(例如Netflix)希望了解其所有视频(尤其是新视频)的未来视频观看次数,以便为消费者提供更好的体验。在基于5G的移动边缘计算时代,视频资源的爆炸式增长要求将多个副本部署到网络边缘以提升性能[1–3]。该分布式模型给视频服务提供商带来了诸多问题,例如如何保持存储效率并提高存储能效[4, 5]。解决这些问题的关键在于有效管理数据副本和数据节点[6–8]。当前主流的云存储平台通常采用静态存储机制,即在数据放置前预先设定副本数量,例如谷歌文件系统[9], Hadoop分布式文件系统(HDFS)[10], 和Amazon Dynamo [11]。副本静态放置易于实现,但可能导致访问不均衡。例如,研究发现Yahoo的Hadoop集群中90.26%的数据在创建后两天内被访问,89.61%的数据从最后一次访问到删除不超过10天,40%的数据存在超过20天的休眠期(未被访问)[12]。

当前研究[13]表明,视频副本的迁移与重构是提高存储效率的有效手段,而视频点击量的预测是进行视频副本迁移的前提。现有的数据预测与推荐方法[14, 15]较多,但这些方法未考虑每个视频副本的细粒度属性,无法为视频副本的迁移与重构提供所需信息。此外,视频占用较高的存储空间且具有更丰富的属性,视频点击量的变化趋势受多种因素影响,难以准确预测。基于上述情况结合相关性分析和小波神经网络(WNN),本文通过分析待预测视频与已上线视频之间的相关性,并选取相似视频作为影响因素,提出了一种新的视频点击量预测方法。

2. 相关工作

2.1. 视频副本特征分析

视频副本涵盖多种属性,如新闻、教学和观看,是存储在云上的数据副本中最具代表性的一种。现有的点击量预测较为粗略(见图1(a)),未考虑每个副本的细粒度点击量,无法为视频副本的迁移与重构提供信息。因此,提供视频副本点击量的预测方法成为一个亟待解决的问题。

)
)

图1(a)展示了从2014年3月到2015年2月的长时间尺度(以月为单位)趋势。前几个月平稳上升的原因是“变形金刚4”于2014年6月上映,带动了此前系列甚至相关科幻系列的热度。从图1(b)中的短时间尺度(以周为单位)对应图中可以看出,视频点击量具有一定的周期性和自相关性。这意味着视频点击量受到其他相似视频点击量的影响。因此,预测视频点击量应遵循以下一般方向:时间序列数据的短期学习以及可用参数数量较少。

2.2. 现有的预测方法

随着对新型娱乐需求的增加,近年来各种用于保证服务质量(QoS)的预测方法引起了越来越多的关注[16, 17]。Zhang 等[18]提出了一种基于邻域感知矩阵分解的覆盖式Web服务质量预测方法。Qi 等[15]提出了一种基于经典局部敏感哈希技术的新型隐私感知数据融合与预测方法,适用于智慧城市工业环境。Zhang 等[19]提出了一个面向边缘计算网络的隐私保护分布式边缘QoS预测模型。然而,这些工作是从宏观角度出发的,无法应用于需要微观视角的视频副本点击量预测。

自回归积分滑动平均模型(ARIMA)基于时间序列的自相关性,其特点是序列具有宽平稳性。此外,如果个别数据的取值在序列均值上下不剧烈波动,ARIMA 可通过差分方式对原始数据进行平滑处理。这样,即使数据存在一定波动,也能通过平滑处理提高预测精度。因此,ARIMA 适用于具有平坦趋势和线性宽平稳过程特征的数据预测。它常用于网络流量预测 [20, 21],而每个数据副本的流量具有更细粒度的特征。

灰色预测是一种在数据不完整或不确定情况下的知识获取方法[22]。它通过对系统各因素变化差异程度的分析,处理原始数据,并基于少量信息建立灰色微分预测模型来预测未来数据。灰色预测模型适用于视频副本刚进入市场、原始数据较少的情况。这两种方法看似可行,但由于视频副本受到多种因素波动的影响,我们从相关因素出发对这一视频进行分析。

本文考虑到每个视频的点击量与其相似视频密切相关这一事实。这是通过分析视频观看模式来源的主成分实现的。例如,已有研究提出了一种系统化的质量相关性模型,描述了服务之间三种不同类型的质量相关性 [23]。从逻辑上讲,在网上观看某个视频后,通常会有一些相关的视频推荐,而这些关联视频的推荐及其影响是点播视频的主成分。通过对Storm网站进行调查和分析发现,在一个视频被观看后,Storm推荐的前三个相似视频的平均观看率分别为47%、30%和25%。该推荐结果的平均值来自从Storm网站随机抽样的200个视频。

这意味着当观众总数保持稳定时,可以根据其相似视频当前的观众数量,推断出某个视频未来的潜在观众数量。该过程存在延迟,智能分析至关重要。本文应用小波神经网络来预测未来视频点击量。基于小波的神经网络将隐藏节点的激活函数替换为小波函数。近年来,已有若干研究将小波神经网络模型应用于网络流量预测[24],但视频副本的点击量预测需要更微观的视角。解决该问题的关键是根据待预测视频,反向推导出用作预测相关参数的视频。

2.3. 关联视频的选择

本文中关联视频的选择分为两步:第一步是选择与待预测视频相似的12个视频;第二步进一步降低参数维度,从视频相似度中选取相关性最高的四个。

2.3.1. 相似视频选择

相似视频选择是通过建立向量空间模型(VSM),在同一类型的视频中计算并选择视频的水平、观众的学位、视频类型、观众年龄、制作者影响力等,然后将其细化并量化为0到100之间的分数,如表1所示。

设m1和m2为待比较的视频对象,f1, f2, ......,fn为每个对象的属性。相似度在m1和m2之间的相似度可以通过视频对象的属性来计算。对应于m1和m2的视频属性fi的值分别表示为ai和bi。通过使用支持向量机(SVM),m1和m2之间的相似度表示为Sim(m1, m2),其计算方法如下:

$$
\text{Sim}(m1, m2) = \frac{m1 \cdot m2}{|m1| \times |m2|} = \frac{\sum_{i} a_i \times b_i}{\sqrt{\sum_{i} a_i^2 \times \sum_{i} b_i^2}}
$$

根据方程(1),我们可以计算出最相似的12个视频,以进一步降低维度,并从这12个视频中选择最相关的视频作为预测参数。

2.3.2. 关联度分析

表2显示了6个样本视频在10天内的点击量,其中x1的时间范围为2014.10.26至2014.11.24,而x2, …, x5的数据覆盖的时间跨度为2014.10.20到2014.11.18。x1 是待预测的视频,可通过上周其他视频的点击量获得。

关联度的计算可以分为以下几个步骤。

步骤1 :对表2中的数据进行标准化,其中x、y分别表示纵向数据和横向数据。第j个视频的样本均值为$\bar{Y} j = \frac{1}{m}\sum {i=1}^{m} Y_{ij}$(j = 1, 2, …, n);通过该值可计算第j个视频的样本方差:$S_j^2 = \frac{1}{m - 1}\sum_{i=1}^{m}(Y_{ij} - \bar{Y} j)^2$(j = 1, 2, …, n);标准化形式为$X {ij} = \frac{Y_{ij} - \bar{Y}}{S_j}$。经过标准化计算后,我们得到

$$
X =
\begin{bmatrix}
X_{11} & X_{12} & \dots & X_{1n} \
X_{21} & X_{22} & \dots & X_{2n} \
\vdots & \vdots & \ddots & \vdots \
X_{m1} & X_{m2} & \dots & X_{mn}
\end{bmatrix}
$$

步骤2 :计算相关矩阵R = $(r_{ij})_{m×m}$,

$$
r_{ij} = \frac{\sum_{k=1}^{n} x_{ki} x_{kj}}{n - 1}, \quad (i, j = 1, 2, \dots)
$$

然后我们可以通过得到的相关矩阵分析视频之间的相关性,如表3所示,其中x1是需要预测的视频;x2, x3, x4, x5, x6 是需要分析变化程度的相似视频。

从12个相似视频中,选择与用作预测视频的四个视频最接近的相关矩阵和x1;上述矩阵是用于与视频x1比较的第一批数据;显然,x4、x5和x1与点击播放具有高度相关性。据此,选择视频x3–x5,并利用当前点击量来预测视频x1的点击量。

生产公司 演员等级 观众高中 ≤ 学士学位 ≥ 硕士 年龄 20≤ 20–30 30–50 ≥50 视频评分
m1 80 90 30 60
10 32 56 6
6 72
m2 80 90 20 76
14 16 70 9
5 80
m3 70 80 10 70
20 17 65 12
6 83

表1:视频属性评分标准

x1 x2 x3 x4 x5 x6
48101 26773 34708 849620 228982 5319
49052 27698 46100 824476 231698 4018
49702 27389 60668 822595 253113 4282
52146 26822 61768 743477 256318 4341
29694 86084 58727 236572 104088 3480

表2:视频点击量的比较

x1 x2 x3 x4 x5 x6
x1 1.0000 -0.4893 0.3744 0.8808 0.9149 0.3654
x2 -0.4893 1.0000 -0.0046 -0.3993 -0.4509 -0.1175
x3 0.3744 -0.0046 1.0000 0.0990 0.3364 0.3366
x4 0.8808 -0.3993 0.0990 1.0000 0.9322 0.0689
x5 0.9149 -0.4509 0.3364 0.9322 1.0000 0.0785
x6 0.3654 -0.1175 0.3366 0.0689 0.0785 1.0000

表3:视频相关矩阵

2.4. 小波神经网络

神经网络常用于预测和分析非线性时间序列。理论上,神经网络的预测精度可以达到任意高的程度。但在实际应用中,可能会遇到许多困难,例如神经网络结构的界定、训练和学习过程过慢,以及在优化过程中陷入局部次优。小波神经网络(WNN)结合了小波分析和神经网络的特点,它用小波神经元替代神经网络中的神经元,用小波函数(作为激活函数)替代神经网络中的Sigmoid,并通过仿射变换建立小波变换与网络系数之间的关系。小波神经网络具有以下特点:

(1) 由于具有强大的学习能力和优异的函数逼近能力,因此预测精度高。
(2) 由于网络的平移因子和缩放因子是预先确定的,因此可以避免局部最优。
(3) 由于小波函数作为激活函数易于实现,因此学习和训练速度快。

小波神经网络(WNN)包含三层:输入层、隐藏层和输出层,如图2所示。输出层采用线性输出。输入层的神经元为(x1, x2,…,xm),隐藏层有K个神经元,输出层有N个神经元。本例中,由于关联视频的数量为4,因此有4个相关参数作为预测的基础,输入神经元选择为4。在每日访问量数据集中,发现访问记录以天为单位,访问周期为7天。因此,隐藏层中间使用的神经元数量设为7,输出层也为7。这就是本例采用4‐7‐7结构神经网络的原因。hk(x)为小波基函数,取代了之前使用的激活函数Sigmoid。

设$w_{ij}$表示从第$p - 1$层到第$p$层神经元的权重,$a_r^{(p)}$表示第$p$层中神经元$i$的第$r$个输入,$\varphi_p$表示第$p$层的传递函数,$b_r^{(p)}$表示该层对应的输出。

$$
a_r^{(p)} = \sum_{i} w_{ij}^{(p)} b_r^{(p-1)}, \tag{3}
$$

$$
b_r^{(p)} = \varphi_p(a_r^{(m)}) \tag{4}
$$

由于该案例设计为三层网络,$b_r^{(1)} = x_{r-j+1}$,$b_r^{(3)} = \hat{x}_{r+1}$ 是隐藏层中的传递函数。此案例称为“Morlet小波”,其表达式为

$$
\varphi(\mu) = \cos(1.75\mu)e^{-\mu^2/2}. \tag{5}
$$

将(5)代入(3)和(4),得到

$$
a_r^{(2)} = \sum_{i=1}^{m} w_{ij}^{(2)} x_{r-j+1}, \tag{6}
$$

$$
b_r^{(2)} = \varphi_2\left(\frac{a_r^{(2)} - b_j}{a_j}\right). \tag{7}
$$

根据(6)和(7),我们可以得出时间序列上的视频预测是

$$
x_{r+1} = \sum_{j=1}^{K} b_r^{(2)} w_j^{(3)} = \sum_{j=1}^{K} \varphi_2\left(\frac{a_r^{(2)} - b_j}{a_j}\right). \tag{8}
$$

给定组的输入和输出样本,误差函数可以表示为

$$
E = \sum_{P=1}^{P} E_P = \frac{1}{2P} \sum_{P=1}^{P} \sum_{n=1}^{N} (d_n^P - y_n^P)^2, \tag{9}
$$

其中$d_n^P$ 是第$n$个节点的期望输出,$y_n^P$ 是第$n$个节点的实际输出。$w_k$、$b_k$ 和 $a_k$ 会不断调整以最小化误差。当误差小于给定值时,程序将结束,并可计算出适当的预测值。

对于具有相似且稳定属性的视频序列,所提出的方法可以实现合理的预测结果。然而,对于在系列中比其他视频声誉较差或较好的某些视频,所提出的方法可能会产生有偏差的预测结果。这是因为潜在的不平衡声誉影响了最终结果。

2.5. 性能评估

对于实际视频副本而言,如果预测粒度太低,例如一天,则意义不大,因为对于视频副本来说以24小时时间单位进行频繁的评估迁移。如果预测粒度太长,例如以月为单位,则无法及时捕捉视频副本的周趋势。因此,本实验预计持续数周,数据收集以天为单位,预计收集84天的数据。待测试目标的时间范围为2014.10.26至2015.1.17,作为影响因素的视频数据时间范围为2014.10.20至2015.1.11,双方的前56天数据用作训练数据,最后28天数据用作测试数据。实验在配备10GB内存和2.1 GHz Intel Core i3处理器的64位 Windows 7专业版系统上运行,使用MATLAB R2014a进行仿真和数值分析。神经网络设计为4‐7‐7结构,输出为7节点数据。
从图3可以看出,ARIMA通过差分算法在预测前对时间序列数据的拟合效果较好,但在把握数据变化趋势方面不够准确。图4显示,灰色预测能够预测数据的总体趋势,但误差范围较大。在变化趋势和预测精度方面,所提出的方法表现出最优结果,如图5所示。

如果在一周后进行预测,它将成为训练集,然后用于预测下一周的情况。每次预测的时间粒度不同,分别为7天、14天和28天。从表4可以看出,如果预测的时间粒度为1周或4周,所提出的方法准确率最高,远高于ARIMA和灰色方法。如果预测的时间粒度为2周,则三种预测方法的准确率相当。在所提出的方法中,相似视频的点击历史被用作影响因素。因此可以推断,基于相关性分析与小波神经网络相结合的预测方法比其他方法具有更好的实际效果。

将该方法应用于其他几种类型的视频时,结果与上述情况相似。所提出的方法的平均预测精度比ARIMA高10%,比灰色预测高5–7%。

从上述分析可知,每种预测方法都有其优缺点。如果视频进入某个生命周期,具有相对平坦的变化趋势和线性宽平稳过程的特征,则ARIMA具有一定优势。但如果点击量的变化趋势较为平缓,则迁移视频副本的意义不大。

3. 结论

本文提出了一种基于相关性分析和WNN相结合的视频点击量预测方法。通过建立视频指标量化体系,并分析待预测视频与已上线视频之间的相关性来实现。然后,选择相似视频作为视频点击量的影响因素。与ARIMA和灰色预测相比,所提出的方法具有更高的预测精度和更广的应用范围。

图3:ARIMA方法的预测(56–84为实际预测)

图4:灰色方法的预测(56–84为实际预测)

图5:所提出的方法的预测

7天预测 (%) 14天 (%) 28天 (%)
ARIMA 16.7 18.01 24.81
Gray 18.28 16.11 20.60
WNN 13.85 16.49 14.11

表4:不同方法误差率的比较

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值