视频流质量的监测方法、装置和服务端转让专利

申请号 : CN201710995262.X

文献号 : CN107846586B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 杜往泽雷应锋程广陈海齐

申请人 : 网易(杭州)网络有限公司

摘要 :

本发明实施例提供一种视频流质量的监测方法、装置和服务端。该方法包括:对采集到的当前时间点的视频日志数据进行处理,得到待测样本数据;利用所述当前时间点对应的质量监测模型,计算所述待测样本数据在预设空间的第一统计量;判断所述第一统计量是否大于所述质量监测模型在所述预设空间对应的第二统计量;若是,则确定所述视频流在当前时间点处于异常状态。本发明实施例的方法,大大提高了视频流质量的监测的敏感度和准确度。

权利要求 :

1.一种视频流质量的监测方法,其特征在于,包括:

对采集到的当前时间点的视频日志数据进行处理,得到待测样本数据,所述视频日志数据包含以下至少之一:启动时的启动日志数据、定时发送的状态日志数据、异常日志数据;

利用所述当前时间点对应的质量监测模型,计算所述待测样本数据在预设空间的第一统计量;所述预设空间为对所述视频流进行主成分分析时相关的特征空间;

所述预设空间包括:主元空间、残差空间中的至少一个;

2

所述第一统计量为待测样本数据在主元空间的统计量T ,或者,所述第一统计量为待测样本数据在残差空间的统计量Q;

当所述第一统计量为待测样本数据在主元空间的统计量T2时,第二统计量为当前时间点的质量监测模型对应至主元空间的统计量 当所述第一统计量为待测样本数据在残差空间的统计量Q时,所述第二统计量为当前时间点的即质量监测模型对应至残差空间的统计量Qα;

判断所述第一统计量是否大于所述质量监测模型在所述预设空间对应的第二统计量;

若是,则确定所述视频流在当前时间点处于异常状态。

2.根据权利要求1所述的方法,其特征在于,所述对采集到的当前时间点的视频日志数据进行处理,得到待测样本数据,具体包括:对所述当前时间点的视频日志数据按照预设聚合类别进行聚合,得到每个聚合类别对应的第一聚合数据;其中,一个第一聚合数据包括至少一个数据向量维度的数据,一个第一聚合数据的数据向量维度的数目等于所述聚合类别下聚合参数的值的个数,一个聚合类别包括至少一个聚合参数的值;

计算每个聚合类别对应的第一聚合数据与观看视频的总用户数之间的比值,得到每个聚合类别对应的第二聚合数据;其中,一个第二聚合数据包括至少一个数据向量维度的数据,一个第二聚合数据的数据向量维度的数目等于所述聚合类别下聚合参数的值的个数;

将所有聚合类别对应的第二聚合数据在数据向量维度上进行合并,得到所述当前时间点对应的第三聚合数据,并根据所述当前时间点对应的第三聚合数据,确定所述待测样本数据。

3.根据权利要求2所述的方法,其特征在于,所述根据所述当前时间点对应的第三聚合数据,确定所述待测样本数据,具体包括:获取位于所述当前时间点之前的M个时间点的第三聚合数据,并将所述当前时间点对应的第三聚合数据与所述M个时间点的第三聚合数据在数据向量维度上进行合并,得到所述待测样本数据;

其中,所述待测样本数据的数据向量维度的个数等于所述M个时间点的第三聚合数据的数据向量维度和所述当前时间点对应的第三聚合数据的数据向量维度的个数之和。

4.根据权利要求3所述的方法,其特征在于,所述质量监测模型为通过对模型数据执行主成分分析得到的所述当前时间点的负载矩阵P,所述利用所述当前时间点对应的质量监测模型,计算所述待测样本数据在预设空间的第一统计量,具体包括:根据公式: 得到所述待测样本数据在所述主元空间的统计量T2;其

中,所述xnew为所述待测样本数据,所述Λ为对角矩阵。

5.根据权利要求4所述的方法,其特征在于,所述判断所述第一统计量是否大于所述质量监测模型在所述预设空间的对应第二统计量,具体包括:判断所述待测样本数据在所述主元空间的统计量T2是否大于所述当前时间点的负载矩阵P对应至所述主元空间的统计量其中, 所述n为所述模型训练数据中数据向量维度的数

目,所述a为利用主成分分析从所述n中所选取的主元个数,Fα(a,n-a)是对应于检验水平为α、所述模型训练数据的样本数为N的F分布临界值,所述N和n均为大于0的整数,所述α大于

0。

6.根据权利要求3所述的方法,其特征在于,所述质量监测模型为通过对模型训练数据执行主成分分析得到的所述当前时间点的负载矩阵P,所述利用所述当前时间点对应的质量监测模型,计算所述待测样本数据在预设空间的第一统计量,具体包括:根据公式:Q=rTr得到所述待测样本数据在所述残差空间的统计量Q;其中,r=(I-PPT)xnew,所述I为单位矩阵。

7.根据权利要求6所述的方法,其特征在于,所述判断所述第一统计量是否大于所述质量监测模型在所述预设空间对应的第二统计量,具体包括:判断所述待测样本数据在所述残差空间的统计量Q是否大于所述当前时间点的负载矩阵P对应至所述残差空间的统计量Qα;其中,所述cα是与(1-α)分

位点对应的标准差,α为检验水平,σ为所述待测样本数据的协方差矩阵的特征值。

8.根据权利要求2-7任一项所述的方法,其特征在于,所述对采集到的当前时间点的视频日志数据进行处理,得到待测样本数据之前,所述方法还包括:根据客户端上报的视频日志信息,获取每个时间点对应的质量监测模型;其中,所述视频日志信息包括与所述视频播放相关的信息。

9.根据权利要求8所述的方法,其特征在于,所述根据客户端上报的视频日志信息,获取每个时间点对应的质量监测模型,具体包括:针对每个时间点,对所述客户端上报的视频日志信息按照预设聚合类别进行聚合,得到每个聚合类别对应的第四聚合数据;

计算所述时间点下每个聚合类别对应的第四聚合数据与观看视频的总用户数之间的比值,得到每个聚合类别对应的第五聚合数据,并将所述时间点下的所有聚合类别对应的第五聚合数据在数据向量维度上进行合并,得到所述时间点对应的第六聚合数据;其中,所述第六聚合数据的数据向量维度的个数等于所述时间点对应的所有第五聚合数据的数据向量维度的个数之和;

将所述时间点对应的第六聚合数据进行扩维操作,得到所述时间点对应的模型数据;

其中,所述扩维操作用于从数据向量维度和时间向量维度分别增加所述第六聚合数据的数据内容;

基于所述时间点对应的模型数据,建立所述时间点对应的质量监测模型。

10.根据权利要求9所述的方法,其特征在于,所述将所述时间点对应的第六聚合数据进行扩维操作,得到所述时间点对应的模型数据,具体包括:获取位于所述时间点之前的C个时间点的第六聚合数据,并将所述时间点对应的第六聚合数据与所述C个时间点的第六聚合数据在数据向量维度上进行合并,得到所述时间点对应的第一扩展数据;其中,所述第一扩展数据的数据向量维度的个数等于所述C个时间点的第六聚合数据的数据向量维度和所述时间点对应的第六聚合数据的数据向量维度的个数之和;

获取位于所述时间点之前的A个时间点的第一扩展数据和位于所述时间点之后的B-1个时间点的第一扩展数据,并将所述A个时间点的第一扩展数据、所述B-1个时间点的第一扩展数据以及所述时间点对应的第一扩展数据进行合并,得到所述时间点对应的第二扩展数据;其中,所述第二扩展数据的时间向量维度的个数等于A+B,所述A、B、C均为大于0的整数;

根据所述时间点对应的第二扩展数据,得到所述时间点对应的模型数据。

11.根据权利要求10所述的方法,其特征在于,所述根据所述时间点对应的第二扩展数据,得到所述时间点对应的模型数据,包括:针对所述第二扩展数据中的每一数据向量维度的数据,将每一数据向量维度的数据减去所述数据向量维度上的数据的均值,得到所述数据向量维度对应的数据差值,并将所述数据向量维度对应的数据差值除以所述数据向量维度对应的数据标准差,得到所述数据向量维度对应的归一化后的数据;

根据每一数据向量维度对应的归一化后的数据,得到所述时间点对应的第一归一化数据矩阵XN×n,并确定所述第一归一化数据矩阵XN×n为所述时间点对应的模型数据;

其中,N为所述XN×n的样本数,所述样本数等于所述XN×n的时间向量维度的数目,所述n为所述XN×n的数据向量维度的数目。

12.根据权利要求10所述的方法,其特征在于,所述根据所述时间点对应的第二扩展数据,得到所述时间点对应的模型数据,包括:获取历史Y天内与所述时间点相同的时刻的第二扩展数据,并将所有第二扩展数据进行合并,得到第三扩展数据;其中,所述第三扩展数据的时间向量维度的个数等于Y乘以所述时间点对应的第二扩展数据的时间向量维度的个数的乘积;

针对所述第三扩展数据中的每一数据向量维度的数据,将每一数据向量维度的数据减去所述数据向量维度上的数据的均值,得到所述数据向量维度对应的数据差值,并将所述数据向量维度对应的数据差值除以所述数据向量维度对应的数据标准差,得到所述数据向量维度对应的归一化后的数据;

根据每一数据向量维度对应的归一化后的数据,得到所述时间点对应的第二归一化数据矩阵XN×n,并确定所述第二归一化数据矩阵为所述时间点对应的模型数据;

其中,N为所述XN×n的样本数,所述样本数等于所述XN×n的时间向量维度的数目,所述n为所述XN×n的数据向量维度的数目。

13.根据权利要求11或12所述的方法,其特征在于,所述基于每个时间点对应的模型数据,建立每个时间点对应的质量监测模型,具体包括:利用主成分分析对每个时间点对应的XN×n进行降维操作,得到每个时间点对应的质量监测模型为负载矩阵P。

14.根据权利要求13所述的方法,其特征在于,所述方法还包括:

根据每个时间点对应的负载矩阵P,得到每个时间点对应的得分矩阵T和残差空间矩阵根据所述得分矩阵T和残差空间矩阵 得到每个时间点的质量监测模型对应至所述主元空间和/或所述残差空间的第二统计量。

15.一种视频流质量的监测装置,其特征在于,包括:

第一处理模块,用于对采集到的当前时间点的视频日志数据进行处理,得到待测样本数据,所述视频日志数据包含以下至少之一:启动时的启动日志数据、定时发送的状态日志数据、异常日志数据;

第二处理模块,用于利用所述当前时间点对应的质量监测模型,计算所述待测样本数据在预设空间的第一统计量;所述预设空间为对所述视频流进行主成分分析时相关的特征空间;判断模块,用于判断所述第一统计量是否大于所述质量监测模型在所述预设空间对应的第二统计量,并在判断第一统计量大于所述第二统计量时,确定所述视频流在当前时间点处于异常状态;

所述预设空间包括:主元空间、残差空间中的至少一个;

所述第一统计量为待测样本数据在主元空间的统计量T2,或者,所述第一统计量为待测样本数据在残差空间的统计量Q;

当所述第一统计量为待测样本数据在主元空间的统计量T2时,第二统计量为当前时间点的质量监测模型对应至主元空间的统计量 当所述第一统计量为待测样本数据在残差空间的统计量Q时,所述第二统计量为当前时间点的即质量监测模型对应至残差空间的统计量Qα。

16.根据权利要求15所述的装置,其特征在于,所述第一处理模块,具体包括:第一聚合单元,用于对所述当前时间点的视频日志数据按照预设聚合类别进行聚合,得到每个聚合类别对应的第一聚合数据;其中,一个第一聚合数据包括至少一个数据向量维度的数据,一个第一聚合数据的数据向量维度的数目等于所述聚合类别下聚合参数的值的个数,一个聚合类别包括至少一个聚合参数的值;

第二聚合单元,用于计算每个聚合类别对应的第一聚合数据与观看视频的总用户数之间的比值,得到每个聚合类别对应的第二聚合数据;其中,一个第二聚合数据包括至少一个数据向量维度的数据,一个第二聚合数据的数据向量维度的数目等于所述聚合类别下聚合参数的值的个数;

第三聚合单元,用于将所有聚合类别对应的第二聚合数据在数据向量维度上进行合并,得到所述当前时间点对应的第三聚合数据,并根据所述当前时间点对应的第三聚合数据,确定所述待测样本数据。

17.根据权利要求16所述的装置,其特征在于,所述第三聚合单元,具体用于获取位于所述当前时间点之前的M个时间点的第三聚合数据,并将所述当前时间点对应的第三聚合数据与所述M个时间点的第三聚合数据在数据向量维度上进行合并,得到所述待测样本数据;

其中,所述待测样本数据的数据向量维度的个数等于所述M个时间点的第三聚合数据的数据向量维度和所述当前时间点对应的第三聚合数据的数据向量维度的个数之和。

18.根据权利要求17所述的装置,其特征在于,所述质量监测模型为通过对模型数据执行主成分分析得到的所述当前时间点的负载矩阵P;

所述第二处理模块,具体用于根据公式: 得到所述待测样本数据在

所述主元空间的统计量T2;其中,所述xnew为所述待测样本数据,所述Λ为对角矩阵。

19.根据权利要求18所述的装置,其特征在于,所述判断模块,具体用于判断所述待测样本数据在所述主元空间的统计量T2是否大于所述当前时间点的负载矩阵P对应至所述主元空间的统计量其中, 所述n为所述模型训练数据中数据向量维度的数

目,所述a为利用主成分分析从所述n中所选取的主元个数,Fα(a,n-a)是对应于检验水平为α、所述模型训练数据的样本数为N的F分布临界值,所述N和n均为大于0的整数,所述α大于

0。

20.根据权利要求17所述的装置,其特征在于,所述质量监测模型为通过对模型训练数据执行主成分分析得到的所述当前时间点的负载矩阵P;

所述第二处理模块,具体用于根据公式:Q=rTr得到所述待测样本数据在所述残差空间的统计量Q;其中,r=(I-PPT)xnew,所述I为单位矩阵。

21.根据权利要求20所述的装置,其特征在于,所述判断模块,具体用于判断所述待测样本数据在所述残差空间的统计量Q是否大于所述当前时间点的负载矩阵P对应至所述残差空间的统计量Qα;其中,所述cα是与(1-α)分

位点对应的标准差,α为检验水平,σ为所述待测样本数据的协方差矩阵的特征值。

22.根据权利要求16-21任一项所述的装置,其特征在于,所述装置还包括:模型建立模块,用于根据客户端上报的视频日志信息,获取每个时间点对应的质量监测模型;其中,所述视频日志信息包括与所述视频播放相关的信息。

23.根据权利要求22所述的装置,其特征在于,所述模型建立模块,包括:

第四聚合单元,用于针对每个时间点,对所述客户端上报的视频日志信息按照预设聚合类别进行聚合,得到每个聚合类别对应的第四聚合数据;

第五聚合单元,用于计算所述时间点下每个聚合类别对应的第四聚合数据与观看视频的总用户数之间的比值,得到每个聚合类别对应的第五聚合数据,并将所述时间点下的所有聚合类别对应的第五聚合数据在数据向量维度上进行合并,得到所述时间点对应的第六聚合数据;其中,所述第六聚合数据的数据向量维度的个数等于所述时间点对应的所有第五聚合数据的数据向量维度的个数之和;

扩维单元,用于将所述时间点对应的第六聚合数据进行扩维操作,得到所述时间点对应的模型数据;其中,所述扩维操作用于从数据向量维度和时间向量维度分别增加所述第六聚合数据的数据内容;

建模单元,用于基于所述时间点对应的模型数据,建立所述时间点对应的质量监测模型。

24.根据权利要求23所述的装置,其特征在于,所述扩维单元,具体包括:

