CN113596021B - 一种支持神经网络的流媒体码率自适应方法、装置和设备 - Google Patents

一种支持神经网络的流媒体码率自适应方法、装置和设备 Download PDF

Info

Publication number
CN113596021B
CN113596021B CN202110854196.0A CN202110854196A CN113596021B CN 113596021 B CN113596021 B CN 113596021B CN 202110854196 A CN202110854196 A CN 202110854196A CN 113596021 B CN113596021 B CN 113596021B
Authority
CN
China
Prior art keywords
neural network
model
bit rate
qoe
throughput
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110854196.0A
Other languages
English (en)
Other versions
CN113596021A (zh
Inventor
蔡志平
王翊鹏
周桐庆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National University of Defense Technology
Original Assignee
National University of Defense Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by National University of Defense Technology filed Critical National University of Defense Technology
Priority to CN202110854196.0A priority Critical patent/CN113596021B/zh
Publication of CN113596021A publication Critical patent/CN113596021A/zh
Application granted granted Critical
Publication of CN113596021B publication Critical patent/CN113596021B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2407Monitoring of transmitted content, e.g. distribution time, number of downloads
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64723Monitoring of network processes or resources, e.g. monitoring of network load

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Biomedical Technology (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Biophysics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Computer Security & Cryptography (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Probability & Statistics with Applications (AREA)
  • Databases & Information Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请涉及一种支持神经网络的流媒体码率自适应方法、装置和计算机设备。所述方法包括:获取历史网络吞吐量测量值、预设的可用分辨率大小的向量和当前缓冲区占用信息,输入预先构建的贝叶斯神经网络中,输出下一时间段的吞吐量预测值,以预设的QoE指标最优化为目标,构建模型预测控制最优化模型,求解得到当前视频块的预测下载比特率;执行后根据QoE指标得到对应的奖励值,根据预测下载比特率和奖励值对贝叶斯神经网络进行持续训练,根据持续训练的贝叶斯神经网络和模型预测控制最优化模型自适应得到下载视频块的最佳比特率。本发明提高了吞吐量预测准确度和移动网络视频质量。

Description

一种支持神经网络的流媒体码率自适应方法、装置和设备
技术领域
本申请涉及计算机技术领域,特别是涉及一种支持神经网络的流媒体码率自适应方法、装置和计算机设备。
背景技术
根据思科VNI,到2022年,视频流量将占所有IP流量的80%以上,视频应用成为了流量绝对优势应用。在视频流量不断增长的同时,用户也需要更好的视频质量。近年来,出现了很多可以提高用户体验质量的技术,但这些技术中最核心的还是ABR算法,通过ABR算法来动态决定每个段的质量级别。ABR算法需要在高质量、最小再缓冲和较少的质量切换之间取得平衡来最大化整体QoE。
对于相对长时间的视频流传输,ABR算法如何预测未来网络和客户端情况对QoE有重大影响。原始的方案一般单纯基于缓冲区或者吞吐量,但由于指标过于单一,无法正确评估此时的客户端和网络情况,导致无法选择最优比特率。许多关于互联网视频流的工作都致力于设计更好的ABR算法,现有的算法仍然需要进一步的改进。目前最先进的ABR算法都利用神经网络设计自适应。但是,由于神经网络方案需要更多的资源,这样的预测具有滞后性,通常无法正确反映此时的比特率,因此ABR算法可能无法得到最平衡的QoE。
发明内容
基于此,有必要针对上述技术问题,提供一种能够支持在线质量自适应的支持神经网络的流媒体码率自适应方法、装置、计算机设备和存储介质。
一种支持神经网络的流媒体码率自适应方法,所述方法包括:
获取前n个时间段视频块的历史网络吞吐量测量值、预设的可用分辨率大小的向量和当前缓冲区占用信息,将所述历史网络吞吐量测量值、所述分辨率大小的向量和所述当前缓冲区占用信息输入预先构建的贝叶斯神经网络中,通过所述贝叶斯神经网络输出下一时间段的吞吐量预测值;
获取前一时间段视频块的QoE信息,根据所述吞吐量预测值、所述当前缓冲区占用信息和所述QoE信息,以预设的QoE指标最优化为目标,构建模型预测控制最优化模型,求解所述模型预测控制最优化模型得到当前视频块的预测下载比特率;
执行所述预测下载比特率后,根据所述QoE指标得到对应的奖励值,根据所述预测下载比特率和所述奖励值对所述贝叶斯神经网络进行持续训练;
在视频播放过程中,根据持续训练的贝叶斯神经网络和所述模型预测控制最优化模型自适应得到下载视频块的最佳比特率。
在其中一个实施例中,还包括:所述贝叶斯神经网络是通过反向传播方式构建的。
在其中一个实施例中,还包括:所述预设的QoE指标为:一般延迟时间、启动延迟时间和缓冲时间。
在其中一个实施例中,还包括:所述前一视频块的QoE信息为前一时间段下载视频块的比特率。
在其中一个实施例中,还包括:当播放器处于启动阶段时,根据所述吞吐量预测值、所述当前缓冲区占用信息和所述QoE信息,以预设的QoE指标最优化为目标,构建第二模型预测控制最优化模型;
求解所述第二模型预测控制最优化模型得到当前视频块的预测下载比特率和启动时间。
在其中一个实施例中,还包括:以所述预测下载比特率下载当前视频块;
当播放器处于启动阶段时,在开始播放之前等待所述启动时间。
在其中一个实施例中,还包括:根据所述预测下载比特率和所述奖励值,通过随机梯度下降法,对所述贝叶斯神经网络进行持续训练。
一种支持神经网络的流媒体码率自适应装置,所述装置包括:
吞吐量预测值获取模块,用于获取前n个时间段视频块的历史网络吞吐量测量值、预设的可用分辨率大小的向量和当前缓冲区占用信息,将所述历史网络吞吐量测量值、所述分辨率大小的向量和所述当前缓冲区占用信息输入预先构建的贝叶斯神经网络中,通过所述贝叶斯神经网络输出下一时间段的吞吐量预测值;
预测下载比特率求解模块,用于获取前一时间段视频块的QoE信息,根据所述吞吐量预测值、所述当前缓冲区占用信息和所述QoE信息,以预设的QoE指标最优化为目标,构建模型预测控制最优化模型,求解所述模型预测控制最优化模型得到当前视频块的预测下载比特率;
训练模块,用于执行所述预测下载比特率后,根据所述QoE指标得到对应的奖励值,根据所述预测下载比特率和所述奖励值对所述贝叶斯神经网络进行持续训练;
应用模块,用于在视频播放过程中,根据持续训练的贝叶斯神经网络和所述模型预测控制最优化模型自适应得到下载视频块的最佳比特率。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取前n个时间段视频块的历史网络吞吐量测量值、预设的可用分辨率大小的向量和当前缓冲区占用信息,将所述历史网络吞吐量测量值、所述分辨率大小的向量和所述当前缓冲区占用信息输入预先构建的贝叶斯神经网络中,通过所述贝叶斯神经网络输出下一时间段的吞吐量预测值;
获取前一时间段视频块的QoE信息,根据所述吞吐量预测值、所述当前缓冲区占用信息和所述QoE信息,以预设的QoE指标最优化为目标,构建模型预测控制最优化模型,求解所述模型预测控制最优化模型得到当前视频块的预测下载比特率;
执行所述预测下载比特率后,根据所述QoE指标得到对应的奖励值,根据所述预测下载比特率和所述奖励值对所述贝叶斯神经网络进行持续训练;
在视频播放过程中,根据持续训练的贝叶斯神经网络和所述模型预测控制最优化模型自适应得到下载视频块的最佳比特率。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取前n个时间段视频块的历史网络吞吐量测量值、预设的可用分辨率大小的向量和当前缓冲区占用信息,将所述历史网络吞吐量测量值、所述分辨率大小的向量和所述当前缓冲区占用信息输入预先构建的贝叶斯神经网络中,通过所述贝叶斯神经网络输出下一时间段的吞吐量预测值;
获取前一时间段视频块的QoE信息,根据所述吞吐量预测值、所述当前缓冲区占用信息和所述QoE信息,以预设的QoE指标最优化为目标,构建模型预测控制最优化模型,求解所述模型预测控制最优化模型得到当前视频块的预测下载比特率;
执行所述预测下载比特率后,根据所述QoE指标得到对应的奖励值,根据所述预测下载比特率和所述奖励值对所述贝叶斯神经网络进行持续训练;
在视频播放过程中,根据持续训练的贝叶斯神经网络和所述模型预测控制最优化模型自适应得到下载视频块的最佳比特率。
上述支持神经网络的流媒体码率自适应方法、装置、计算机设备和存储介质,通过获取前n个时间段视频块的历史网络吞吐量测量值、预设的可用分辨率大小的向量和当前缓冲区占用信息,输入预先构建的贝叶斯神经网络中,通过贝叶斯神经网络输出下一时间段的吞吐量预测值,根据吞吐量预测值、当前缓冲区占用信息和获取的前一时间段视频块的QoE信息,以预设的QoE指标最优化为目标,构建模型预测控制最优化模型,求解模型预测控制最优化模型得到当前视频块的预测下载比特率;执行预测下载比特率后,根据QoE指标得到对应的奖励值,根据预测下载比特率和奖励值对贝叶斯神经网络进行持续训练;在视频播放过程中,根据持续训练的贝叶斯神经网络和模型预测控制最优化模型自适应得到下载视频块的最佳比特率。本发明利用贝叶斯神经网络指导视频比特率自适应,提高吞吐量预测准确度,通过模型预测控制可以将吞吐量大小和缓冲区占有率结合起来,提高移动网络视频质量。
附图说明
图1为一个实施例中支持神经网络的流媒体码率自适应方法的系统图;
图2为一个实施例中支持神经网络的流媒体码率自适应方法的流程示意图;
图3为一个实施例中支持神经网络的流媒体码率自适应装置的结构框图;
图4为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的支持神经网络的流媒体码率自适应方法,可以应用于如图1所示的应用环境中。其中,客户端执行一种支持神经网络的流媒体码率自适应方法,通过输出下一时间段的吞吐量预测值,根据吞吐量预测值、当前缓冲区占用信息和获取的前一时间段视频块的QoE信息,以预设的QoE指标最优化为目标,构建模型预测控制最优化模型,求解得到当前视频块的预测下载比特率为当前的最佳比特率。其中,客户端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种支持神经网络的流媒体码率自适应方法,包括以下步骤:
步骤202,获取前n个时间段视频块的历史网络吞吐量测量值、预设的可用分辨率大小的向量和当前缓冲区占用信息,将历史网络吞吐量测量值、分辨率大小的向量和当前缓冲区占用信息输入预先构建的贝叶斯神经网络中,通过贝叶斯神经网络输出下一时间段的吞吐量预测值。
吞吐量是指对网络、设备、端口、虚电路或其他设施,单位时间内成功地传送数据的数量。预设的可用分辨率大小可以是720p,1080p,2k等。
贝叶斯神经网络简单来说可以理解为通过为神经网络的权重引入不确定性进行正则化,贝叶斯神经网络通过参数执行后验推断,从而防止过拟合。构建贝叶斯神经网络的方法有很多种。在本发明中,利用反向传播的贝叶斯方法构建贝叶斯CNN。关于神经网络权重的精确贝叶斯推断是难以处理的,因为参数数量非常多,而且神经网络的函数形式不适合精确积分。因此,具体实施时,本发明用具有方差的概率分布来近似难以处理的真实后验估计概率分布,这符合表示为概率分布的高斯分布的性质。高斯变分后验分布的形状由它们的方差决定,表示每个模型参数估计的不确定性。
码率自适应算法必须避免一系列流媒体问题,如视频不稳定、质量震荡和缓冲区饥饿,同时改善观众的QoE。
本发明利用贝叶斯神经网络指导视频比特率自适应,使用概率分布而不是普通神经网络的点估计来预测吞吐量,可以提高吞吐量预测准确度。
具体地,下载每个块t后,状态st=(Xt,Nt,Bt),将输入到贝叶斯神经网络。Xt是过去k个视频块的网络吞吐量测量值;Nt是下一个视频块的多个可用大小的向量;Bt为当前缓冲区占用情况。
步骤204,获取前一时间段视频块的QoE信息,根据吞吐量预测值、当前缓冲区占用信息和QoE信息,以预设的QoE指标最优化为目标,构建模型预测控制最优化模型,求解模型预测控制最优化模型得到当前视频块的预测下载比特率。
理想情况下,给定视频[tk,tk+1],QoE优化问题可以直接通过最优比特率R1,···Rk和启动延迟T计算。然而,在实践中,无法获得这些完美的信息,因此很难离线优化最优解。尽管无法获得关于未来整体的完美信息,但有可能在未来[tk,tk+n]的短时间内获得相当准确的吞吐量预测。这是因为网络条件在短时间内非常稳定,并且在几十秒内不会发生剧烈变化。因此,可以通过应用模型预测控制得到的序列的第一个比特率Rk,并将水平线向前移动到[tk,tk+1]来使用吞吐量的这一特性来运行QoE优化。这就是模型预测控制(MPC)。
模型预测控制(MPC)是一类特殊的控制方法。它的当前控制动作是在每一个采样瞬间通过求解一个有限时域开环最优控制问题获得的。过程的当前状态作为最优控制问题的初始状态。本质上模型预测控制是对一个开环最优控制问题进行求解。
基本组成:
(1)预测模型
根据系统的现时刻的控制输入以及过程的历史信息,预测过程输出的未来值,因此,需要一个描述系统动态行为的模型作为预测模型。预测模型具有展示过程未来动态行为的功能,这样就可像在系统仿真时那样,任意的给出未来控制策略,观察过程不同控制策略下的输出变化,从而为比较这些控制策略的优劣提供了基础。
(2)反馈校正
在预测控制中,采用预测模型进行过程输出值的预估只是一种理想的方式,在实际过程中。由于存在非线性、模型失配和干扰等不确定因素,使基于模型的预测不可能准确地与实际相符。因此,在预测控制中,通过输出的测量值Y(k)与模型的预估值Ym(k)进行比较,得出模型的预测误差,再利用模型预测误差来对模型的预测值进行修正。由于对模型施加了反馈校正的过程,使预测控制具有很强的抗扰动和克服系统不确定性的能力。预测控制中不仅基于模型,而且利用了反馈信息,因此预测控制是一种闭环优化控制算法。
(3)滚动优化
预测控制是一种优化控制算法,需要通过某一性能指标的最优化来确定未来的控制作用。这一性能指标还涉及到过程未来的行为,它是根据预测模型由未来的控制策略决定的。但预测控制中的优化与通常的离散最优控制算法不同,它不是采用一个不变的全局最优目标,而是采用滚动式的有限时域优化策略。即优化过程不是一次离线完成的,而是反复在线进行的。在每一采样时刻,优化性能指标只涉及从该时刻起到未来有限的时间,而到下一个采样时刻,这一优化时段会同时向前。所以,预测控制不是用一个对全局相同的优化性能指标,而是在每一个时刻有一个相对于该时刻的局部优化性能指标。
模型预测控制可以直接利用基于比特率的反馈信号和基于缓冲器的反馈信号的组合。根据吞吐量预测值、当前缓冲区占用信息和QoE信息,以预设的QoE指标最优化为目标,构建模型预测控制最优化模型,通过客户端的调度,可以从较低质量的版本中获得高质量的版本。MPC可以下载适合此时网络状态的段,当网络状态突然变动时可以减小再缓冲。如果网络条件较好,就可以升级为更高质量的段。MPC可以消除网络波动、提高灵活性以及改善QoE。
具体地,给定当前缓冲区占用Bk,先前比特率Rk-1和吞吐量预测
Figure BDA0003183486020000081
找到最佳比特率
Figure BDA0003183486020000082
通过求解模型预测控制最优化模型QOE_MAX_STEADY来实现。
步骤206,执行预测下载比特率后,根据QoE指标得到对应的奖励值,根据预测下载比特率和奖励值对贝叶斯神经网络进行持续训练。
奖励必须能够反映每个块下载的性能,从而优化特定的QoE指标。
步骤208,在视频播放过程中,根据持续训练的贝叶斯神经网络和模型预测控制最优化模型自适应得到下载视频块的最佳比特率。
码率自适应方案会根据可用带宽、缓冲区大小等指标来调整视频比特率。算法输入一个或多个指标,以便为下一个要下载的片段选择适当的比特率水平。
上述支持神经网络的流媒体码率自适应方法中,通过获取前n个时间段视频块的历史网络吞吐量测量值、预设的可用分辨率大小的向量和当前缓冲区占用信息,输入预先构建的贝叶斯神经网络中,通过贝叶斯神经网络输出下一时间段的吞吐量预测值,根据吞吐量预测值、当前缓冲区占用信息和获取的前一时间段视频块的QoE信息,以预设的QoE指标最优化为目标,构建模型预测控制最优化模型,求解模型预测控制最优化模型得到当前视频块的预测下载比特率;执行预测下载比特率后,根据QoE指标得到对应的奖励值,根据预测下载比特率和奖励值对贝叶斯神经网络进行持续训练;在视频播放过程中,根据持续训练的贝叶斯神经网络和模型预测控制最优化模型自适应得到下载视频块的最佳比特率。本发明利用贝叶斯神经网络指导视频比特率自适应,提高吞吐量预测准确度,通过模型预测控制可以将吞吐量大小和缓冲区占有率结合起来,提高移动网络视频质量。
在其中一个实施例中,还包括:贝叶斯神经网络是通过反向传播方式构建的。
在其中一个实施例中,还包括:预设的QoE指标为:一般延迟时间、启动延迟时间和缓冲时间。
在其中一个实施例中,还包括:前一视频块的QoE信息为前一时间段下载视频块的比特率。
在其中一个实施例中,还包括:当播放器处于启动阶段时,根据吞吐量预测值、当前缓冲区占用信息和QoE信息,以预设的QoE指标最优化为目标,构建第二模型预测控制最优化模型;求解第二模型预测控制最优化模型得到当前视频块的预测下载比特率和启动时间。
具体地,给定当前缓冲区占用Bk,先前比特率Rk-1和吞吐量预测
Figure BDA0003183486020000091
在启动阶段也优化了启动时间,
Figure BDA0003183486020000092
通过求解第二模型预测控制最优化模型QOE_MAX实现。
在其中一个实施例中,还包括:以预测下载比特率下载当前视频块;当播放器处于启动阶段时,在开始播放之前等待启动时间。
在其中一个实施例中,还包括:根据预测下载比特率和奖励值,通过随机梯度下降法,对贝叶斯神经网络进行持续训练。
应该理解的是,虽然图2的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图3所示,提供了一种支持神经网络的流媒体码率自适应装置,包括:吞吐量预测值获取模块302、预测下载比特率求解模块304、训练模块306和应用模块308,其中:
吞吐量预测值获取模块302,用于获取前n个时间段视频块的历史网络吞吐量测量值、预设的可用分辨率大小的向量和当前缓冲区占用信息,将历史网络吞吐量测量值、分辨率大小的向量和当前缓冲区占用信息输入预先构建的贝叶斯神经网络中,通过贝叶斯神经网络输出下一时间段的吞吐量预测值;
预测下载比特率求解模块304,用于获取前一时间段视频块的QoE信息,根据吞吐量预测值、当前缓冲区占用信息和QoE信息,以预设的QoE指标最优化为目标,构建模型预测控制最优化模型,求解模型预测控制最优化模型得到当前视频块的预测下载比特率;
训练模块306,用于执行预测下载比特率后,根据QoE指标得到对应的奖励值,根据预测下载比特率和奖励值对贝叶斯神经网络进行持续训练;
应用模块308,用于在视频播放过程中,根据持续训练的贝叶斯神经网络和模型预测控制最优化模型自适应得到下载视频块的最佳比特率。
预测下载比特率求解模块304还用于当播放器处于启动阶段时,根据吞吐量预测值、当前缓冲区占用信息和QoE信息,以预设的QoE指标最优化为目标,构建第二模型预测控制最优化模型;求解第二模型预测控制最优化模型得到当前视频块的预测下载比特率和启动时间。
训练模块306还用于以预测下载比特率下载当前视频块;当播放器处于启动阶段时,在开始播放之前等待启动时间。
训练模块306还用于根据预测下载比特率和奖励值,通过随机梯度下降法,对贝叶斯神经网络进行持续训练。
关于支持神经网络的流媒体码率自适应装置的具体限定可以参见上文中对于支持神经网络的流媒体码率自适应方法的限定,在此不再赘述。上述支持神经网络的流媒体码率自适应装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图4所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种支持神经网络的流媒体码率自适应方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图4中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现上述方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种支持神经网络的流媒体码率自适应方法,其特征在于,所述方法包括:
获取前n个时间段视频块的历史网络吞吐量测量值、预设的可用分辨率大小的向量和当前缓冲区占用信息,将所述历史网络吞吐量测量值、所述分辨率大小的向量和所述当前缓冲区占用信息输入预先构建的贝叶斯神经网络中,通过所述贝叶斯神经网络输出下一时间段的吞吐量预测值;
获取前一时间段视频块的QoE信息,根据所述吞吐量预测值、所述当前缓冲区占用信息和所述QoE信息,以预设的QoE指标最优化为目标,构建模型预测控制最优化模型,求解所述模型预测控制最优化模型得到当前视频块的预测下载比特率;
执行所述预测下载比特率后,根据所述QoE指标得到对应的奖励值,根据所述预测下载比特率和所述奖励值对所述贝叶斯神经网络进行持续训练;
在视频播放过程中,根据持续训练的贝叶斯神经网络和所述模型预测控制最优化模型自适应得到下载视频块的最佳比特率。
2.根据权利要求1所述的方法,其特征在于,获取前n个时间段视频块的历史网络吞吐量测量值、预设的可用分辨率大小的向量和当前缓冲区占用信息,将所述历史网络吞吐量测量值、所述分辨率大小的向量和所述当前缓冲区占用信息输入预先构建的贝叶斯神经网络中,通过所述贝叶斯神经网络输出下一时间段的吞吐量预测值,包括:
获取前n个时间段视频块的历史网络吞吐量测量值、预设的可用分辨率大小的向量和当前缓冲区占用信息,将所述历史网络吞吐量测量值、所述分辨率大小的向量和所述当前缓冲区占用信息输入预先构建的贝叶斯神经网络中,通过所述贝叶斯神经网络输出下一时间段的吞吐量预测值;所述贝叶斯神经网络是通过反向传播方式构建的。
3.根据权利要求2所述的方法,其特征在于,获取前一时间段视频块的QoE信息,根据所述吞吐量预测值、所述当前缓冲区占用信息和所述QoE信息,以预设的QoE指标最优化为目标,构建模型预测控制最优化模型,包括:
获取前一时间段视频块的QoE信息,根据所述吞吐量预测值、所述当前缓冲区占用信息和所述QoE信息,以预设的QoE指标最优化为目标,构建模型预测控制最优化模型;所述预设的QoE指标为:一般延迟时间、启动延迟时间和缓冲时间。
4.根据权利要求3所述的方法,其特征在于,获取前一时间段视频块的QoE信息,包括:
获取前一视频块的QoE信息;所述前一视频块的QoE信息为前一时间段下载视频块的比特率。
5.根据权利要求4所述的方法,其特征在于,根据所述吞吐量预测值、所述当前缓冲区占用信息和所述QoE信息,以预设的QoE指标最优化为目标,构建模型预测控制最优化模型,求解所述模型预测控制最优化模型得到当前视频块的预测下载比特率,还包括:
当播放器处于启动阶段时,根据所述吞吐量预测值、所述当前缓冲区占用信息和所述QoE信息,以预设的QoE指标最优化为目标,构建第二模型预测控制最优化模型;
求解所述第二模型预测控制最优化模型得到当前视频块的预测下载比特率和启动时间。
6.根据权利要求5所述的方法,其特征在于,执行所述预测下载比特率,包括:
以所述预测下载比特率下载当前视频块;
当播放器处于启动阶段时,在开始播放之前等待所述启动时间。
7.根据权利要求1至6任意一项所述的方法,其特征在于,根据所述预测下载比特率和所述奖励值对所述贝叶斯神经网络进行持续训练,包括:
根据所述预测下载比特率和所述奖励值,通过随机梯度下降法,对所述贝叶斯神经网络进行持续训练。
8.一种支持神经网络的流媒体码率自适应装置,其特征在于,所述装置包括:
吞吐量预测值获取模块,用于获取前n个时间段视频块的历史网络吞吐量测量值、预设的可用分辨率大小的向量和当前缓冲区占用信息,将所述历史网络吞吐量测量值、所述分辨率大小的向量和所述当前缓冲区占用信息输入预先构建的贝叶斯神经网络中,通过所述贝叶斯神经网络输出下一时间段的吞吐量预测值;
预测下载比特率求解模块,用于获取前一时间段视频块的QoE信息,根据所述吞吐量预测值、所述当前缓冲区占用信息和所述QoE信息,以预设的QoE指标最优化为目标,构建模型预测控制最优化模型,求解所述模型预测控制最优化模型得到当前视频块的预测下载比特率;
训练模块,用于执行所述预测下载比特率后,根据所述QoE指标得到对应的奖励值,根据所述预测下载比特率和所述奖励值对所述贝叶斯神经网络进行持续训练;
应用模块,用于在视频播放过程中,根据持续训练的贝叶斯神经网络和所述模型预测控制最优化模型自适应得到下载视频块的最佳比特率。
9.根据权利要求8所述的装置,其特征在于,所述预测下载比特率求解模块还用于当播放器处于启动阶段时,根据所述吞吐量预测值、所述当前缓冲区占用信息和所述QoE信息,以预设的QoE指标最优化为目标,构建第二模型预测控制最优化模型;求解所述第二模型预测控制最优化模型得到当前视频块的预测下载比特率和启动时间。
10.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
CN202110854196.0A 2021-07-28 2021-07-28 一种支持神经网络的流媒体码率自适应方法、装置和设备 Active CN113596021B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110854196.0A CN113596021B (zh) 2021-07-28 2021-07-28 一种支持神经网络的流媒体码率自适应方法、装置和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110854196.0A CN113596021B (zh) 2021-07-28 2021-07-28 一种支持神经网络的流媒体码率自适应方法、装置和设备

Publications (2)

Publication Number Publication Date
CN113596021A CN113596021A (zh) 2021-11-02
CN113596021B true CN113596021B (zh) 2023-02-07

Family

ID=78250851

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110854196.0A Active CN113596021B (zh) 2021-07-28 2021-07-28 一种支持神经网络的流媒体码率自适应方法、装置和设备

Country Status (1)

Country Link
CN (1) CN113596021B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114025190B (zh) * 2021-11-03 2023-06-20 北京达佳互联信息技术有限公司 多码率调度方法和多码率调度装置
CN114040230B (zh) * 2021-11-08 2024-03-29 北京达佳互联信息技术有限公司 视频码率确定方法、装置、电子设备及其存储介质
CN114363677A (zh) * 2021-12-02 2022-04-15 深圳市新田科技有限公司 基于深度学习的移动网络视频码率实时调整方法和装置
CN114885208B (zh) * 2022-03-21 2023-08-08 中南大学 Ndn网络下可伸缩流媒体传输的动态自适应方法、设备及介质
CN115022684B (zh) * 2022-05-27 2023-08-04 西安交通大学 一种quic协议下基于深度强化学习的视频流自适应传输方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10271112B2 (en) * 2015-03-26 2019-04-23 Carnegie Mellon University System and method for dynamic adaptive video streaming using model predictive control
US11509703B2 (en) * 2018-09-26 2022-11-22 Vmware, Inc. System and method for widescale adaptive bitrate selection
CN110248247B (zh) * 2019-06-12 2021-08-17 深圳市大数据研究院 基于网络吞吐量的嵌入式动态视频播放控制方法及装置
CN110430440B (zh) * 2019-06-19 2021-11-30 鹏城实验室 视频传输方法、系统、计算机设备和存储介质

Also Published As

Publication number Publication date
CN113596021A (zh) 2021-11-02

Similar Documents

Publication Publication Date Title
CN113596021B (zh) 一种支持神经网络的流媒体码率自适应方法、装置和设备
Zhong et al. A deep reinforcement learning-based framework for content caching
Yu et al. Federated learning based proactive content caching in edge computing
Gadaleta et al. D-DASH: A deep Q-learning framework for DASH video streaming
US20140344344A1 (en) Pre-fetching in distributed computing environments
Zhang et al. Federated learning with adaptive communication compression under dynamic bandwidth and unreliable networks
WO2019223443A1 (zh) 数据库配置参数处理方法、装置、计算机设备和存储介质
CN111258762A (zh) 一种动态周期的媒体服务器负载均衡算法
Mehrizi et al. Online spatiotemporal popularity learning via variational bayes for cooperative caching
Sun et al. Tightrope walking in low-latency live streaming: Optimal joint adaptation of video rate and playback speed
Bommaraveni et al. Active content popularity learning and caching optimization with hit ratio guarantees
Jiang et al. Federated learning-based content popularity prediction in fog radio access networks
Hafez et al. Reinforcement learning-based rate adaptation in dynamic video streaming
WO2023142351A1 (zh) 权重的调整方法和装置、存储介质及电子装置
CN114157578B (zh) 网络状态预测方法及装置
Xie et al. Deep Curriculum Reinforcement Learning for Adaptive 360$^{\circ} $ Video Streaming With Two-Stage Training
US20220318649A1 (en) Method and apparatus for adapting machine learning to changes in user interest
CN114422826B (zh) 多媒体内容播放控制方法、装置、设备和介质
Bommaraveni et al. Active Popularity Learning with Cache Hit Ratio Guarantees using a Matrix Completion Committee
US20220004415A1 (en) Latency-based selection of a virtual device platform on which to load a virtual device
CN114510627A (zh) 对象推送方法、装置、电子设备及存储介质
Chen et al. The cask effect of multi-source content delivery: Measurement and mitigation
US20230216811A1 (en) Method and apparatus for managing network traffic via uncertainty
Singha Roy et al. Scalable Deep Q-Learning for Session-Based Slate Recommendation
Wang et al. Next-Word Prediction: A Perspective of Energy-Aware Distributed Inference

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant