吴修权 钟其柱
【摘 要】通过Python Scrapy的方法获取终端数据,结合PCA降维和监督学习的方式研究了多个终端指标对用户感知的影响,挖掘不同终端以及指标对VoLTE视频通话感知的影响。结合移动终端领域、计算机软件领域和机器学习中的神经网络优化模型,建立了一个手机设备端硬件指标对VoLTE视频通话重要参数的影响指标体系模型。通过AUC等模型检验指标体系模型,评估模型AUC值达到0.7,验证了该方法的有效性。
【关键词】VoLTE视频通话;机器学习;终端设备;AUC
doi:10.3969/j.issn.1006-1010.2019.08.008 中图分类号:TN929.5
文献标志码:A 文章编号:1006-1010(2019)08-0045-06
引用格式:吴修权,钟其柱. 基于监督学习的VoLTE视频通话感知评估方法[J]. 移动通信, 2019,43(8): 45-50.
[Abstract] Through obtaining terminal data with Python's Scrapy method, the combination of PCA dimension reduction and supervised learning is then adopted to study the impact of multiple terminal indicators on user perception and explore the impact of different terminals and terminal indicators on VoLTE video call perception. Combining the neural network optimization models in the fields of mobile terminal, computer software and machine learning, an indicator system model is established to investigate the impact of mobile device hardware indicators on the important parameters of VoLTE video call. Finally, using AUC models to test the indicator system, the AUC value of the evaluation model reaches 0.7, which verifies its effectiveness.
[Key words] VoLTE video call; machine learning; terminal equipment; AUC
1 引言
随着通信网络的发展,最初的语音方案逐步显露出问题。为了提高用户通话质量,运营商加快了VoLTE视频语音方案的部署。但VoLTE视频通话也出现花屏、卡顿、色彩等方面不同程度的问题,用户体验较差。因此,提升VoLTE视频通话用户体验成为运营商面临的新挑战[1]。
目前业界对视频用户体验的研究大部分都只是停留在用户体验、视频质量评估方面的理论研究。对于终端硬件的分析还没有可实际应用的产品和模型。文献[2]和文献[3]基于线性回归的方法研究了视频序列质量评估算法,但是其算法主要针对视频的质量差异进行评估,未真实反映用户的体验质量。文献[4]以视频流媒体为背景,建立了随机模型评价指标,根据QoE(Quality of Experience,体验质量)值对评价体系进行评分,得到视频业务的QoE评价模型。但该模型局限于QoE对指标权重的主观判断,并未考虑不同终端指标的区别,不具备普遍性。文献[5]通过对比各类视频的评估方法,利用PEVQ(Perceptual Evaluation of Video Quality,视频质量感知评估)算法,研究TD(Time Division,时分)视频通话质量评估系统。该方案主要对TD网络进行优化并开展视频通话质量评估系统的设计,没有考虑终端硬件指标的综合影响,忽略了多因素叠加对效果的影響。
针对上述研究中存在的问题,本文提出了一种基于监督学习的VoLTE视频终端硬件指标的感知方法,该方法研究终端因素对VoLTE视频通话质量的影响。利用其处理器、屏幕、摄像头、音频输出、视频输出等关键参数,得出用户实际使用评分,结合机器学习的神经网络监督机制方法,建立VoLTE视频通话质量评估模型,分析出用户最真实的感知。
2 因素分类
对于VoLTE视频通话的影响因素,除了网络原因造成的质量问题外,其终端因素也会产生影响。终端硬件的优劣是直接影响用户VoLTE视频感知的重要因素,其因素主要包括处理器、图形处理器、主频、屏幕像素、摄像头像素等[6],其像素因素与视频质量的关系如表1所示。
由表1可以看出,终端的像素及分辨率越高,视频的感知效果越好。本文根据终端的各个参数的特征,总结归纳三个特征参数来评估终端对VoLTE视频通话的影响,完成参数与视频通话质量的映射。
(1)终端处理能力
要使视频的感知效果越好,对终端处理芯片的计算能力要求也就越高。因此终端视频处理能力的提升,是实现高效压缩算法的硬件保障[5]。
(2)摄像头能力
该功能决定了视频像素的能力,同时也能够反映出视频通话的质量,是用户通话质量的直接影响因素。
(3)视频编解码器性能
该功能能够对数字视频进行压缩或者解压缩,是影响视频质量的关键因素。
本方案按照监督学习的方法分析终端用户的感知影响,结合爬虫技术(一种按照一定的规则,自动地抓取万维网信息的程序或者脚本)和PCA(Principal Components Analysis,主成分分析)对终端参数进行特征分析,运用降维和特征归纳的方法,精确得出评估结果。利用机器学习在实际使用中的延展性,为VoLTE视频通话感知评估提供了有效和智能的解决方法。
3 原理和方法
为构建终端参数的数据集,本方案通过终端浏览的相关网站,采用Python Scrapy框架对浏览的手机网站进行爬虫,获取手机设备(均为测试机)的硬件信息。再结合监督机制的机器学习对数据集自主特征进行选择学习,利用神经网络模型对终端参数进行特征提取及训练,最后通过AUC(Area Under Curve)、ROC(Price Rate of Change,变动率指标)模型对本方案建立的模型进行验证,从而完成终端对VoLTE视频通话质量的评估及优化,其整体架构如图1所示。
3.1 数据集的构建
终端参数的数据集的构建是保证数据真实性的基础,保证机器学习和神经网络模型性能的一个关键因素。为此本节基于网络爬虫,通过Python的Scrapy框架对各大手机设备网站进行爬虫,提取终端结构化数据,其流程如图2所示:
通过终端浏览网页发送的HTTP(Hyper Text Transfer Protocol,超文本传输协议)网站信息,Scrapy是通过定义Scrapy Items实现终端信息的抓取,得到网页中的实体。通过网站爬虫解析后,将爬虫的数据发送到机器进行处理并利用特定的次序处理数据。然后交给实体管道进一步处理并入库。
为了增加机器学习的神经网络模型的可靠性,将爬虫得到的终端原始数据进行整合、降维、转换并进行特征选择,获取终端特征参数,建立可靠的终端数据集,以提高模型的准确性。
(1)数据整合
爬虫数据和测试数据的清洗工作主要内容其实是如何将多用户的评分结果进行整合,对于同一次VoLTE视频通话的结果进行平均,平均后的数据作为最后的评分。
(2)数据降维与转换
针对上述数据用PCA算法进行降维处理。算法如下:
3.2 机器学习模型构建
数据特征标准化后,需要根据数据的特点选择不同的数学模型。针对用户进行VoLTE视频通话遇到的质量问题,需要建立一个有监督的机器学习模型。而神经网络模型是通过选择适当的隐含单元和网络层次对于一组输入和输出数据之间的关系进行建模,具有监督机制的机器学习,符合本方案的要求。并且其拥有强大的拟合能力,能够描述任何规模数据集之间的关系。其算法如下:
(1)根据得到的数据集确定此模型输入层的神经元个数。根据终端参数特征,全连接神经网络包含1个输入层、1个输出层和2个隐含层。
(2)初始化神经网络权重并设置学习率。运用服从标准正太分布的随机数来设置初始权重,选择一个作为基准,确定一个最好的算法方案。
(3)使用Sigmoid函数作为激活函数,该函数能够对数据进行非线性变化,将输入值压缩到0~1,使之有强大的解析数据的能力。
Sigmoid函数公式为:
Sigmoid(x)=1/(1+ex) (3)
(4)反向传播。本步骤需要定义损失函数,计算损失函数关于神经网络中各层的权重的偏导数(梯度),使用梯度下降的方式优化神经网络参数。
(5)重复以上过程,直到模型收敛为止。
随着训练次数的增加,模型的损失值震荡减少。当模型损失值不再变化时,表示训练结束,说明模型已经收敛。
3.3 模型验证
为了验证本方案机器学习的神经网络模型的算法可行性,本文采用准确率、ROC曲线和AUC面积模型相结合的方法来衡量模型优劣的指标。与准确率和ROC曲线相比较,AUC面积更能保证模型的准确度,如图3所示。
4 效果分析
本方案采用神经网络的机器學习模型对采集的终端信息数据进行清洗、预处理等操作,然后对模型数据进行训练,得出评估结果,具体算法如图4所示。
为了验证本方案的机器学习的神经网络模型的算法可行性,采用AUC模型对本方案进行准确度验证,如图5所示。
可以看出:ROC越往上,分类器效果越好。本方案模型出来的AUC值是0.7,效果比较好。从上述实验结果可以看出:基于监督学习建模的算法和现有的评估模型算法相比[7],其能降低终端特征值的维度并提高标准化的准确率。
为了进一步验证本方案模型的优越性,本文选取市面常见的11款终端,根据Python的Scrapy架构及功能对终端发送的HTTP信息进行爬虫,建立数据集,然后通过Scrapy中Item Loaders数据处理功能,对入库终端信息进行增加解释或者清洗,从而获取手机设备的硬件信息的原始数据,包括数据类型及参数,如表3所示。
数据输入模型对采集的数据进行整合、降维、转换和特征选择,得到终端的参数及MOS值,测试评估结果如表4所示。
将数据集输入机器学习的神经网络模型,模拟不同终端对VoLTE视频指标的影响,具体实验结果如表5所示。
对比VoLTE指标排名情况与算法评分结果,终端的实际指标情况与终端评分结果吻合,本算法在多终端多维度评估VoLTE视频通话感知的结果较准确。