第一扩维子单元,用于获取位于所述时间点之前的C个时间点的第六聚合数据,并将所述时间点对应的第六聚合数据与所述C个时间点的第六聚合数据在数据向量维度上进行合并,得到所述时间点对应的第一扩展数据;其中,所述第一扩展数据的数据向量维度的个数等于所述C个时间点的第六聚合数据的数据向量维度和所述时间点对应的第六聚合数据的数据向量维度的个数之和;

第二扩维子单元,用于获取位于所述时间点之前的A个时间点的第一扩展数据和位于所述时间点之后的B-1个时间点的第一扩展数据,并将所述A个时间点的第一扩展数据、所述B-1个时间点的第一扩展数据以及所述时间点对应的第一扩展数据进行合并,得到所述时间点对应的第二扩展数据;其中,所述第二扩展数据的时间向量维度的个数等于A+B,所述A、B、C均为大于0的整数;

处理单元,用于根据所述时间点对应的第二扩展数据,得到所述时间点对应的模型数据。

25.根据权利要求24所述的装置,其特征在于,所述处理单元,具体用于:

针对所述第二扩展数据中的每一数据向量维度的数据,将每一数据向量维度的数据减去所述数据向量维度上的数据的均值,得到所述数据向量维度对应的数据差值,并将所述数据向量维度对应的数据差值除以所述数据向量维度对应的数据标准差,得到所述数据向量维度对应的归一化后的数据;

根据每一数据向量维度对应的归一化后的数据,得到所述时间点对应的第一归一化数据矩阵XN×n,并确定所述第一归一化数据矩阵XN×n为所述时间点对应的模型数据;

其中,N为所述XN×n的样本数,所述样本数等于所述XN×n的时间向量维度的数目,所述n为所述XN×n的数据向量维度的数目。

26.根据权利要求24所述的装置,其特征在于,所述处理单元,具体用于:

获取历史Y天内与所述时间点相同的时刻的第二扩展数据,并将所有第二扩展数据进行合并,得到第三扩展数据;其中,所述第三扩展数据的时间向量维度的个数等于Y乘以所述时间点对应的第二扩展数据的时间向量维度的个数的乘积;

针对所述第三扩展数据中的每一数据向量维度的数据,将每一数据向量维度的数据减去所述数据向量维度上的数据的均值,得到所述数据向量维度对应的数据差值,并将所述数据向量维度对应的数据差值除以所述数据向量维度对应的数据标准差,得到所述数据向量维度对应的归一化后的数据;

根据每一数据向量维度对应的归一化后的数据,得到所述时间点对应的第二归一化数据矩阵XN×n,并确定所述第二归一化数据矩阵为所述时间点对应的模型数据;

其中,N为所述XN×n的样本数,所述样本数等于所述XN×n的时间向量维度的数目,所述n为所述XN×n的数据向量维度的数目。

27.根据权利要求25或26所述的装置,其特征在于,所述建模单元,具体用于利用主成分分析对每个时间点对应的XN×n进行降维操作,得到每个时间点对应的质量监测模型为负载矩阵P。

28.根据权利要求27所述的装置,其特征在于,所述建模单元,还用于根据每个时间点对应的负载矩阵P,得到每个时间点对应的得分矩阵T和残差空间矩阵 并根据所述得分矩阵T和残差空间矩阵 得到每个时间点的质量监测模型对应至所述主元空间和/或所述残差空间的第二统计量。

29.一种服务端,其特征在于,包括:存储器和处理器;

其中,所述存储器用于存储代码;

所述处理器用于调用所述存储器存储的代码,以执行如权利要求1-14任一项所述的方法。

说明书 :

视频流质量的监测方法、装置和服务端

技术领域

[0001] 本发明实施例涉及计算机处理技术,尤其涉及一种视频流质量的监测方法、装置和服务端。

背景技术

[0002] 视频信息作为互联网时代的一个重要产物,其质量主要体现在视频流接收方的观感上,即视频加载速度、观看缓冲次数、观看缓冲时间、观看异常用户量等等。传统的视频流质量监控方法,主要是通过对这些数据进行简单的阈值判断来检测视频流的质量状况。
[0003] 但是,上述视频流质量的监控方法,检测的准确度不高。

发明内容

[0004] 本发明实施例提供一种视频流质量的监测方法、装置和服务端,用以解决现有技术中的视频流质量的监控方法,视频质量检测的准确度不高的技术问题。
[0005] 第一方面,本发明实施例提供一种视频流质量的监测方法,包括:
[0006] 对采集到的当前时间点的视频日志数据进行处理,得到待测样本数据;
[0007] 利用所述当前时间点对应的质量监测模型,计算所述待测样本数据在预设空间的第一统计量;所述预设空间为对所述视频流进行主成分分析时相关的特征空间;
[0008] 判断所述第一统计量是否大于所述质量监测模型在所述预设空间对应的第二统计量;
[0009] 若是,则确定所述视频流在当前时间点处于异常状态。
[0010] 第二方面,本发明实施例提供一种视频流质量的监测装置,包括:
[0011] 第一处理模块,用于对采集到的当前时间点的视频日志数据进行处理,得到待测样本数据;
[0012] 第二处理模块,用于利用所述当前时间点对应的质量监测模型,计算所述待测样本数据在预设空间的第一统计量;所述预设空间为对所述视频流进行主成分分析时相关的特征空间;
[0013] 判断模块,用于判断所述第一统计量是否大于所述质量监测模型在所述预设空间对应的第二统计量,并在判断第一统计量大于所述第二统计量时,确定所述视频流在当前时间点处于异常状态。
[0014] 第三方面,本发明实施例提供一种服务端,包括:存储器和处理器;
[0015] 其中,所述存储器用于存储代码;
[0016] 所述处理器用于调用所述存储器存储的代码,以执行如第一方面或者第一方面的可选方式所述的方法。
[0017] 本发明实施例提供的视频流质量的监测方法、装置和服务端,服务端通过对采集到的当前时间点的视频日志数据进行处理,得到待测样本数据,然后利用所述当前时间点对应的质量监测模型,计算所述待测样本数据在预设空间的第一统计量,并判断所述第一统计量是否大于所述质量监测模型对应在所述预设空间的第二统计量;若是,则确定所述视频流在当前时间点处于异常状态。由于本发明实施例中采用了主成分分析,且预设空间为与主成分分析相关的特征空间,因此,基于待测样本数据在预设空间的第一统计量与建立质量监测模型时在预设空间对应的第二统计量的大小关系,确定当前时间点的视频流质量是否异常,其不再是对视频日志数据的某个日志参数进行简单的阈值判断,而是从有效信息维度和/或无效信息维度对待测样本数据进行分析,其大大提高了视频流质量的监测的敏感度和准确度。

附图说明

[0018] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0019] 图1为本发明提供的视频流质量监测系统的结构示意图;
[0020] 图2为本发明提供的视频流质量的监测方法实施例一的流程示意图;
[0021] 图3为本发明实施例提供的视频流质量的监测方法实施例二的流程示意图;
[0022] 图4为本发明提供的视频流质量的监测方法实施例三的流程示意图;
[0023] 图5为本发明提供的对第六聚合数据进行扩维操作的流程示意图;
[0024] 图6为本发明提供的获得模型数据的流程示意图一;
[0025] 图7为本发明提供的获得模型数据的流程示意图二;
[0026] 图8为本发明提供的视频流质量的监测装置实施例一的结构示意图;
[0027] 图9为本发明提供的视频流质量的监测装置实施例二的结构示意图;
[0028] 图10为本发明提供的视频流质量的监测装置实施例三的结构示意图
[0029] 图11为本发明实施例提供的服务端的结构示意图。

具体实施方式

