CN116962414A - 一种基于无服务器计算的自适应视频流传输方法及系统 - Google Patents
一种基于无服务器计算的自适应视频流传输方法及系统 Download PDFInfo
- Publication number
- CN116962414A CN116962414A CN202310926231.4A CN202310926231A CN116962414A CN 116962414 A CN116962414 A CN 116962414A CN 202310926231 A CN202310926231 A CN 202310926231A CN 116962414 A CN116962414 A CN 116962414A
- Authority
- CN
- China
- Prior art keywords
- video
- function
- server
- bit rate
- state
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 76
- 230000005540 biological transmission Effects 0.000 title claims abstract description 26
- 238000004364 calculation method Methods 0.000 title claims abstract description 16
- 230000006870 function Effects 0.000 claims abstract description 166
- 230000008569 process Effects 0.000 claims abstract description 37
- 238000005457 optimization Methods 0.000 claims abstract description 24
- 230000002787 reinforcement Effects 0.000 claims abstract description 24
- 230000004044 response Effects 0.000 claims abstract description 11
- 230000002829 reductive effect Effects 0.000 claims abstract description 7
- 230000009471 action Effects 0.000 claims description 53
- 230000003044 adaptive effect Effects 0.000 claims description 34
- 239000003795 chemical substances by application Substances 0.000 claims description 31
- 238000012549 training Methods 0.000 claims description 30
- 239000000872 buffer Substances 0.000 claims description 16
- 238000013528 artificial neural network Methods 0.000 claims description 11
- 230000007246 mechanism Effects 0.000 claims description 9
- 230000008901 benefit Effects 0.000 claims description 8
- 238000013461 design Methods 0.000 claims description 8
- 239000011159 matrix material Substances 0.000 claims description 7
- 239000000284 extract Substances 0.000 claims description 6
- 238000012545 processing Methods 0.000 claims description 6
- 238000005070 sampling Methods 0.000 claims description 6
- 230000035945 sensitivity Effects 0.000 claims description 4
- 239000013598 vector Substances 0.000 claims description 4
- 238000013527 convolutional neural network Methods 0.000 claims description 3
- 230000000670 limiting effect Effects 0.000 claims description 3
- 230000001960 triggered effect Effects 0.000 claims description 3
- 238000009825 accumulation Methods 0.000 claims description 2
- 230000004913 activation Effects 0.000 claims description 2
- 230000008859 change Effects 0.000 claims description 2
- 238000006243 chemical reaction Methods 0.000 claims description 2
- 238000012937 correction Methods 0.000 claims description 2
- 230000007423 decrease Effects 0.000 claims description 2
- 230000003247 decreasing effect Effects 0.000 claims description 2
- 238000013135 deep learning Methods 0.000 claims description 2
- 230000006872 improvement Effects 0.000 claims description 2
- 230000002452 interceptive effect Effects 0.000 claims description 2
- 238000005259 measurement Methods 0.000 claims description 2
- 238000012544 monitoring process Methods 0.000 claims description 2
- 230000004043 responsiveness Effects 0.000 claims description 2
- 238000010606 normalization Methods 0.000 claims 1
- 230000003313 weakening effect Effects 0.000 claims 1
- 230000006978 adaptation Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 239000000523 sample Substances 0.000 description 5
- 238000011156 evaluation Methods 0.000 description 3
- 230000007774 longterm Effects 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- VYZAMTAEIAYCRO-UHFFFAOYSA-N Chromium Chemical compound [Cr] VYZAMTAEIAYCRO-UHFFFAOYSA-N 0.000 description 1
- 238000002679 ablation Methods 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000002238 attenuated effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000037406 food intake Effects 0.000 description 1
- 238000011478 gradient descent method Methods 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/10015—Access to distributed or replicated servers, e.g. using brokers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/16—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1021—Server selection for load balancing based on client or server locations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/18—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明涉及一种基于无服务器计算的自适应视频流传输方法及系统,属于流媒体传输技术领域。系统由细粒度的无服务器管道实现视频交付,利用无状态函数来加强对视频请求事件的响应,使用一种基于三端剪辑的近端策略优化PPO的深度强化学习算法来解决视频播放过程中的比特率自适应序列决策问题。此外,将动态视频块质量因素纳入用户体验QoE指标,用以配置QoE模型,为每个视频块分配一个优先权重,提高视频比特率决策的鲁棒性,从而减小视频流传输时延,提高了用户观看体验。
Description
技术领域
本发明涉及一种基于无服务器计算的自适应视频流传输方法及系统,属于流媒体传输技术领域。
背景技术
近年来,5G网络的普及为视频内容服务商向用户传输视频流提供了前所未有的机会,极大地推动了视频流应用的发展,例如直播和短视频服务等。尽管5G网络有效地提升了网络带宽,但互联网仍有可能被大量的视频流媒体流量所淹没,这将不可避免地影响用户的观看体验(QoE)。因此,开发一种高效的自适应视频流传输技术,兼顾当前网络状况和客户端缓冲区等条件,对于提高用户观看体验是非常有必要的。
目前,视频服务提供商大多采用动态自适应流(DASH)协议,通过内容分发网络传输视频流。在这种情况下,云服务器将视频分割为等长的块,并以不同的比特率对视频块进行编码。然后,客户端播放器运行ABR算法根据当前可用资源(网络、缓冲区等)选择恰当的比特率视频块进行播放。然而,现有的研究大多只关注动态网络条件下视频比特率和网络带宽之间的权衡,考虑视频块的比特率和下载速度,这可能会产生频繁的视频块切换破坏播放的流畅性,严重影响用户体验,因为最初的视频块状比特率决策不一定是下载视频块时的最佳选择,而且这种粗粒度的比特率决策一旦做出,就不能回滚。此外,现有的视频流方案往往是由客户端根据本地可用网络等资源情况做出视频块比特率决策,缺乏全局视角下的决策。鉴于互联网的大规模分布特性,单个节点只能观察到视频流媒体系统的部分片段,这将导致长尾性能不佳。
边缘平台可以在靠近用户的地方提供视频流服务。目前,基于边缘计算的解决方案主要利用边缘缓存就近提供服务来减少视频传输延迟。此外,尽管边缘平台比终端用户有更广阔的视野,这些解决方案也很少在边缘进行比特率自适应决策,不可避免地导致用户较差的观看体验。
为了提供定制化的服务,近年来,云服务商提出了无服务器计算范式,通常以功能即服务(FaaS)的形式出现。在无服务器架构中,FaaS直接地处理由事件触发的服务请求,以保证相互关联的无状态函数的可用性和弹性。无服务器计算架构是具有高度数据并行性和间歇性活动的视频流服务应用的理想选择。目前,尚未见到有基于无服务器计算架构的、边缘辅助的细粒度视频流自适应决策方案公开。
发明内容
本发明的目的是为了解决复杂动态网络环境下如何进行视频流高效传输服务的技术问题,创新性地提出一种边缘计算架构下基于无服务器计算的视频流传输方法及系统。本发明通过实现无服务器支持的细粒度的视频流管道来加强对视频请求事件的响应,降低视频流服务的传输时延,提高了用户观看体验。
本发明的创新点包括:首次设计了一个基于无服务器架构支持的边缘辅助的自适应视频流系统,该系统由细粒度的无服务器管道实现视频交付,利用无状态函数来加强对视频请求事件的响应,根据其可用资源(算力、网络)在边缘做出视频块比特率决策。由于视频比特率自适应过程的马尔可夫特性,本发明使用一种基于三端剪辑的近端策略优化(PPO)的深度强化学习算法来解决视频播放过程中的比特率自适应序列决策问题。此外,本发明将动态视频块质量因素纳入用户体验QoE指标,用以配置QoE模型,为每个视频块分配一个优先权重,提高视频比特率决策的鲁棒性,从而减小视频流传输时延,提高用户观看体验。
本发明的目的是通过下述技术方案实现的。
一种基于无服务器计算的自适应视频流传输方法,包括以下步骤:
步骤1:搭建边缘计算下基于无服务器计算的自适应视频流传输系统,包括视频流服务端、边缘端和视频用户端。
其中,视频流服务端负责存储视频内容和以不同比特率编码切分为固定长度的视频块,并向视频用户端通过复杂变化的动态网络传输视频内容;
边缘端通过实现基于无服务器架构的高并行无状态函数,负责响应来自多个用户的视频内容请求,并与按照地理分布的服务端互动。将视频内容从距离用户最近的服务端交付,从而减少视频传输时延,实现最大化用户体验质量。
客户端用于将本地播放器状态(缓冲区、网络等)信息和视频块请求信息发送至边缘端,以事件形式触发无状态函数响应,生成最优视频块比特率决策。
步骤2:利用基于深度强化学习近端策略优化的比特率自适应算法,优化视频块的自适应比特率决策。
包括以下步骤:
步骤2.1:采用一个端到端的深度强化学习框架,用于执行视频流播放过程中的比特率自适应决策。
强化学习是解决动态环境中序列决策问题的经典策略之一。深度神经网络也可以处理多维输入条件,深入提取特征。端到端意味着该框架直接接受来自视频流服务的信息驱动并输出动作,而不需要将手工制作的特征编码为输入或在决策过程中进行反复推理。
在基于深度强化学习的视频流传输优化过程中,视频流状态空间信息包括当前和历史视频流信息、网络信息和采取的动作信息。代理人根据当前状态空间信息的视频块比特率,选取某个视频流比特率的动作,并试图赢得最大化的累积用户体验(QoE)奖励。为了捕捉视频流状态、所执行的动作和QoE奖励之间的复杂关系,采用伪暹罗结构来学习内在的关系。
因此,可以将该问题转化为马尔科夫决策过程,并通过代理和环境之间的相互作用,设计出一个基于深度强化学习的解决方案。
步骤2.2:状态空间表示。
现有研究通常将视频内容和网络状态信息分为不同的类别,并使用它们的串联one-hot编码向量作为状态空间的表示,以使模型迭代推理过程执行。然而,抽象化的编码向量非常容易忽略重要的状态信息,可能无法捕捉到视频信息和最佳比特率决策之间的复杂关系。
为了获得一个高效和合适的特征表示,从而直接从状态空间学习到所需的比特率决策的特征,本发明设计了一个新的多维特征,用于编码当前和历史视频块状态信息。在视频流服务中,与视频传输相关的信息表现为不同的特征维度。因此,将它们表示为离散的三维张量,从而让深度神经网络根据历史经验学习系统模型。
具体地,将状态空间张量设计为九个通道,分别代表代理网络信息、视频块信息、播放器信息和历史决策信息。每个通道均是一个稀疏二进制矩阵,每个位置代表相应的状态空间信息。
步骤2.3:动作空间表示。
经过状态空间表示,将视频块比特率的决策设计为不同的视频清晰度动作(例如选择720P的视频块)。对于视频块播放序列输入类型(如过去的视频块的比特率、下载时间等),使用卷积层提取基本特征。然后,所有的处理结果被串联到一个全连接层,以学习复杂特征之间的内在关系。最后,输出结果被转换到归一化函数层来计算动作的概率分布。
具体地,通过调整神经网络的参数θ对策略πθ进行优化。例如,对于行动者张量,由于每轮通常最多只有4个可选的连续动作,可以将其设计为四个通道,每个通道是一个1*Nb的稀疏二进制矩阵,Nb代表所选的视频块的不同比特率。因此,在视频流媒体会话中,当用户端播放器下载视频块时,代理选择合适的动作,从而最大化长期累积的QoE奖励。
步骤2.4:奖励函数设置。
经过状态和动作设计,进一步设计在某一个状态st下采取一个动作at的奖励rt。一旦视频流系统开始执行比特率决策,代理将根据当前的状态采取不同的动作,在历史经验缓冲池形成不同的状态-动作序列,从而最大化累积奖励函数。
具体地,将用户观看体验QoE指标作为奖励函数。考虑到不同视频块所含内容的差异,为每个视频块内容分配一个特定的权重,用于编码内容质量的敏感性。深度强化学习模型通过使用QoE奖励函数,权衡用户感知视频清晰度,卡顿时间等因素,鼓励以更高的比特率下载视频块,并尽可能的减少播放卡顿和比特率切换。
步骤2.5:深度强化学习模型训练。
在多维输入特征表示下,策略梯度训练的核心因素是寻找具有合适损失函数的深度学习范式。具体地,采用一个具有在线策略训练的演员评论家框架。代理人根据相关策略参数θ的预期收益梯度直接学习参数化的政策πθ。演员批判范式训练价值函数Vθ(St)和政策πθ(at|st),并通过从重放的历史经验池中反复取样更新它们。
步骤3:使用基于三端裁剪机制,提升近端策略优化性能。
根据步骤2学习到的深度强化学习演员评论家(Actor-Critic)模型,通过近端策略优化算法对策略进行参数化。在训练过程中,通过优化梯度来更新参数,实现目标函数最优。近似策略优化(PPO)算法修正系数定义为当前策略πθ和旧策略πθ′的概率比值。
在近端策略优化算法中,为了控制策略的更新幅度,使用三端裁剪机制削弱某些离群的策略梯度,从而加速算法收敛。具体地,在算法迭代的训练步骤中。采用三端裁剪法,将rt(θ)即新旧策略的比值限制在一个区域中,通过控制区域的大小来限制更新的步幅。相较于使用KL散度进行限制,通过使用Clip函数裁剪更加方便,其中,clip(rt(θ),1-∈,1+∈)将修正系数rt(θ)约束在范围(1-∈,1+∈)内,∈为超参数。当策略更新的偏移超出预定区间时,截断项就会起到限制的作用。
为进一步提升近端策略优化算法的性能,可以使用优势函数估计方法。具体地,使用泛化优势估计构造优势函数降低方差,使算法不会产生较大的波动,t表示时间步,T表示总的时间步。在对目标函数的梯度进行更新时,每一次计算梯度都需要使用当前最新的策略模型进行交互采样得到相应的样本序列,从而进行梯度计算。更新模型之后,使用过的样本经验将通过修正系数的旧策略分布来得到利用。
有益效果
本发明,对比现有技术,具有以下优点:
1.本发明提出了一个基于无服务器架构支持的边缘辅助的自适应视频流系统,是一个涵盖“用户-边缘-服务端”的端到端的视频流传输系统,该系统由细粒度的无服务器管道实现视频流比特率决策功能,其能根据当前动态网络环境与客户端缓存等因素自适应地调整视频流的比特率,降低了视频流传输延迟,从而提升用户的观看体验质量。
2.本发明提出了一种新的基于三端裁剪的近端策略优化算法,优化了视频流比特率决策过程。在视频流传输过程中,将其形式化为一个马尔科夫的序列决策问题,结合深度强化学习技术自适应地为视频块选择合适的比特率,生成最佳视频块比特率决策,从而获得更好的用户体验质量。
附图说明
图1为本发明实施例基于无服务器计算的自适应视频流传输方法示意图。
图2为本发明实施例基于三端裁剪的近端策略优化算法示意图。
图3为本发明实施例在不同网络数据集下的视频块比特率。
图4为本发明实施例在使用不同比特率算法的时延效果评价。
图5为本发明实施例在使用不同比特率算法的QoE效果评价。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式做进一步详细说明。
实施例
本实施例中,自适应视频流传输系统采用了典型的边缘计算云边端三层架构,分为云服务器-边缘服务器-客户端三层架构。其中,客户端负责播放视频和采集客户端状态(播放器缓冲区、网络吞吐量等),并发送视频请求。边缘服务器处理来自多个客户端的视频播放请求,并与地理分布的云服务器进行交互。视频流服务可以从用户最近的云服务器交付,以减少传输时延。云服务器负责存储视频源文件,将视频切分为固定时长不同比特率的视频块,分配可用带宽并向客户端播放器推送视频流内容。
如图1所示,一种基于无服务器计算的自适应视频流传输方法,当无服务器计算基础设施应用于视频流传输时,位于边缘服务器的无服务器平台负责实时异步执行相应的无状态函数实例,并进行细粒度的视频请求响应。一旦预定义的视频事件被调用,无服务器函数就会根据相应事件的发生而并发地执行视频流比特率决策。
一种基于无服务器计算的自适应视频流传输方法,包括以下步骤:
步骤1:构建一种边缘计算下基于无服务器计算的自适应视频流传输系统,包括视频流服务端、边缘端和视频用户端。
首先,分析视频播放时客户端的时空特征,建立视频流客户端应用。
在视频流客户端,从带有集成dash.js播放器的Chrome浏览器中提取JavaScript控制台日志,从客户端使用iPerf提取视频块的状态信息、播放器缓冲区和网络状况。然后,ABR控制器(Adaptive Bitrate,自适应码率)组织状态元数据信息,并将其分组转发,以调用视频块下载请求事件。相应的视频请求调用通过无服务器函数,使用HTTP协议发送到边缘服务器。
之后,在边缘服务器搭建基于无服务器计算的视频流决策管道,根据当前信息做出最佳的视频流比特率决策。
在边缘服务器,无状态函数数据库是整个视频流系统的智能核心,与执行无服务器函数的容器进行交互。在边缘服务器中,吞吐量监控模块探测客户端和云服务器之间的网络信道链接,以估计未来的网络吞吐量。为了响应客户端视频请求事件,边缘服务器立即对请求信息进行解密。具体来说,边缘服务器利用来自客户端请求事件的信息(例如,缓冲区占用和视频块比特率)和吞吐量预测,使用无服务器函数确定最佳视频块比特率。然后,边缘服务器将视频块比特率决策结果传递给最近的云服务器。由于边缘服务器比客户端有更广阔的视野,它可以通过考虑更多的相关信息,如客户端请求和可用带宽,更加有效地改善视频质量。无服务器视频流管道有一个额外的流媒体摄取无状态功能,它负责协调视频流工作流程的执行。在每个时间段,无服务器函数配置器调用无状态函数来处理视频流事件,并反馈视频流管道信息。边缘服务器指示调用者执行无状态函数,以做出细粒度的视频流比特率决策。
具体地,无服务器管道提供了现成的基础设施来实时并发处理细粒度的视频流服务。通过边缘服务器的可用资源动态调整无服务器函数实例数目,约束目标为:(1)通过无服务器管道实现视频流服务的高吞吐量;(2)自适应地调整动态视频交付的工作负载。为了有效地整合边缘服务器和云服务器的资源,设计了一个边缘辅助的无服务器管道优化自适应视频流系统。边缘服务器的主要职责是调用无服务器函数的执行并交付执行结果。因此,无服务器管道设计遵循单一责任原则:每个无状态函数实例独立承担一个任务。无服务器函数在被调用时进行实例化,在完成后再销毁函数实例。在视频流会话中,这就意味着每个视频事件都有一个细粒度的比特率决策函数。
为了向用户提供更好的视频观看体验,云服务提供商需要将单体的视频流媒体工作流程分解为一组连续的无状态函数,提供细粒度的视频服务。例如,视频流管道被分解为相互关联的无状态函数,由容器化的运行环境执行。因此,将整个自适应视频流系统解耦成为由无状态函数组成的无服务器管道。当无服务器管道组合和视频请求发生变化时,无状态函数操作不会被重新编译。针对不稳定的无服务器环境,本发明设计了一个支持事件驱动的多进程的视频流系统。例如,当视频请求的到来会调用无服务器函数,为待下载的视频块做出最佳比特率决定,异步地重复执行上述过程的无状态函数调用,直到视频流会话终止。
在视频会话中,无服务器调用者模块使视频流系统能够协调所有无状态函数调用的执行,并维护无服务器管道状态,确保无服务器函数的性能、可用性和响应性。调用器使用一个基于信号的机制来控制对容器的请求访问。具体地,每当触发请求到达边缘服务器时,都会及时调用无服务器功能实例进行响应,并详细记录调用的统计数据,用于更新视频服务所需的配置文件。此外,本发明旨在减少整体无服务器管道延迟,同时最大限度地减少成本(资源使用)。因此,通过使用关于视频流请求状态和资源可用性的最新信息,反复和动态地优化每个操作的调用,来优化整体管道的执行。同时,进一步地针对每个函数的调用设置不同的延迟松弛值。通过不断为无服务器管道配置功能操作,以最小的成本满足松弛值为前提,动态地降低系统延迟。通过动态的松弛目标分配,可以在不考虑可能的条件路径的情况下降低管道的延迟。最后,无服务器视频管道信息被打包并发送给配置器。
为了满足无服务器视频管道的延迟目标,配置器模块确定了两个关键的因素:为每个无状态函数调用设置多少延迟余量,以及如何有效地分配资源以满足延迟目标。具体地,本发明使用了一种延迟机制来提高无服务器功能的性能。无状态函数执行过程和系统资源的易变性要求配置器为每个函数调用动态地确定最有效的资源分配。配置器持续检测无服务器后端上的可用资源(例如,内存和CPU)。此外,配置器模块打开到无状态函数数据库的连接并搜索可用的无服务器函数以选择调用的操作。选择配置选项后,配置器将带有配置决策配置文件的函数调用转发给调度器以供执行。
配置器模块完成无状态函数调用配置文件后,将函数调用分派给调度器模块执行。调度器在配置器指定的容器环境上执行无服务器函数调用。在无服务器函数执行期间,无状态操作调用可以异步并发执行。调度程序跟踪函数调用的执行时间。如果超过配置延迟目标或调度程序收到执行错误,调度程序会通知无服务器调用程序重新创建函数调用。然后将此重复调用传递给配置器以重置松弛分配并执行配置过程。具体地,为不同的视频请求调用设置延迟目标以提高管道响应能力,从而确保函数调用以最佳配置运行。当函数调用执行成功后,调度器将函数输出结果提供给云服务器,处理完输入的工作量后,函数实例自动终止并释放占用的资源。
在云服务器,每个云服务器存储全部视频内容,并以不同的比特率阶梯对视频块进行编码,生成固定时长的不同分辨率的视频块。一旦云服务器通过会话控制器收到来自边缘服务器的视频比特率决定结果,它就会立即分配可用带宽并确定最佳流媒体推送策略。最后,云服务器使用DASH协议在分配的带宽上向客户端播放器提供适当的视频块。
步骤2:使用近端策略优化PPO的比特率自适应算法,优化视频流传输过程中的比特率决策过程。
视频流的自适应比特率选择可以被视为一项深度强化学习任务:代理通过观察动态环境的状态进行学习,并根据神经网络产生行动,选择适当的比特率以最大化预期的长期QoE。如图2所示,为本发明设计的视频流传输过程中执行视频块比特率决策的近端策略优化PPO算法的网络结构。
强化学习是解决动态环境中序列决策问题的经典策略。同时深度神经网络可以处理多维输入条件从而深入提取特征。因此,自适应视频流比特率决策问题属于这个范畴,可以使用基于深度强化学习的解决方案来解决。具体地,本发明将这个问题转化为马尔可夫决策过程(MDP)任务,并通过代理和环境之间的相互作用设计出一个基于深度强化学习的解决方案。通常,一个MDP过程由一组有限状态S={S1,S2,…,St},一组行动以及一个奖励函数R:S×A→R构成。在每个状态St∈S下采取行动at∈A后,代理将根据转移概率策略获得一个新状态St+1,并获得奖励R(St+1|St,at)。代理的目标是使得累积奖励/> 最大化,其中γ∈(0,1]为折扣因子。
在每个时间节点T,深度强化学习模型的输入包括视频块的状态信息、播放器缓冲区信息和网络信息,它们被分别发送到连体架构的顶部和底部流。由于行动和状态表示为模型训练学习提供了不同种类的状态信息,隔离了联接架构的参数共享,这使得三个卷积层ConvNets可以自适应地学习特征表示,然后通过全连接层进行融合,产生所需的动作决策。代理可以根据输出的概率分布来选择动作。为了训练DRL模型,本发明使用随机梯度下降法(SGD)更新模型参数。具体地,通过一个自我播放程序获得最终的模型,该程序用K个最佳历史版本的经验池回放选择当前模型,以便从巨大的状态空间中抽样不同的训练数据。
近端策略优化PPO算法包括代理、状态空间、动作空间、奖励函数。
代理(Agent):代理是系统中的一个实体,负责执行深度强化学习算法并做出序列决定。在视频流自适应传输问题中,在每个时间步骤,代理被触发,为将要下载的视频块选择一个最佳的比特率。
状态空间:在视频流系统中,视频信息和动作信息往往具有不同的特征。在时间步骤t,用作DRL代理的输入的状态表示为st=(xt,τt,nt,bt,ct,lt,dt,ht),其中xt是过去k个视频块的网络吞吐量,τt是过去k个视频块的下载时间,代表吞吐量测量的时间间隔,nt是下一个视频块的m个可用比特率的向量,bt是当前的缓冲区水平,ct是视频中剩余的视频块数量,lt是下载上一个视频块的比特率,dt是过去k个视频块的时延,ht是视频块的内容质量权重。为了获得高效的适当的特征表示,直接从状态学习到所需的比特率决策,本发明设计了一个新的多维特征表示,用于编码当前和历史视频块和动作信息。具体地,本发明分别将它们表示为两个分离的三维张量,每个张量设计为九个通道,分别代表代理网络信息、视频块信息、播放器信息和历史决策。每个通道是一个4*9的稀疏二进制矩阵,每个位置代表相应的信息,让神经网络凭经验学习提取特征。对于行动者张量,由于每轮通常最多只有四个连续行动,将其设计为四个通道。每个通道是一个1*nb的稀疏二进制矩阵,其中nb代表视频块的不同比特率。
动作空间:对于时间序列输入类型(如过去的视频块下载时间等),本发明使用卷积层ConvNets来有效提取基本特征。然后将所有的中间处理结果被串联到一个全连接(FC)层,以学习复杂特征的内在关系,最后输出结果被转换到softmax激活层来计算代理选择动作的概率分布。在观察到一个状态st时,代理需要采取一个行动,以确定下一个视频块的下载比特率。具体地,动作设计为选择不同的比特率,例如360P、720P、1080P等,通过调整深度神经网络的参数θ,可以对策略πθ(st,at)进行优化。因此,在下载视频块时,代理可以根据模型学到的策略来选择比特率,从而最大化长期累积的QoE奖励。
奖励函数:通过奖励函数rt的反馈,加速深度强化学习DRL优化目标函数过程。具体地,将每一个训练轮次的奖励函数设置为QoE指标。在每一轮的决策后,代理都会收到奖励函数的反馈信号,通过奖励函数的累积和,最终可以实现最大化QoE的目标。具体地,本发明基于现有的QoE指标,并根据其固有的视频内容为每个视频块分配权重。具体地,本发明为每个视频块分配一个特定的权重表示视频内容质量敏感性。其中,R为视频块质量,ω为权重参数,n为视频会话期间的视频块数量。DRL模型通过使用QoE奖励函数鼓励以更高的比特率下载视频块。本发明中采用的QoE指标为/> 其中,q(·)表示视频质量的效益函数,Ti表示视频播放停顿惩罚,/>表示视频快切换比特率时的平滑度惩罚,μ和δ是非负的权重参数,分别设置为4.3和1.0。简而言之,QoE会随着视频块比特率的增加而增加,但会随着停顿时间和平滑度的降低而降低。
首先,生成一个将样本批量转换为<st,at,rt,st+1>的四元组形成回放缓冲经验池,其中st代表t时刻的状态,at代表t时刻采取的动作,rt表示状态st下采取at获得的奖励,st+1代表下一个状态。
然后,从历史缓冲池中小批量地取出部分样本,异步训练actor网络和critic网络,更新全局网络参数。
本实施例给出了近端策略优化PPO算法一种具体的处理流程,包括如下:
输入:最大时间步骤T,学习率γ,经验池B;
输出:策略网络参数θ;
S1:随机初始化actor网络与critic网络;
S2:初始化参数值,包括奖励r、时间片t,并初始化State:S0;
其中,State表示视频流系统中网络状态、播放器状态和视频块状态信息,S0表示初始时的系统状态;奖励值r是通过代理agent在环境中执行行动得到的反馈,通过这种方式对奖励进行积累。模型的目标是最大化奖励函数。因此,将动作能否带来奖励,作为影响奖励值的标准;
S3:接收初始状态State S0;
S4:根据环境为每个视频块选择动作:
S41:for episode←1to T*episode
S42:for t∈[1:T]
其中,T表示时间周期,episode是运行周期数;
S5:通过actor网络生成at;其中,at表示视频流比特率决策;
S6:选择并执行动作at,获得立即奖励rt和下一状态st+1
S7:将经验样本<st,at,rt,st+1>存入历史经验回放池,更新环境;
S8:从经验池B中随机抽取N个经验样本;
S9:根据critic网络的值函数来计算优势函数;
S10:通过最大化PPO的目标函数更新actor网络;
S11:判断时间片是否结束,如果为否,执行S12;
S12:更新网络参数θ;
S13:判断动作选择是否合适,以及是否有请求被完成;
如果动作选择合适,并且有请求被完成,则将奖励值r增大;
如果动作选择不正确,则将奖励值r减小;
S14:判断时间片是否结束;
如果未结束,则返回S4;如果结束,则重置时间片t,并输出一个时间周期内的r,然后返回S4;
为训练比特率决策算法,过去的状态集合传递给一个具有128个滤波器的卷积层,每个滤波器的大小为4,步长为1,然后将这些层的结果通过全连接层与其他输入汇总到一个隐藏层中。actor网络使用相同神经网络结构,其最终输出是一个线性神经元。在训练过程中,可设置折扣因子γ=0.99,actor网络和critic网络的学习率分别是是0.00001和0.0001,熵因子σ设置在100次迭代中从1衰减到0.1,经验池的大小为50000,在整个训练过程中保持所有的超参数固定。
步骤3:使用基于三端裁剪的机制,提升近端策略优化算法性能,加快深度强化学习算法的收敛速度。
在多维特征表示下,策略梯度训练的核心因素是具有合适损失函数的深度学习模型。
具体地,本发明采用了一个既定的策略训练的actor-critic框架,通过基于梯度的参数更新实现策略改进。代理根据有关策略参数θ的预期收益梯度直接学习参数化的策略πθ。actor-critic框架训练值函数Vθ(st)和策略πθ(at|st),并通过从重放的历史经验池中反复取样更新训练模型参数。本发明定义了裁剪比率函数为当前策略πθ和旧策略πθ′之间的概率比。优势函数/>描述了两个连续状态之间st+1,st根据当前策略πθ选择动作at的改进,而策略损失函数定义为确保rt(θ)落在区间(1-∈,1+∈)中,∈的值可以设置为0.2。值函数的损失定义为/> 其中/>代表传统的奖励。使用最小函数来控制原始项目和截断项目,防止策略更新漂移超过预定的区间。
为提高PPO算法性能,本发明应用优势函数估计和额外熵奖励的优化方法。
具体地,使用广义优势估计(GAE)来构建优势函数可以减少方差,避免算法产生大的波动。通过遵循T-step更新法TD误差δt,优势函数定义为 其中δt=Rt+ωVθ(st+1)-Vθ(st),,ω、η均表示权重参数,Rt表示t时刻的奖励;δT-1表示TD误差;Vθ表示价值函数,用于计算基于T时刻的状态执行一个动作后能够获得的奖励。然而,上述PPO损失函数在大规模分布式训练中难以收敛。本发明分析了造成这一问题的两个主要原因:(1)当πθ(at|st>>πθ(at|st))或优势函数时,策略损失函数/>引入了无界方差;(2)由于视频流中比特率分布的不确定性,价值损失/>往往非常大。为了加快和稳定模型训练过程,本发明设计了一个三端剪裁的PPO损失函数。它为策略损失引入了一个额外的剪辑超参数σ1,为/>时的价值损失引入了两个剪辑超参数σ2和σ3。策略损失函数的三端剪辑函数定义为/> 其中σ1>1+∈表示损失函数上界。进一步地,值函数的损失函数定义为/>
在DRL模型训练过程中,超参数σ2和σ3分别代表播放器下载的和服务器存储的视频块的总数。因此,这两个超参数不需要人工调整,而是根据视频播放过程中播放的片段动态计算。本发明实现了一个分布式版本的三端剪辑的PPO算法,能够加快模型训练速度,提高训练性能。这种严格的限制大大降低了价值函数的方差,也消除了策略非理性的影响。
实例验证
为了进一步验证本发明的有益效果,本发明构建了基于无服务器计算的自适应视频流传输原型系统,对实施例进行了评估验证。本发明分别使用了Dell工作站、英伟达Jetson Agx Xavier和Macbook Pro分别作为云服务器、边缘设备和客户端。基于dash.js,一个开源的DASH播放器,本发明实现了一个视频流播放器。所有的实验均使用Youtube的视频,因为它是dash.js的参考视频类型。具体地,部署了一个基于HTTP/2的Nginx服务器来提供视频块,并在云服务器上使用Linux TC工具来控制出口流量。同时使用docker容器将serverless服务部署到边缘设备上。通过对基于无服务器计算的自适应视频流传输算法进行实验验证,与已有的四种算法对比,得到了图3、图4与图5的验证结果。
首先,为了测试本方法(EAVS)在不同网络数据下的QoE指标,本发明仔细研究了在不同网络条件下为每个视频播放器实现的元指标。具体地,在图3中展示了ABR算法在不同网络轨迹下的性能。显然,5G网络轨迹比4G网络轨迹提供了更高的吞吐量。因此,如图3所示,在5G网络数据集下,平均视频块比特率比4G高出53.8%。本发明提出的算法EAVS表现最好,与其他基准视频流算法相比,视频块比特率提高了约9.1%-42.7%。通过细粒度的视频块比特率适应决策,EAVS能够有意识地适应动态的网络条件,具有更高的视频比特率和更小的滞留时间。
之后,为了进一步的验证本发明的性能,测试了在不同视频块长度下的视频流传输性能。与其他方法相比较,如图4所示,本发明能够获得最大的平均QoE奖励,证明了本方法具有良好的性能。此外,根据QoE的平均值显示,本方法是唯一一个最终获得最大平均QoE奖励的ABR算法。这表明了本方法在视频传输过程中能更快地适应底层动态网络以提高用户QoE,因为它通过能实现细粒度的无服务器服务提升视频块比特率决策精度。
最后,设计消融实验测试本方法对于有无无服务器视频流管道支持的效果评价。图5中展示了在5G网络数据集下无服务器视频流管线的综合性能。通过边缘辅助的无服务器视频管道,与没有无服务器管道方案相比,本方法显著地降低了视频流服务的平均响应延迟,最高可达27.4%-60.2%。这表明无服务器配置可以在视频比特率适应上有很好的表现,本发明可以为视频交付工作负载挑选一个合适的无状态函数响应视频请求决策。因此,本发明方法使用边缘辅助的基于无服务器计算的视频流传输系统,能够高效的传输视频流,并采取有效的比特率决策算法保证了本发明较高的性能。
综上所述,本发明方法,适应于边缘计算下动态复杂的视频流传输场景,可以满足随时间变化的视频流传输需求。此外,本发明基本满足了对于端到端延迟要求较高的视频传输的任务。
以上所述的具体实例是对本发明的进一步解释说明,并不用于限定本发明的保护范围,凡在本发明原则和精神之内,所做的更改和等同替换都应是本发明的保护范围之内。因此,本发明公开的保护范围应以权利要求的保护范围为准。
Claims (6)
1.一种基于无服务器计算的自适应视频流传输方法,其特征在于,包括以下步骤:
步骤1:搭建边缘计算下基于无服务器计算的自适应视频流传输系统,包括视频流服务端、边缘端和视频用户端;
其中,视频流服务端负责存储视频内容和以不同比特率编码切分为固定长度的视频块,并向视频用户端通过复杂变化的动态网络传输视频内容;
边缘端通过实现基于无服务器架构的高并行无状态函数,负责响应来自多个用户的视频内容请求,并与按照地理分布的服务端互动,将视频内容从距离用户最近的服务端交付;
客户端用于将本地播放器状态信息和视频块请求信息发送至边缘端,以事件形式触发无状态函数响应,生成最优视频块比特率决策;
步骤2:利用基于深度强化学习近端策略优化的比特率自适应算法,优化视频块的自适应比特率决策,包括以下步骤:
步骤2.1:采用端到端的深度强化学习框架,用于执行视频流播放过程中的比特率自适应决策;
步骤2.2:状态空间表示;
设计多维特征,用于编码当前和历史视频块状态信息;在视频流服务中,与视频传输相关的信息表现为不同的特征维度,将它们表示为离散的三维张量,让深度神经网络根据历史经验学习系统模型;
将状态空间张量设计为九个通道,分别代表代理网络信息、视频块信息、播放器信息和历史决策信息,每个通道均是一个稀疏二进制矩阵,每个位置代表相应的状态空间信息;
步骤2.3:动作空间表示;
经过状态空间表示,将视频块比特率的决策设计为不同的视频清晰度动作,对于视频块播放序列输入类型,使用卷积层提取基本特征;
然后,所有的处理结果被串联到一个全连接层,以学习复杂特征之间的内在关系;
最后,输出结果被转换到归一化函数层来计算动作的概率分布;
步骤2.4:奖励函数设置;
设计在某一个状态st下采取一个动作at的奖励rt;一旦视频流系统开始执行比特率决策,代理将根据当前的状态采取不同的动作,在历史经验缓冲池形成不同的状态-动作序列,从而最大化累积奖励函数;
将用户观看体验QoE指标作为奖励函数,为每个视频块内容分配一个特定权重,用于编码内容质量的敏感性;
步骤2.5:深度强化学习模型训练;
在多维输入特征表示下,策略梯度训练的核心因素是寻找具有合适损失函数的深度学习范式;
采用一个具有在线策略训练的演员评论家框架,代理人根据相关策略参数θ的预期收益梯度直接学习参数化的政策πθ;演员批判范式训练价值函数Vθ(St)和政策πθ(at|st),并通过从重放的历史经验池中反复取样更新它们;
步骤3:使用基于三端裁剪机制,提升近端策略优化性能,加快深度强化学习算法的收敛速度;
根据步骤2学习到的深度强化学习演员评论家模型,通过近端策略优化算法对策略进行参数化;在训练过程中,通过优化梯度来更新参数,实现目标函数最优;近似策略优化PPO算法修正系数定义为当前策略πθ和旧策略πθ′的概率比值;
在近端策略优化算法中,使用三端裁剪机制削弱某些离群的策略梯度,加速算法收敛;在算法迭代的训练步骤中,采用三端裁剪法,将rt(θ)即新旧策略的比值限制在一个区域中,通过控制区域的大小来限制更新的步幅;通过使用Clip函数裁剪,其中,clip(rt(θ),1-∈,1+∈)将修正系数rt(θ)约束在范围(1-∈,1+∈)内,∈为超参数;当策略更新的偏移超出预定区间时,截断项将起到限制的作用;
在对目标函数的梯度进行更新时,每一次计算梯度都使用当前最新的策略模型进行交互采样得到相应的样本序列,从而进行梯度计算;
更新模型之后,使用过的样本经验将通过修正系数的旧策略分布来得到利用。
2.如权利要求1所述的一种基于无服务器计算的自适应视频流传输方法,其特征在于,步骤1所述的自适应视频流传输系统,在视频流客户端,从带有集成dash.js播放器的浏览器中提取JavaScript控制台日志,从客户端使用iPerf工具提取视频块的状态信息、播放器缓冲区和网络状况;然后,ABR(Adaptive Bitrate,自适应码率)控制器组织状态元数据信息,并将其分组转发,以调用视频块下载请求事件;相应的视频请求调用通过无服务器函数,使用HTTP协议发送到边缘服务器;
之后,在边缘服务器搭建基于无服务器计算的视频流决策管道,根据当前信息做出最佳的视频流比特率决策;
在边缘服务器,无状态函数数据库是整个视频流系统的智能核心,与执行无服务器函数的容器进行交互;在边缘服务器中,吞吐量监控模块探测客户端和云服务器之间的网络信道链接,以估计未来的网络吞吐量;为响应客户端视频请求事件,边缘服务器立即对请求信息进行解密;边缘服务器利用来自客户端请求事件的信息和吞吐量预测,使用无服务器函数确定最佳视频块比特率;然后,边缘服务器将视频块比特率决策结果传递给最近的云服务器;无服务器视频流管道有一个额外的流媒体摄取无状态功能,它负责协调视频流工作流程的执行;在每个时间段,无服务器函数配置器调用无状态函数来处理视频流事件,并反馈视频流管道信息;边缘服务器指示调用者执行无状态函数,以做出细粒度的视频流比特率决策;
无服务器管道设计,遵循单一责任原则:每个无状态函数实例独立承担一个任务;无服务器函数在被调用时进行实例化,在完成后再销毁函数实例;
云服务提供商将单体的视频流媒体工作流程分解为一组连续的无状态函数,提供细粒度的视频服务;将整个自适应视频流系统解耦成为由无状态函数组成的无服务器管道;当无服务器管道组合和视频请求发生变化时,无状态函数操作不会被重新编译;
针对不稳定的无服务器环境,一个支持事件驱动的多进程的视频流系统;
在视频会话中,无服务器调用者模块使视频流系统能够协调所有无状态函数调用的执行,并维护无服务器管道状态,确保无服务器函数的性能、可用性和响应性;调用器使用一个基于信号的机制来控制对容器的请求访问;每当触发请求到达边缘服务器时,都会及时调用无服务器功能实例进行响应,并详细记录调用的统计数据,用于更新视频服务所需的配置文件;
通过使用关于视频流请求状态和资源可用性的最新信息,反复和动态地优化每个操作的调用,来优化整体管道的执行,同时,针对每个函数的调用设置不同的延迟松弛值;通过不断为无服务器管道配置功能操作,以最小的成本满足松弛值为前提,动态地降低系统延迟;最后,无服务器视频管道信息被打包并发送给配置器;
为满足无服务器视频管道的延迟目标,配置器模块确定两个关键的因素:为每个无状态函数调用设置多少延迟余量,以及如何有效地分配资源以满足延迟目标;使用一种延迟机制来提高无服务器功能的性能,无状态函数执行过程和系统资源的易变性要求配置器为每个函数调用动态地确定最有效的资源分配;配置器持续检测无服务器后端上的可用资源;此外,配置器模块打开到无状态函数数据库的连接并搜索可用的无服务器函数以选择调用的操作;选择配置选项后,配置器将带有配置决策配置文件的函数调用转发给调度器以供执行;
配置器模块完成无状态函数调用配置文件后,将函数调用分派给调度器模块执行;调度器在配置器指定的容器环境上执行无服务器函数调用;在无服务器函数执行期间,无状态操作调用能够异步并发执行;调度程序跟踪函数调用的执行时间;如果超过配置延迟目标或调度程序收到执行错误,调度程序会通知无服务器调用程序重新创建函数调用;然后,将此重复调用传递给配置器以重置松弛分配并执行配置过程;为不同的视频请求调用设置延迟目标,以提高管道响应能力,确保函数调用以最佳配置运行;当函数调用执行成功后,调度器将函数输出结果提供给云服务器,处理完输入的工作量后,函数实例自动终止并释放占用的资源;
在云服务器,每个云服务器存储全部视频内容,并以不同的比特率阶梯对视频块进行编码,生成固定时长的不同分辨率的视频块;一旦云服务器通过会话控制器收到来自边缘服务器的视频比特率决定结果,它会立即分配可用带宽并确定最佳流媒体推送策略;最后,云服务器使用DASH协议在分配的带宽上向客户端播放器提供适当的视频块。
3.如权利要求1所述的一种基于无服务器计算的自适应视频流传输方法,其特征在于,步骤3中,采用一个既定的策略训练的actor-critic框架,通过基于梯度的参数更新实现策略改进;
代理根据有关策略参数θ的预期收益梯度直接学习参数化的策略πθ,actor-critic框架训练值函数Vθ(st)和策略πθ(at|st),并通过从重放的历史经验池中反复取样更新训练模型参数;
定义裁剪比率函数为当前策略πθ和旧策略πθ′之间的概率比;使用广义优势估计构造优势函数/>降低方差,t∈[0,T],t表示时间步,T表示总时间步,优势函数描述了两个连续状态之间st+1,st根据当前策略πθ选择动作at的改进;
策略损失函数定义为确保rt(θ)落在区间(1-∈,1+∈)中;值函数的损失定义为/> 其中/>代表传统的奖励;使用最小函数来控制原始项目和截断项目,防止策略更新漂移超过预定的区间。
4.如权利要求1所述的一种基于无服务器计算的自适应视频流传输方法,其特征在于,步骤3中,通过遵循T-step更新法TD误差δt,优势函数 其中St=Rt+ωVθ(st+1)-Vθ(st),ω、η均表示权重参数,Rt表示t时刻的奖励;δT-1表示TD误差;Vθ表示价值函数,用于计算基于T时刻的状态执行一个动作后能够获得的奖励;
为加快和稳定模型训练过程,设计一个三端剪裁的PPO损失函数,它为策略损失引入了一个额外的剪辑超参数σ1,为时的价值损失引入了两个剪辑超参数σ2和σ3;策略损失函数的三端剪辑函数定义为/> 其中σ1>1+∈表示损失函数上界,值函数的损失函数定义为/> 在DRL模型训练过程中,超参数σ2和σ3分别代表播放器下载的和服务器存储的视频块的总数,这两个超参数不需要人工调整,而是根据视频播放过程中播放的片段动态计算。
5.如权利要求1所述的一种基于无服务器计算的自适应视频流传输方法,其特征在于,步骤2中,近端策略优化PPO算法包括代理、状态空间、动作空间、奖励函数;
代理:代理是系统中的一个实体,负责执行深度强化学习算法并做出序列决定;在视频流自适应传输问题中,在每个时间步骤,代理被触发,为将要下载的视频块选择一个最佳的比特率;
状态空间:在时间步骤t,用作DRL代理的输入的状态表示为st=(xt,τt,nt,bt,ct,lt,dt,ht),xt是过去k个视频块的网络吞吐量,τt是过去k个视频块的下载时间,代表吞吐量测量的时间间隔,nt是下一个视频块的m个可用比特率的向量,bt是当前的缓冲区水平,ct是视频中剩余的视频块数量,lt是下载上一个视频块的比特率,dt是过去k个视频块的时延,ht是视频块的内容质量权重;设计一个多维特征表示,用于编码当前和历史视频块和动作信息,分别将它们表示为两个分离的三维张量,每个张量为九个通道,分别代表代理网络信息、视频块信息、播放器信息和历史决策;每个通道是一个4*9的稀疏二进制矩阵,每个位置代表相应的信息,让神经网络凭经验学习提取特征;对于行动者张量,其设计为四个通道;每个通道是一个1*nb的稀疏二进制矩阵,nb代表视频块的不同比特率;
动作空间:对于时间序列输入类型,使用卷积层ConvNets来提取基本特征,然后将所有的中间处理结果被串联到一个全连接层,最后输出结果被转换到softmax激活层来计算代理选择动作的概率分布;在观察到一个状态st时,代理需要采取一个行动,以确定下一个视频块的下载比特率,动作设计为选择不同的比特率,通过调整深度神经网络的参数θ对策略πθ(st,at)进行优化;在下载视频块时,代理根据模型学到的策略来选择比特率;
奖励函数:通过奖励rt的反馈,加速深度强化学习DRL优化目标函数过程;将每一个训练轮次的奖励函数设置为QoE指标;在每一轮的决策后,代理都会收到奖励函数的反馈信号,通过奖励函数的累积和,实现最大化QoE的目标;为每个视频块分配一个特定权重代表视频内容质量敏感性,其中,R为视频块质量,ω为权重参数,n为视频会话期间的视频块数量;DRL模型通过使用QoE奖励函数鼓励以更高的比特率下载视频块;
QoE指标为其中,q(·)表示视频质量的效益函数,Ti表示视频播放停顿惩罚,/>表示视频快切换比特率时的平滑度惩罚,μ和δ是非负权重;QoE会随着视频块比特率的增加而增加,但会随着停顿时间和平滑度的降低而降低;
首先,生成一个将样本批量转换为<st,at,rt,st+1>的四元组形成回放缓冲经验池,st代表t时刻的状态,at代表t时刻采取的动作,rt表示状态st下采取at获得的奖励,st+1代表下一个状态;
然后,从历史缓冲池中小批量地取出部分样本,异步训练actor网络和critic网络,更新全局网络参数。
6.如权利要求5所述的一种基于无服务器计算的自适应视频流传输方法,其特征在于,近端策略优化PPO算法的处理流程,包括以下步骤:
输入:最大时间步骤T,学习率γ,经验池B;
输出:策略网络参数θ;
S1:随机初始化actor网络与critic网络;
S2:初始化参数值,包括奖励r、时间片t,并初始化State:S0;
其中,State表示视频流系统中网络状态、播放器状态和视频块状态信息,S0表示初始时的系统状态;奖励值r是通过代理agent在环境中执行行动得到的反馈,通过这种方式对奖励进行积累;模型的目标是最大化奖励函数,将动作能否带来奖励,作为影响奖励值的标准;
S3:接收初始状态StateS0;
S4:根据环境为每个视频块选择动作:
S41:for episode←1 to T*episode
S42:for t∈[1:T]
其中,T表示时间周期,episode是运行周期数;
S5:通过actor网络生成at;其中,at表示视频流比特率决策;
S6:选择并执行动作at,获得立即奖励rt和下一状态st+1
S7:将经验样本<st,at,rt,st+1>存入历史经验回放池,更新环境;
S8:从经验池B中随机抽取N个经验样本;
S9:根据critic网络的值函数来计算优势函数;
S10:通过最大化PPO的目标函数更新actor网络;
S11:判断时间片是否结束,如果为否,执行S12;
S12:更新网络参数θ;
S13:判断动作选择是否合适,以及是否有请求被完成;
如果动作选择合适,并且有请求被完成,则将奖励值r增大;
如果动作选择不正确,则将奖励值r减小;
S14:判断时间片是否结束;
如果未结束,则返回S4;如果结束,则重置时间片t,并输出一个时间周期内的r,然后返回S4。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310926231.4A CN116962414A (zh) | 2023-07-26 | 2023-07-26 | 一种基于无服务器计算的自适应视频流传输方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310926231.4A CN116962414A (zh) | 2023-07-26 | 2023-07-26 | 一种基于无服务器计算的自适应视频流传输方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116962414A true CN116962414A (zh) | 2023-10-27 |
Family
ID=88454408
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310926231.4A Pending CN116962414A (zh) | 2023-07-26 | 2023-07-26 | 一种基于无服务器计算的自适应视频流传输方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116962414A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117544809A (zh) * | 2024-01-10 | 2024-02-09 | 北京科技大学 | 服务器端动态码率生成及推荐网络视频应用方法及系统 |
CN117591250A (zh) * | 2024-01-19 | 2024-02-23 | 北京理工大学 | 一种基于策略因子和过载消解的硬实时准入控制方法 |
CN117750135A (zh) * | 2024-02-21 | 2024-03-22 | 北京铁力山科技股份有限公司 | 一种视频传输的优化方法、装置、设备及介质 |
-
2023
- 2023-07-26 CN CN202310926231.4A patent/CN116962414A/zh active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117544809A (zh) * | 2024-01-10 | 2024-02-09 | 北京科技大学 | 服务器端动态码率生成及推荐网络视频应用方法及系统 |
CN117544809B (zh) * | 2024-01-10 | 2024-03-26 | 北京科技大学 | 服务器端动态码率生成及推荐网络视频应用方法及系统 |
CN117591250A (zh) * | 2024-01-19 | 2024-02-23 | 北京理工大学 | 一种基于策略因子和过载消解的硬实时准入控制方法 |
CN117591250B (zh) * | 2024-01-19 | 2024-04-26 | 北京理工大学 | 一种基于策略因子和过载消解的硬实时准入控制方法 |
CN117750135A (zh) * | 2024-02-21 | 2024-03-22 | 北京铁力山科技股份有限公司 | 一种视频传输的优化方法、装置、设备及介质 |
CN117750135B (zh) * | 2024-02-21 | 2024-04-30 | 北京铁力山科技股份有限公司 | 一种视频传输的优化方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116962414A (zh) | 一种基于无服务器计算的自适应视频流传输方法及系统 | |
US9787745B1 (en) | Content delivery | |
US20200099733A1 (en) | System and method for widescale adaptive bitrate selection | |
Sengupta et al. | HotDASH: Hotspot aware adaptive video streaming using deep reinforcement learning | |
US9807457B1 (en) | Predictive content placement on a managed services system | |
Bentaleb et al. | Catching the Moment With LoL $^+ $ in Twitch-Like Low-Latency Live Streaming Platforms | |
Chen et al. | Artificial intelligence aided joint bit rate selection and radio resource allocation for adaptive video streaming over F-RANs | |
KR102592036B1 (ko) | 사용자 중심 컨텐츠 스트리밍을 위한 방법 및 시스템 | |
Fu et al. | 360SRL: A sequential reinforcement learning approach for ABR tile-based 360 video streaming | |
US10652617B2 (en) | Dimensional isolation prediction in video delivery systems | |
CN111935025A (zh) | 一种tcp传输性能的控制方法、装置、设备和介质 | |
Huang et al. | Personalized QoE enhancement for adaptive video streaming: A digital twin-assisted scheme | |
Sun et al. | Live 360 degree video delivery based on user collaboration in a streaming flock | |
CN114040257A (zh) | 一种自适应视频流传输播放方法、装置、设备及存储介质 | |
EP4013006A1 (en) | Method for playing on a player of a client device a content streamed in a network | |
CN115022684B (zh) | 一种quic协议下基于深度强化学习的视频流自适应传输方法 | |
Qian et al. | Dam: Deep reinforcement learning based preload algorithm with action masking for short video streaming | |
CN117202264A (zh) | Mec环境中面向5g网络切片的计算卸载方法 | |
Ran et al. | SSR: Joint optimization of recommendation and adaptive bitrate streaming for short-form video feed | |
CN113645487B (zh) | 码率自适应分配方法 | |
Lin et al. | Knn-q learning algorithm of bitrate adaptation for video streaming over http | |
Zhang et al. | A unified framework for flexible playback latency control in live video streaming | |
CN116248922A (zh) | 一种基于编码器-解码器预测模型的视频自适应调度方法 | |
Mao | Network system optimization with reinforcement learning: methods and applications | |
Lu et al. | Deep-reinforcement-learning-based user-preference-aware rate adaptation for video streaming |
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 |