[0030] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0031] 另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
[0032] 应当理解,尽管在本发明实施例中可能采用术语第一、第二、第三等来描述XXX,但这些XXX不应限于这些术语。这些术语仅用来将XXX彼此区分开。例如,在不脱离本发明实施例范围的情况下,第一XXX也可以被称为第二XXX,类似地,第二XXX也可以被称为第一XXX。
[0033] 本发明实施例提供的视频流质量的监测方法,可以适用于图1所示的视频流质量监测系统。如图1所示,该视频流质量监测系统40包括客户端41和服务端42,客户端和服务端可以通过有线或者无线的方式进行通信。可选的,客户端可以是视频流的获取终端,如PC客户端、手机应用、web端等应用终端,这些应用终端可以获取到视频流的状态,并向服务端以日志的形式进行汇报。服务端可以为服务器,还可以为其他的处理设备,其主要根据客户端上报的视频日志信息对线上运行的视频流的质量进行监测,其可以快速的发现视频流的潜在质量问题。
[0034] 本发明实施例提供的视频流质量的监测方法,其主要利用了主成分分析将视频流的状态信息进行降维并建立质量监测模型,基于所建立的质量监测模型对当前时间点的视频流进行质量检测,有效提高了监测的敏感度与准确性。
[0035] 下面以具体地实施例对本申请的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
[0036] 图2为本发明提供的视频流质量的监测方法实施例一的流程示意图。本实施例的执行主体为服务端。本实施例涉及的是服务端根据客户端在当前时间点上报的视频日志数据和当前时间点对应的质量监测模型,确定当前时间点的视频流的质量是否异常的具体过程。如图2所示,该方法包括:
[0037] S101:对采集到的当前时间点的视频日志数据进行处理,得到待测样本数据。
[0038] 具体的,在视频开始播放或者播放过程中,客户端可以获取到视频流的状态信息,然后实时的以日志的形式上报给服务端。服务端按照预设的采样间隔采集客户端上报的视频日志数据,例如,服务端可以是每一分钟采集一次,或者每两分钟采集一次。可选的,客户端上报的视频日志数据包括但不限于:启动时的启动日志数据、定时发送的状态日志数据、异常日志数据。其中,启动日志数据包含用户信息、播放器加载时间、视频流的加载时间等;状态日志数据包括用户信息、观看时长、卡顿次数、卡顿时间等;异常日志数据包括视频加载失败日志、网络中断日志等异常情况。
[0039] 当服务端采集到当前时间点对应的视频日志数据之后,服务端对该视频日志数据进行处理,得到待测样本的数据。可选的,服务端可以将得到的视频日志数据按照不同的类别进行归类,还可以将归类后的数据中的每一类数据按照某种分类方案再次进行归类。可选的,服务端还可以将当前时间点的视频日志数据和当前时间点之前的一个或者多个时间点的视频日志数据组合在一起,得到待测样本数据。可选的,该待测样本数据可以为一数据矩阵的形式,例如,假设当前时间点的视频日志数据按照不同的类别进行归类后,得到的是[1*30]维的数据,如果将当前时间点之前的两个时间点的视频日志数据和当前时间点的视频日志数据组合在一起,就可以成为[1*90]维的数据,则该[1*90]维的数据即就是待测样本数据。当然,本实施例对服务端如何处理视频日志数据的形式并不做限制,只要所得到的待测样本数据为数据矩阵的形式即可。
[0040] S102:利用所述当前时间点对应的质量监测模型,计算所述待测样本数据在预设空间的第一统计量。
[0041] 其中,所述预设空间为对所述视频流进行主成分分析时相关的特征空间。
[0042] 具体的,当服务端获得当前时间点对应的待测样本数据之后,服务端确定当前时间点对应的质量监测模型。可选的,该服务端侧,服务端提前预置了每个时间点对应的质量监测模型。需要说明的是,服务端上预置的每个时间点对应的质量监测模型,这里的“每个时间点”指的是在当前时间点所在的日期之前的时间点,并不是当前日期之内的时间点。例如,假设当前时间点是2017年8月30日9:00,服务端上预置的9:00对应的质量监测模型则为2017年8月30日之前的某一天的9:00,服务端上预置的该9:00的质量监测模型即就是上述所说的当前时间点对应的质量监测模型。
[0043] 可选的,当前时间点对应的质量监测模型可以是通过对模型数据执行主成分分析得到的所述当前时间点的负载矩阵P。可选的,模型数据也可以是数据矩阵,该模型数据可以通过客户端在当前日期之前向服务端上报的视频日志数据得到,具体的获取方式可以参见下述实施例的描述。
[0044] 当服务端确定了当前时间点对应的质量监测模型之后,利用该质量监测模型计算当前时间点的待测样本数据在预设空间的第一统计量,该预设空间为服务端对视频流进行主成分分析时相关的特征空间。可选的,该预设空间可以是主元空间,可以是残差空间,还可以是主元空间和残差空间。当然,还可以是其他的与主成分分析相关的空间,本实施例对预设空间的类型并不做限定。
[0045] 可选的,上述待测样本数据在预设空间的第一统计量可以是待测样本数据在主元空间的统计量T2,还可以是待测样本数据在残差空间的统计量Q。
[0046] 一种可能的实现方式为:根据公式: 得到所述待测样本数据在所述主元空间的统计量T2;其中,所述xnew为所述待测样本数据,所述Λ为对角矩阵。
[0047] 另一种可能的实现方式为:根据公式:Q=rTr得到所述待测样本数据在所述残差空间的统计量Q;其中,r=(I-PPT)xnew,所述I为单位矩阵。
[0048] S103:判断所述第一统计量是否大于所述质量监测模型在所述预设空间对应的第二统计量。
[0049] S104:若是,则确定所述视频流在当前时间点处于异常状态。
[0050] 具体的,上述服务端预置的每个时间点对应的质量监测模型,其在建立该质量监测模型时均会计算出该质量监测模型在预设空间对应的第二统计量,也就是说,一个时间点对应一个质量监测模型,一个质量监测模型对应一个预设空间的第二统计量。可选的,不同的时间点对应的质量监测模型可以相同,可以不同。
[0051] 可选的,一个质量监测模型对应在主元空间的第二统计量可以为n为上述模型训练数据中数据向量维度的数目,a为利用主成
分分析从n中所选取的主元个数,Fα(a,n-a)是对应于检验水平为α、模型训练数据的样本数为N的F分布临界值。
[0052] 可选的,一个质量监测模型在残差空间对应的第二统计量还可以为cα是与(1-
α)分位点对应的标准差,α为检验水平。
[0053] 故而,可选的,当第一统计量为待测样本数据在主元空间的统计量T2时,服务端此时判断T2是否大于当前时间点的负载矩阵P(即质量监测模型)对应至主元空间的统计量若大于,则服务端确定当前时间点的视频流质量异常;若T2小于或者等于 则服务端确定当前时间点的视频流质量正常。
[0054] 可选的,当第一统计量为待测样本数据在残差空间的统计量Q时,服务端此时判断Q是否大于当前时间点的负载矩阵P(即质量监测模型)对应至残差空间的统计量Qα;若大于,则服务端确定当前时间点的视频流质量异常;若Q小于或者等于Qα,则服务端确定当前时间点的视频流质量正常。
[0055] 可选的,当第一统计量包括待测样本数据在主元空间的统计量T2和在残差空间的统计量Q时,服务端判断T2是否 以及判断Q是否大于Qα。若两个判断条件中有一个判断条件的结果是大于,则服务端确定当前时间点的视频流质量异常。当两个判断条件中的判断结果均是小于或者等于,则服务端确定当前时间点的视频流质量正常。
[0056] 需要说明的是,当预设空间为主元空间、残差空间中的至少一个时,由于主元空间表征了视频日志数据的有效信息,残差空间表征了视频日志数据中的无效信息,因此基于待测样本数据在主元空间和/或残差空间的第一统计量,与,当前时间点的质量监测模型在主元空间和/或残差空间的第二统计量的大小关系,监测当前时间点的视频流质量,其大大提高了视频流质量之间的敏感度和准确度。
[0057] 本发明实施例提供的视频流质量的监测方法,服务端通过对采集到的当前时间点的视频日志数据进行处理,得到待测样本数据,然后利用所述当前时间点对应的质量监测模型,计算所述待测样本数据在预设空间的第一统计量,并判断所述第一统计量是否大于所述质量监测模型在所述预设空间对应的第二统计量;若是,则确定所述视频流在当前时间点处于异常状态。由于本发明实施例中采用了主成分分析,且预设空间为与主成分分析相关的特征空间,因此,基于待测样本数据在预设空间的第一统计量与建立质量监测模型时在预设空间对应的第二统计量的大小关系,确定当前时间点的视频流质量是否异常,其不再是对视频日志数据的某个日志参数进行简单的阈值判断,而是从有效信息维度和/或无效信息维度对待测样本数据进行分析,其大大提高了视频流质量的监测的敏感度和准确度。
[0058] 图3为本发明实施例提供的视频流质量的监测方法实施例二的流程示意图。本实施例是在上述实施例的基础上,对上述实施例中的S101的步骤的一种可选的实现方式进行介绍。可选的,上述S101可以包括:
[0059] S201:对所述当前时间点的视频日志数据按照预设聚合类别进行聚合,得到每个聚合类别对应的第一聚合数据。
[0060] 其中,一个聚合类别对应的第一聚合数据包括至少一个数据向量维度的数据,一个聚合类别对应的第一聚合数据的数据向量维度的数目等于所述聚合类别下聚合参数的值的个数,一个聚合类别包括至少一个聚合参数的值。
[0061] 具体的,针对客户端实时上报的视频日志数据,服务端采集当前时间点对应的所有视频日志数据,并从中提取出有用的视频日志数据。由于原始的每一条视频日志数据仅记录了单个用户的行为,个体的行为是存在偶然性的,因此,服务端在当前时间点采集的是所有用户的视频日志数据,并对所有用户的视频日志数据进行聚合,则获得的是线上所有用户的行为数据,该数据波动情况可以有效的表征视频流整体质量。
[0062] 为了降低视频流质量监控的误报率和漏报率,本实施例中,服务端通过设置合理的采样间隔采集客户端上报给服务端的视频日志数据,获得当前时间点的视频日志数据。可选的,可以设采样间隔为1分钟,假设所获取的当前时间点的视频日志数据为当前一分钟内的视频日志数据。服务端对该1分钟内的视频日志数据照预设聚合类别进行聚合,得到每个聚合类别对应的第一聚合数据。可选的,该聚合类别可以包括观看视频用户量、视频卡顿时间、视频卡顿次数、音视频不同步量(下简称为指标数据)、发起打开视频用户请求量、打开视频失败用户量中至少一个。其中,一个聚合类别对应的第一聚合数据包括至少一个数据向量维度的数据,一个聚合类别对应的第一聚合数据的数据向量维度的数目等于所述聚合类别下聚合参数的值的个数,一个聚合类别包括至少一个聚合参数的值。
[0063] 以聚合类别为卡顿次数为例,该卡顿次数包括11个聚合参数的值,分别为每分钟卡顿次数为0次、每分钟卡顿次数为1次……每分钟卡顿次数为10次。可选的,首先服务端可以按照视频日志数据上报的平台,如PC、web、iOS、Android等不同进行聚合,再对聚合的结果根据每分钟的卡顿量不同进行再一次的聚合,如获得iOS端每分钟卡顿次数为0次的用户日志数x0,iOS端每分钟卡顿次数为1次的用户日志数x1,iOS端每分钟卡顿次数为2次的用户日志数x2……iOS端每分钟卡顿次数为10次的用户日志数x10,则卡顿次数聚合类别对应的第一聚合数据包括:x0、x1、x2、……x10这11个数据向量维度的数据,即包含11维的数据向量,该第一聚合数据的数据向量维度的数目等于11。
[0064] 可选的,以聚合类别为视频卡顿时间为例,该视频卡顿时间包括11个聚合参数的值,分别为:卡顿时间为0秒、卡顿时间为0-1秒……卡顿时间为9秒,卡顿时间大于9秒。这样,服务端在对这1分钟内的数据按照视频卡顿时间进行聚合时,具体为:卡顿时间为0秒的用户量为x0,卡顿时间为0-1秒的用户量为x1,卡顿时间为1-2秒的用户量为x2,卡顿时间为2-3秒的用户量为x3……卡顿时间为8-9秒的用户量为x9,卡顿时间大于9秒的用户量统一为x10,从而获得视频卡顿时间这一聚合类别对应的第一聚合数据,该第一聚合数据包括:
x0、x1、x2、……x10这11个数据向量维度的数据。也就是说,该视频卡顿时间这一聚合类别对应的第一聚合数据的数据向量维度的数目等于11,该第一聚合数据包含11维的数据向量。
[0065] S202:计算每个聚合类别对应的第一聚合数据与观看视频的总用户数之间的比值,得到每个聚合类别对应的第二聚合数据。
[0066] 其中,一个聚合类别对应的第二聚合数据包括至少一个数据向量维度的数据,一个聚合类别对应的第二聚合数据的数据向量维度的数目等于所述聚合类别下聚合参数的值的个数。
[0067] 具体的,当服务端获得每个聚合类别对应的第一聚合数据之后,利用每个聚合类别对应的第一聚合数据中的每一维数据向量除以观看视频的总用户数,得到相应的比值,将该比值作为该聚合类别下的第二聚合数据。
[0068] 继续以上述聚合类别为卡顿次数和视频卡顿时间为例,卡顿次数这一聚合类别对应的第一聚合数据包括:x0、x1、x2、……x10这11维的数据向量,将x0、x1、x2、……x10分别除以观看视频的总用户数,得到x0’、x1’、x2’、……;x10’这11个数据向量维度的数据,即第二聚合数据,其可以表示为[1*11],该第二聚合数据的数据向量维度的数目也等于该聚合类别下聚合参数的值的个数;同理,视频卡顿时间这一聚合类型对应的第二聚合数据也可以表示为[1*11]。
[0069] S203:将所有聚合类别对应的第二聚合数据在数据向量维度上进行合并,得到所述当前时间点对应的第三聚合数据,并根据所述当前时间点对应的第三聚合数据,确定所述待测样本数据。
[0070] 具体的,假设上述预设的聚合类别包括:卡顿次数、视频卡顿时间、音视频不同步量以及打开视频失败量这四个类别,且假设音视频不同步量这一聚合类别包括7个聚合参数的值,打开视频失败量这一聚合类别包括1个聚合参数的值,则服务端最终可以获得卡顿次数这一聚合类别对应的第二聚合数据可以表示为[1*11]、视频卡顿时间这一聚合类别对应的第二聚合数据可以表示为[1*11]、音视频不同步量这一聚合类别对应的第二聚合数据可以表示为[1*7],打开视频失败量这一聚合类别对应的第二聚合数据可以表示为[1*1]。服务端将这些聚合类别对应的第二聚合数据在数据向量维度上进行合并,从而得到第三聚合数据为[1*30],即第三聚合数据的数据向量维度的数目等于每个第二聚合数据的数据向量维度的个数之和。
[0071] 可选的,服务端可以直接确定待测样本数据为第三聚合数据。
[0072] 可选的,为了提高视频流质量监测的准确度,降低视频流质量监测过程中的误报率,在上述S203之后,还可以包括S204。该S204的过程主要是对上述得到的第三聚合数据进行数据内容的扩充,以得到待测样本数据。具体的:
[0073] S204:获取位于所述当前时间点之前的M个时间点的第三聚合数据,并将所述当前时间点对应的第三聚合数据与所述M个时间点的第三聚合数据在数据向量维度上进行合并,得到所述待测样本数据。
[0074] 其中,所述待测样本数据的数据向量维度的个数等于所述M个时间点的第三聚合数据的数据向量维度和所述当前时间点对应的第三聚合数据的数据向量维度的个数之和。
[0075] 可选的,在服务端得到第三聚合数据之后,服务端还可以获取位于当前时间点之前的M个时间点的第三聚合数据,假设当前时间点是9:50,M为2,则当前时间点对应的第三聚合数据为[1*30],前2个时间点中的每个时间点按照上述S201至S203的处理方式,所得到的第三聚合数据也分别为[1*30],将前2个时间点的第三聚合数据和当前时间点的第三聚合数据在数据向量维度上进行合并,从而得到待测样本数据为[1*90],即待测样本数据是将前2个时间点的第三聚合数据和当前时间点的第三聚合数据的列进行合并得到的。
[0076] 本申请提供的视频流质量的监测方法,服务端通过对当前时间点的视频日志数据按照预设聚合类别进行聚合,得到每个聚合类别对应的第一聚合数据,并计算每个聚合类别对应的第一聚合数据与观看视频的总用户数之间的比值,得到每个聚合类别对应的第二聚合数据,然后将所有聚合类别对应的第二聚合数据在数据向量维度上进行合并,得到所述当前时间点对应的第三聚合数据,并获取位于所述当前时间点之前的M个时间点的第三聚合数据,并将所述当前时间点对应的第三聚合数据与所述M个时间点的第三聚合数据在数据向量维度上进行合并,得到待测样本数据。该方法通过将待测样本数据处理为数据矩阵的形式,以便于利用上述质量监测模型计算其对应在主元空间和/或残差空间的第一统计量,从而提高视频流质量监测的效率;另一方面,通过将当前时间点对应的第三聚合数据和前M个时间点对应的第三聚合数据合并得到待测样本数据,其增加了待测样本数据所包含的数据内容,因此大大提高了视频流质量监测的准确度,从而降低了视频流质量监测的误报率。
[0077] 图4为本发明提供的视频流质量的监测方法实施例三的流程示意图。在上述实施例的基础上,本实施例涉及的是在S101之前,服务端根据客户端上报的视频日志信息,获取每个时间点对应的质量监测模型的具体过程。其中,所述视频日志信息包括与所述视频播放相关的信息。如图4所示,该方法包括如下步骤:
[0078] S301:针对每个时间点,对所述客户端上报的视频日志信息按照预设聚合类别进行聚合,得到每个聚合类别对应的第四聚合数据。
[0079] 该步骤中,按照预设聚合类别对数据进行聚合的过程,可以参见上述S201的执行过程,不同的是,上述S201针对的是当前时间点采集的视频日志数据进行聚合,该S301针对是客户端在当前日期之前的其他日期实时上报给服务端的视频日志信息进行采集和聚合的。也就是说,本实施例中涉及的每个时间点,指的是位于当前时间点之前的其他日期中的每个时间点,例如当前时间点假设为2017年8月30日9:00,本步骤中的每个时间点指的可以是2017年8月1号至8月29日00:00至24:00这些时间点。
[0080] S302:计算所述时间点下每个聚合类别对应的第四聚合数据与观看视频的总用户数之间的比值,得到每个聚合类别对应的第五聚合数据,并将所述时间点下的所有聚合类别对应的第五聚合数据在数据向量维度上进行合并,得到所述时间点对应的第六聚合数据。
[0081] 其中,所述第六聚合数据的数据向量维度的个数等于所述时间点对应的所有第五聚合数据的数据向量维度的个数之和。
[0082] 该步骤中,获得第五聚合数据的过程和上述实施例二中获取第二聚合数据的过程类似,获得第六聚合数据的过程和上述实施例二中获得第三聚合数据的过程类似,在此不再赘述,不同的依然是处理时的数据源不同,实施例二中针对的当前时间点的视频日志数据,本步骤中针对的是客户端在当前日期之前的其他日期实时上报给服务端的视频日志信息。
[0083] 假设该步骤中预设聚合类别仍然为:卡顿次数、视频卡顿时间、音视频不同步量以及打开视频失败量这四个类别,按照上述实施例二的举例,每个时间点对应的第六聚合数据均为[1*30]。
[0084] S303:将所述时间点对应的第六聚合数据进行扩维操作,得到所述时间点对应的模型数据;其中,所述扩维操作用于从数据向量维度和时间向量维度分别增加所述第六聚合数据的数据内容。
[0085] 具体的,当服务端获得每个时间点对应的第六聚合数据之后,可以对每个时间点对应的第六聚合数据分别进行扩维操作,得到每个时间点对应的模型数据,该扩维操作可以从数据向量维度和时间向量维度分别对第六聚合数据的数据内容进行扩展或者拉伸,可选的,该数据向量维度可以为第六聚合数据的列维度,时间向量维度可以为第六聚合数据的列维度。对第六聚合数据进行扩维操作,可以使得模型数据包括的内容增多,从而可以提高质量监测模型建立更准确性。可选的,最终得到的模型数据可以为数据矩阵的形式,每个时间点对应一个模型数据。
[0086] S304:基于所述时间点对应的模型数据,建立所述时间点对应的质量监测模型。
[0087] 可选的,当服务端得到每个时间点对应的模型数据之后,可以利用主成分分析的方法,建立每个时间点对应的质量监测模型,即上述实施例中涉及的负载矩阵P。
[0088] 作为对第六聚合数据进行扩维操作的一种可选的实现方式,参见图5所示,上述S303可以包括如下步骤:
[0089] S3031:针对每个时间点,获取位于所述时间点之前的C个时间点的第六聚合数据,并将所述时间点对应的第六聚合数据与所述C个时间点的第六聚合数据在数据向量维度上进行合并,得到所述时间点对应的第一扩展数据。
[0090] 其中,所述第一扩展数据的数据向量维度的个数等于所述C个时间点的第六聚合数据的数据向量维度和所述时间点对应的第六聚合数据的数据向量维度的个数之和。
[0091] 具体的,继续按照上述举例,当服务端获得的每个时间点对应的第流聚合数据均为[1*30],设一个时间点为8:50分,C等于2,服务端的采样间隔为1分钟,则服务端获得的8:50分的前两分钟各自对应的第六聚合数据也是[1*30],基于前述实施例中介绍的聚合数据在数量向量维度上的合并,服务端得到8:50分对应的第一扩展数据为[1*90]。即本步骤中得到第一扩展数据的过程与上述S204的执行过程类似。
[0092] S3032:获取位于所述时间点之前的A个时间点的第一扩展数据和位于所述时间点之后的B-1个时间点的第一扩展数据,并将所述A个时间点的第一扩展数据、所述B-1个时间点的第一扩展数据以及所述时间点对应的第一扩展数据进行合并,得到所述时间点对应的第二扩展数据。
[0093] 其中,所述第二扩展数据的时间向量维度的个数等于A+B,所述A、B、C均为大于0的整数。
[0094] 具体的,由于用户信息在不同时刻存在明显的总量差异,如视频数据凌晨的用户量比傍晚高峰期的要少很多,为了尽可能避免这种分时段差异造成的影响,对数据信息按照时间点分别建模来提高质量监测模型的准确度。可选的,由于精确到每分钟建立的质量监测模型因为相邻时间点的相似性,综合考虑,建立整点的质量监测模型,每个整点的质量监测模型模型,可以取前A个时间点和后B-1个时间点的视频日志数据,作为同一个视频质量监测模型的样本,此处的建模划分时间可根据实际情况动态调整。
[0095] 可选的,假设要建立10点的质量监测模型,可以设A=30分钟,B-1=29分钟,则服务端需要获取10点之前的30分钟内每一分钟对应的第一扩展数据,以及10点之后的29分钟内每一分钟对应的第一扩展数据。然后服务端将30分钟内每一分钟对应的第一扩展数据,以及10点之后的29分钟内每一分钟对应的第一扩展数据,以及10点对应的第一扩展数据在时间向量维度上进行合并,得到10点对应的第二扩展数据为[60*90]。
[0096] S3033:根据所述时间点对应的第二扩展数据,得到所述时间点对应的模型数据。
[0097] 可选的,该S3033可以包括如下两种实现方式,具体参见下述图6和图7所示的实施例。
[0098] 第一种实现方式:参见图6所示,上述S3033可以包括如下步骤:
[0099] S401:针对所述第二扩展数据中的每一数据向量维度的数据,将每一数据向量维度的数据减去所述数据向量维度上的数据的均值,得到所述数据向量维度对应的数据差值,并将所述数据向量维度对应的数据差值除以所述数据向量维度对应的数据标准差,得到所述数据向量维度对应的归一化后的数据。
[0100] 具体的,继续以上述10点对应的第二扩展数据为[60*90]为例,该第二扩展数据中的每一数据向量维度的数据为[60*1],总共有90个数据向量维度。针对每一个数据向量维度的数据,服务端首先计算该数据向量维度上的数据的平均值,可选的,该平均值可以是算数平均、加权平均,本实施例对平均值的计算方式并不做限定;其次,服务端将该数据向量维度上的每个数据减去该数据向量维度上的数据的均值,得到该数据向量维度对应的数据差值;最后,服务端基于该数据向量维度对应的数据差值除以该数据向量维度对应的数据标准差的商值,得到该数据向量维度对应的的归一化后的数据。
[0101] 针对第二扩展数据为[60*90]中每一数据向量维度的数据均执行上述操作,得到第二扩展数据中每一数据向量维度对应的归一化后的数据。
[0102] S402:根据每一数据向量维度对应的归一化后的数据,得到所述时间点对应的第一归一化数据矩阵XN×n,并确定所述第一归一化数据矩阵XN×n为所述时间点对应的模型数据。
[0103] 其中,N为所述XN×n的样本数,所述样本数等于所述XN×n的时间向量维度的数目,所述n为所述XN×n的数据向量维度的数目。
[0104] 具体的,当服务端获得第二扩展数据中每一数据向量维度对应的归一化后的数据之后,将每一数据向量维度对应的归一化后的数据在数据向量维度上进行合并,从而得到10点对应的第一归一化数据矩阵X60×90。其中,60(即N)为第一归一化数据矩阵的样本数,即为第一归一化数据矩阵的时间向量维度的个数,90为第一归一化数据矩阵的数据向量维度的数目。该第一归一化数据矩阵X60×90即就是10点对应的模型数据。
[0105] 第二种实现方式:参见图7所示,上述S3033可以包括如下步骤:
[0106] S501:获取预设Y天内与所述时间点相同的时刻的第二扩展数据,并将所有第二扩展数据进行合并,得到第三扩展数据;其中,所述第三扩展数据的时间向量维度的个数等于Y乘以所述时间点对应的第二扩展数据的时间向量维度的个数的乘积。
[0107] 具体的,为了进一步丰富模型数据中的数据内容,该实现方式对原始的第二扩展数据进行了扩充,以使得最后得到的模型数据包含的数据内容增多,从而大大提高质量监测模型建立的准确性。
[0108] 继续以上述10点对应的第二扩展数据为[60*90]为例,该第二扩展数据中的每一时间向量维度的数据为[1*90],总共有60个时间向量维度。假设Y为历史一个季度的天数,Y=180天,服务端在得到模型数据之前,服务端预先获取这180天内的10点的第二扩展数据,均为[60*90]。之后,服务端将所有第二扩展数据在时间向量维度上进行合并,得到第三扩展数据,该第三扩展数据的时间向量维度的个数等于180乘以60的乘积,即等于10800。因此,第三扩展数据为[10800*90]。
[0109] S502:针对所述第三扩展数据中的每一数据向量维度的数据,将每一数据向量维度的数据减去所述数据向量维度上的数据的均值,得到所述数据向量维度对应的数据差值,并将所述数据向量维度对应的数据差值除以所述数据向量维度对应的数据标准差,得到所述数据向量维度对应的归一化后的数据。
[0110] S503:根据每一数据向量维度对应的归一化后的数据,得到所述时间点对应的第二归一化数据矩阵XN×n,并确定所述第二归一化数据矩阵为所述时间点对应的模型数据。
[0111] 其中,N为所述XN×n的样本数,所述样本数等于所述XN×n的时间向量维度的数目,所述n为所述XN×n的数据向量维度的数目。
[0112] 上述S502和S503的过程与上述S401和S402类似,在此不再赘述。不同的地方在于,S401和S402中针对的数据是第二扩展数据,本实施例针对是第三扩展数据。
[0113] 因此,基于上述第一种实现方式和第二种实现方式所得到的每个时间点对应的模型数据XN×n,服务端可以采用主成分分析的方法对该XN×n进行降维操作,得到每个时间点对应的质量监测模型为负载矩阵P。其具体可以通过如下过程获得:
[0114] 首先,服务端根据利用主成分分析 对XN×n进行降维操作,所得到的降维后的矩阵为X;其中, 为得分矩阵, 为负载矩阵, 为残差空
间,a
[0115] 然后,通过对上述数据矩阵X进行特征值分解获得X=UΛ1/2V。其中Λ=diag(λi),(i=1,2,...,n)是对角矩阵,其对角元素λi为X的奇异值从大到小排列,需要说明的是,本申请中建立的质量监测模型即为V的前a列,即V的前a列即为本发明实施例涉及的负载矩阵P。
[0116] 故而,得分矩阵T和残差空间 可以通过如下公式获得: 经过上述分解,原来的变量空间(XN×n)通过降维被分解为主元空间和残差空间,且去除了数据向量维度之间的相关性。基于上述得分矩阵T和残差空间矩阵 可以得到每个时间点的质量监测模型对应至主元空间和/或残差空间的第二统计量,该具体的计算过程可以参见现有技术,在此不再赘述,所得到的每个时间点的质量监测模型对应至主元空间的第二统计量为对应至残差空间的第二统计量为
[0117] 本申请提供的视频流质量的监测方法,服务端针对每个时间点,对所述客户端上报的视频日志信息按照预设聚合类别进行聚合,得到每个聚合类别对应的第四聚合数据,并计算所述时间点下每个聚合类别对应的第四聚合数据与观看视频的总用户数之间的比值,得到每个聚合类别对应的第五聚合数据,并将所述时间点下的所有聚合类别对应的第五聚合数据在数据向量维度上进行合并,得到所述时间点对应的第六聚合数据;然后将所述时间点对应的第六聚合数据进行扩维操作,得到所述时间点对应的模型数据,并基于所述时间点对应的模型数据,建立所述时间点对应的质量监测模型。本实施例的方法,由于丰富了模型数据的数据内容,因此其大大提高了质量监测模型建立的准确性,从而进一步提高了在利用质量监测模型监测视频流质量的敏感度和准确度。
[0118] 图8为本发明提供的视频流质量的监测装置实施例一的结构示意图,该装置可以通过软件、硬件或者软硬件结合的方式实现成为服务端的部分或者全部。如图8所示,该装置包括:第一处理模块10、第二处理模块11和判断模块12。,其中,第一处理模块10,用于对采集到的当前时间点的视频日志数据进行处理,得到待测样本数据;
[0119] 第二处理模块11,用于利用所述当前时间点对应的质量监测模型,计算所述待测样本数据在预设空间的第一统计量;其中,一个时间点对应一个质量监测模型,所述预设空间为对所述视频流进行主成分分析时相关的特征空间;
[0120] 判断模块12,用于判断所述第一统计量是否大于所述质量监测模型对应在所述预设空间的第二统计量,并在判断第一统计量大于所述第二统计量时,确定所述视频流在当前时间点处于异常状态。
[0121] 可选的,所述预设空间包括:主元空间、残差空间中的至少一个。
[0122] 本发明实施例提供的视频流质量的监测装置,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。
[0123] 图9为本发明提供的视频流质量的监测装置实施例二的结构示意图。在上述图8所示的装置实施例的基础上,进一步地,上述第一处理模块10,可以包括:第一聚合单元101、第二聚合单元102和第三聚合单元103。
[0124] 具体的,第一聚合单元101,用于对所述当前时间点的视频日志数据按照预设聚合类别进行聚合,得到每个聚合类别对应的第一聚合数据;其中,一个第一聚合数据包括至少一个数据向量维度的数据,一个第一聚合数据的数据向量维度的数目等于所述聚合类别下聚合参数的值的个数,一个聚合类别包括至少一个聚合参数的值;
[0125] 第二聚合单元102,用于计算每个聚合类别对应的第一聚合数据与观看视频的总用户数之间的比值,得到每个聚合类别对应的第二聚合数据;其中,一个第二聚合数据包括至少一个数据向量维度的数据,一个第二聚合数据的数据向量维度的数目等于所述聚合类别下聚合参数的值的个数;
[0126] 第三聚合单元103,用于将所有聚合类别对应的第二聚合数据在数据向量维度上进行合并,得到所述当前时间点对应的第三聚合数据,并根据所述当前时间点对应的第三聚合数据,确定所述待测样本数据。
[0127] 可选的,所述第三聚合单元103,具体用于获取位于所述当前时间点之前的M个时间点的第三聚合数据,并将所述当前时间点对应的第三聚合数据与所述M个时间点的第三聚合数据在数据向量维度上进行合并,得到所述待测样本数据;
[0128] 其中,所述待测样本数据的数据向量维度的个数等于所述M个时间点的第三聚合数据的数据向量维度和所述当前时间点对应的第三聚合数据的数据向量维度的个数之和。
[0129] 可选的,所述质量监测模型为通过对模型数据执行主成分分析得到的所述当前时间点的负载矩阵P;所述第二处理模块11,具体用于根据公式: 得到所述待测样本数据在所述主元空间的统计量T2;其中,所述xnew为所述待测样本数据,所述Λ为对角矩阵。则所述判断模块12,具体用于判断所述待测样本数据在所述主元空间的统计量T2是否大于所述当前时间点的负载矩阵P对应至所述主元空间的统计量
[0130] 其中, 所述n为所述模型训练数据中数据向量维度的数目,所述a为利用主成分分析从所述n中所选取的主元个数,Fα(a,n-a)是对应于检验水平为α、所述模型训练数据的样本数为N的F分布临界值。
[0131] 可选的,所述质量监测模型为通过对模型训练数据执行主成分分析得到的所述当前时间点的负载矩阵P;所述第二处理模块11,具体用于根据公式:Q=rTr得到所述待测样本数据在所述残差空间的统计量Q;其中,r=(I-PPT)xnew,所述I为单位矩阵,则所述判断模块12,具体用于判断所述待测样本数据在所述残差空间的统计量Q是否大于所述当前时间点的负载矩阵P对应至所述残差空间的统计量Qα;其中,所述cα是与(1-
α)分位点对应的标准差,α为检验水平,σ为待测样本数据的协方差矩阵的特征值。
[0132] 本发明实施例提供的视频流质量的监测装置,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。
[0133] 图10为本发明提供的视频流质量的监测装置实施例三的结构示意图。在上述图9所示的装置实施例的基础上,进一步地,上述装置还可以包括:
[0134] 模型建立模块13,用于根据客户端上报的视频日志信息,获取每个时间点对应的质量监测模型;其中,所述视频日志信息包括与所述视频播放相关的信息。
[0135] 继续参见图10所示,进一步地,所述模型建立模块13,可以包括:
[0136] 第四聚合单元131,用于针对每个时间点,对所述客户端上报的视频日志信息按照预设聚合类别进行聚合,得到每个聚合类别对应的第四聚合数据;
[0137] 第五聚合单元132,用于计算所述时间点下每个聚合类别对应的第四聚合数据与观看视频的总用户数之间的比值,得到每个聚合类别对应的第五聚合数据,并将所述时间点下的所有聚合类别对应的第五聚合数据在数据向量维度上进行合并,得到所述时间点对应的第六聚合数据;其中,所述第六聚合数据的数据向量维度的个数等于所述时间点对应的所有第五聚合数据的数据向量维度的个数之和;
[0138] 扩维单元133,用于将所述时间点对应的第六聚合数据进行扩维操作,得到所述时间点对应的模型数据;其中,所述扩维操作用于从数据向量维度和时间向量维度分别增加所述第六聚合数据的数据内容;
[0139] 建模单元134,用于基于所述时间点对应的模型数据,建立所述时间点对应的质量监测模型。
[0140] 继续参见图10所示,进一步地,所述扩维单元133,具体包括:
[0141] 第一扩维子单元21,用于针对每个时间点,获取位于所述时间点之前的C个时间点的第六聚合数据,并将所述时间点对应的第六聚合数据与所述C个时间点的第六聚合数据在数据向量维度上进行合并,得到所述时间点对应的第一扩展数据;其中,所述第一扩展数据的数据向量维度的个数等于所述C个时间点的第六聚合数据的数据向量维度和所述时间点对应的第六聚合数据的数据向量维度的个数之和;
[0142] 第二扩维子单元22,用于获取位于所述时间点之前的A个时间点的第一扩展数据和位于所述时间点之后的B-1个时间点的第一扩展数据,并将所述A个时间点的第一扩展数据、所述B-1个时间点的第一扩展数据以及所述时间点对应的第一扩展数据进行合并,得到所述时间点对应的第二扩展数据;其中,所述第二扩展数据的时间向量维度的个数等于A+B,所述A、B、C均为大于0的整数;
[0143] 处理子单元23,用于根据所述时间点对应的第二扩展数据,得到所述时间点对应的模型数据。
[0144] 一种可选的实现方式为,所述处理子单元23,具体用于:
[0145] 针对所述第二扩展数据中的每一数据向量维度的数据,将每一数据向量维度的数据减去所述数据向量维度上的数据的均值,得到所述数据向量维度对应的数据差值,并将所述数据向量维度对应的数据差值除以所述数据向量维度对应的数据标准差,得到所述数据向量维度对应的归一化后的数据;
[0146] 根据每一数据向量维度对应的归一化后的数据,得到所述时间点对应的第一归一化数据矩阵XN×n,并确定所述第一归一化数据矩阵XN×n为所述时间点对应的模型数据;
[0147] 其中,N为所述XN×n的样本数,所述样本数等于所述XN×n的时间向量维度的数目,所述n为所述XN×n的数据向量维度的数目。
[0148] 另一种可选的实现方式为,所述处理子单元23,具体用于:
[0149] 获取预设Y天内与所述时间点相同的时刻的第二扩展数据,并将所有第二扩展数据进行合并,得到第三扩展数据;其中,所述第三扩展数据的时间向量维度的个数等于Y乘以所述时间点对应的第二扩展数据的时间向量维度的个数的乘积;
[0150] 针对所述第三扩展数据中的每一数据向量维度的数据,将每一数据向量维度的数据减去所述数据向量维度上的数据的均值,得到所述数据向量维度对应的数据差值,并将所述数据向量维度对应的数据差值除以所述数据向量维度对应的数据标准差,得到所述数据向量维度对应的归一化后的数据;
[0151] 根据每一数据向量维度对应的归一化后的数据,得到所述时间点对应的第二归一化数据矩阵XN×n,并确定所述第二归一化数据矩阵为所述时间点对应的模型数据;
[0152] 其中,N为所述XN×n的样本数,所述样本数等于所述XN×n的时间向量维度的数目,所述n为所述XN×n的数据向量维度的数目。
[0153] 进一步地,所述建模单元134,具体用于利用主成分分析对每个时间点对应的XN×n进行降维操作,得到每个时间点对应的质量监测模型为负载矩阵P。
[0154] 可选的,所述建模单元134,还用于根据每个时间点对应的负载矩阵P,得到每个时间点对应的得分矩阵T和残差空间矩阵 并根据所述得分矩阵T和残差空间矩阵 得到每个时间点的质量监测模型对应至所述主元空间和/或所述残差空间的第二统计量。
[0155] 本发明实施例提供的视频流质量的监测装置,可以执行上述方法实施例,其实现原理和技术效果类似,在此不再赘述。
[0156] 图11为本发明实施例提供的服务端的结构示意图。如图11所示,该服务端包括:存储器31、处理器32和至少一个通信总线33;其中,所述存储器31用于存储代码;所述处理器32用于调用所述存储器31存储的代码,以执行上述方法实施例所涉及的方法。其中,通信总线33用于实现元件之间的通信连接。存储器31可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器,存储器31中可以存储各种程序,用于完成各种处理功能以及实现本实施例的方法步骤。
[0157] 本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
[0158] 最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。