CN113422751A - 基于在线强化学习的流媒体处理方法、装置及电子设备 - Google Patents
基于在线强化学习的流媒体处理方法、装置及电子设备 Download PDFInfo
- Publication number
- CN113422751A CN113422751A CN202010880129.1A CN202010880129A CN113422751A CN 113422751 A CN113422751 A CN 113422751A CN 202010880129 A CN202010880129 A CN 202010880129A CN 113422751 A CN113422751 A CN 113422751A
- Authority
- CN
- China
- Prior art keywords
- streaming media
- machine learning
- model
- online machine
- time period
- 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.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 23
- 230000002787 reinforcement Effects 0.000 title claims abstract description 14
- 238000010801 machine learning Methods 0.000 claims abstract description 174
- 238000012545 processing Methods 0.000 claims abstract description 124
- 238000012549 training Methods 0.000 claims abstract description 58
- 238000000034 method Methods 0.000 claims abstract description 42
- 230000002776 aggregation Effects 0.000 claims description 51
- 238000004220 aggregation Methods 0.000 claims description 51
- 230000006870 function Effects 0.000 claims description 21
- 230000008569 process Effects 0.000 claims description 18
- 230000005284 excitation Effects 0.000 claims description 9
- 230000001186 cumulative effect Effects 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 16
- 238000004891 communication Methods 0.000 description 12
- 230000009471 action Effects 0.000 description 11
- 230000003993 interaction Effects 0.000 description 8
- 230000007246 mechanism Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- 210000002569 neuron Anatomy 0.000 description 4
- 230000005236 sound signal Effects 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 230000003139 buffering effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000001537 neural effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000003860 storage Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000004931 aggregating effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 125000004432 carbon atom Chemical group C* 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 239000002537 cosmetic Substances 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- XNKARWLGLZGMGX-UHFFFAOYSA-N ethyl 4-(4-chloro-2-methylphenoxy)butanoate Chemical compound CCOC(=O)CCCOC1=CC=C(Cl)C=C1C XNKARWLGLZGMGX-UHFFFAOYSA-N 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006116 polymerization reaction Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Medical Informatics (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Multimedia (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例提供了一种基于在线强化学习的流媒体处理方法、装置及电子设备,其中,方法包括获取当前时间段的流媒体状态数据;通过在线机器学习模型,根据流媒体状态数据,确定流媒体客户端的当前时间段的流媒体控制信息并发送;获取下一时间段的流媒体状态数据,对所述在线机器学习模型进行训练并对所述在线机器学习模型进行模型参数更新。本发明实施例采用了在线机器学习模型,根据当前的流媒体状态数据,决策出流媒体控制信息,并传送给客户端以控制进一步的流媒体的处理操作,如此进行迭代操作,从而适应动态变化的网络环境。与此同时,通过对在线机器学习模型进行训练,不断更新模型参数,以不断适应新的网络环境。
Description
技术领域
本申请涉及一种基于在线强化学习的流媒体处理方法、装置及电子设备,属于计算机技术领域。
背景技术
为了保持高质量的用户体验(QoE,Quality of Experience),传统的交互式流媒体应用程序采用基于规则(rule-based)的协议,如传输层的拥塞控制和应用层的视频比特率自适应算法。然而,rule-based协议无法适应高度异构的现代互联网网络,包括蜂窝/WiFi无线链接、长距离的光纤链接、基于云的数据中心链接等,所有这些网络都具有不同的带宽、延迟和缓冲能力。
近年来,数据驱动的机器学习算法被提出用来改进流媒体的QoE。但是,现有的解决方案通常采用“离线学习,在线运行”的策略,即机器学习模型在模拟器或仿真器中进行训练,然后在实际应用中进行部署和测试。但是,由于模拟器或仿真器很难忠实地模拟复杂的真实网络世界中流媒体交互的动态,导致这样的离线学习模型在应用到现实世界中时性能较差。甚至在真实系统中可能表现出与在模拟环境中相反的性能特征。
发明内容
本发明实施例提供一种基于在线强化学习的流媒体处理方法、装置及电子设备,以提高流媒体的QoE性能。
为了实现上述目的,本发明实施例提供了一种流媒体数据处理方法,包括:
获取流媒体客户端的当前时间段的流媒体状态数据;
通过在线机器学习模型,根据所述流媒体状态数据,确定所述流媒体客户端的当前时间段的流媒体控制信息,并发送给所述流媒体客户端;
获取流媒体客户端的下一时间段的流媒体状态数据,根据所述下一时间段的流媒体状态数据和所述当前时间段的流媒体控制信息,对所述在线机器学习模型进行训练并对所述在线机器学习模型进行模型参数更新。
本发明实施例还提供了一种流媒体数据处理装置,包括:
状态数据获取模块,用于获取流媒体客户端的当前时间段的流媒体状态数据;
控制信息生成模块,用于通过在线机器学习模型,根据所述流媒体状态数据,确定所述流媒体客户端的当前时间段的流媒体控制信息,并发送给所述流媒体客户端;
模型更新模块,用于获取流媒体客户端的下一时间段的流媒体状态数据,根据所述下一时间段的流媒体状态数据和所述当前时间段的流媒体控制信息,对所述在线机器学习模型进行训练并对所述在线机器学习模型进行模型参数更新。
本发明实施例还提供了一种流媒体数据处理方法,包括:
检测当前时间段的流媒体状态数据,并发送部署在云服务器的与客户端对应的在线机器学习模型;
接收所述在线机器学习模型返回的当前时间段的流媒体控制信息,并根据该流媒体控制信息执行流媒体控制处理;
检测下一时间段的流媒体状态数据,并向所述在线机器学习模型进行发送。
本发明实施例还提供了一种流媒体数据处理方法,包括:
检测当前时间段的流媒体状态数据,发送给部署在本地在线机器学习模型;
获取在线机器学习模型输出的当前时间段的流媒体控制信息,并根据该流媒体控制信息执行流媒体控制处理;
检测下一时间段的流媒体状态数据,发送给所述在线机器学习模型;
根据所述下一时间段的流媒体状态数据和所述当前时间段的流媒体控制信息,对所述在线机器学习模型进行训练生成新的模型参数,并向云服务器上报;
接收云服务器返回的经过聚合学习处理后的模型参数,根据所述聚合学习处理后的模型参数,对所述本地在线机器学习模型进行模型参数更新。
本发明实施例还提供了一种电子设备,包括:
存储器,用于存储程序;
处理器,用于运行所述存储器中存储的所述程序,以执行上述的流媒体数据处理方法。
本发明实施例的基于在线强化学习的流媒体处理方法、装置及电子设备,采用了在线机器学习模型,根据当前的流媒体状态数据,决策出流媒体控制信息,并传送给客户端以控制进一步的流媒体的处理操作,如此进行迭代操作,从而适应动态变化的网络环境。与此同时,在线机器学习模型,会根据流媒体的处理操作后,产生的流媒体状态数据,结合之前的流媒体控制信息,对在线机器学习模型进行训练,从而不断更新模型参数,以不断适应新的网络环境。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
图1为本发明实施例的流媒体数据处理的系统架构示意图;
图2为本发明实施例的OnRL模型的工作原理示意图;
图3为本发明实施例的在线机器学习模型的示例性结构示意图;
图4为本发明实施例的模型聚合原理的示意图;
图5为本发明实施例的流媒体数据处理方法的流程示意图之一;
图6为本发明实施例的流媒体数据处理方法的流程示意图之二;
图7为本发明实施例的流媒体数据处理装置的结构示意图;
图8为本发明实施例的流媒体数据处理方法的流程示意图之三;
图9为本发明实施例的电子设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本发明实施例采用了在线机器学习模型,根据流媒体客户端实时的流媒体状态数据,向流媒体客户端发出用于来指导其对流媒体进行编码和传输的流媒体控制信息,具体可以是流媒体处理速率,可以包括流媒体客户端进行流媒体的编码和/或发送的处理的速率,以实现对流媒体客户端的在线反馈控制处理,从而提高流媒体的QoE性能,与此同时,还会根据实时的流媒体状态数据,对在线机器学习模型进行在线训练,从而让在线机器学习模型适应实时变化的网路环境。
上述的在线机器学习模型的数量可以和流媒体客户端的数量是相同的,即针对每个流媒体客户端都维护一个在线机器学习模型,用于对该发送端的流媒体处理速率进行调控,该在线机器学习模型所使用的训练数据是该流媒体客户端的流媒体状态数据,从而实现个性化的流媒体控制。这里所说的流媒体状态数据可以具体包括:流媒体客户端的上报的丢包率、网络延迟、延迟间隔和流媒体吞吐量中的一项或者任意多项,这些数据指标能够体现出当前流媒体的网络环境和/或流媒体客户端的处理状况,一方面,在线机器学习模型通过这些数据指标来确定出下一个时间段的流媒体客户端适合的流媒体处理速率,另一方面,这些数据指标反过来也体现出了当前时间的流媒体客户端所采用的流媒体处理速率所产生的效果,从而可以用于对在线机器学习模型的训练和优化。
进一步地,本发明实施例还提出了对多个在线机器学习模型进行聚合的方案,从而综合针对多个流媒体客户端的训练结果,聚合出通用性更强的在线机器学习模型。在进行聚合的过程中,可以采用平均聚合的方式,即将各个训练更新后的模型参数进行加权平均,然后用生成的模型参数来更新全部的在线机器学习模型。此外,还可以采用个性化聚合的方式,针对每个流媒体客户端进行个性化的聚合,在聚合过程中,优先考虑该流媒体客户端的模型参数的权重,具体可以加大该流媒体客户端的模型参数的权重,使之明显高于其他流媒体客户端的权重,从而获得的聚合后的模型参数更加符合自身的需求,在这种方式下,相当于每个流媒体客户端的对应的在线机器学习模型需要使用不同的模型参数进行更新,从而实现个性化的特性。
如图1所示,其为本发明实施例的流媒体数据处理的系统架构示意图,在图1所示的示例中,以视频流媒体应用作为示例,例如视频直播或者视频电话等,用户使用图中的客户端进行视频电话或者直播等行为。这里所说的客户端可以是智能手机、平板电脑、笔记本电脑、台式机等设备,其上安装有用于进行视频直播或者视频电话的应用程序。
在图1所示的示例中,采用了在线强化学习模型(Online ReinforcementLearning,简称OnRL)作为前述的在线机器学习模型,强化学习模型是一种基于和环境交互以长远目标为向导的机器学习模型,其优势在于可以主动学习,从环境当中获取所需要的反馈,适合在动态环境中形成优选的可执行的策略。上述的在线强化学习模型可以部署在云平台一侧,并通过消息交互的方式,从客户端获取流媒体状态数据和向客户端输出流媒体控制信息,上述的云平台可以是有多个云服务器构成的提供云服务的平台。在图1所示的示例中,设计了一个迭代的两阶段的学习架构。其中阶段一为个性化学习,阶段二学聚合,在实际应用中也可以只采用阶段一的学习架构,下面分别介绍一下两个阶段的处理。
阶段一为个性化学习,每个客户端分别对应一个OnRL模型,这些客户端可能作为流媒体的发送端也可能作为流媒体的接收端,在本发明实施例中,上述的OnRL模型的属于主要用于对客户端作为流媒体的发送端时的动作控制,因此,图1中的多个OnRL模型实际上是与流媒体客户端分别对应的。当该客户端作为流媒体发送端时,OnRL模型向该客户端输出流媒体控制信息,具体可以为针对流媒体的编码处理和/或发送处理的流媒体处理速率,一般以比特率作为单位,而该OnRL模型的输入为实时采集的流媒体状态数据,具体可以包括丢包率、网络延迟、延迟间隔和接收端的流媒体吞吐量等,这些状态数据可以从流媒体客户端获取到,流媒体客户端可以通过消息交互的方式向云端上报这些状态数据,在实际应用中,可以采用RTCP(Real-time Transport Control Protocol,实时传输控制协议)来实现,RTCP是RTP(Real-time Transport Control Protocol,实时传输协议)的一个姐妹协议,为RTP媒体流提供信道外(out-of-band)控制,RTCP本身并不传输数据,但和RTP一起协作将多媒体数据打包和发送。RTCP定期在流多媒体会话参加者之间传输控制数据。
上述的流媒体处理速率和流媒体状态数据同时也会作为OnRL模型的训练数据而进行在线训练,从而不断更新模型参数。上述的OnRL模型只采用第一阶段的学习模型,那么更新了模型参数后的OnRL模型可以直接应用于后续的流媒体数据处理。
如图2所示,其为本发明实施例的OnRL模型的工作原理示意图,OnRL模型可以部署在云端,通过互联网与客户端通信连接,为了说明技术原理,图中将客户端区分为发送端和接收端进行描述,云端的OnRL模型向作为发送端的客户端下发流媒体处理速率作为控制信息,发送端根据自身的策略,根据该流媒体处理速率确定流媒体的编码速率和发送速率,基于确定编码速率和发送速率来生成视频流并通过互联网向接收端发送。接收端根据接收到的视频流的情况,向云端发送RTCP反馈消息,上报视频流的状态数据,具体可以包括丢包、延迟、延迟间隔、吞吐量等,需要说明的是,一些状态数据也可以有发送采集并向云端发送,例如,发送端和接收端之间也会基于RTCP协议发送一些反馈消息,从而获知例如丢包、延迟等状态数据,其同样可以向云端进行消息反馈。对于发送端而言,在流媒体通信中,一方面要对视频数据进行编码,另一方面要进行视频流的发送,由于存在丢包、延迟、设备缓存以及处理速率等因素,编码后的数据可能并不能马上发出,也就是说编码的数据量可能并不等于发送的数据量,例如,在出现丢包的情况下,需要重传数据包,因此,发送速率和编码速率是处于一个动态匹配的状态,视频流编码相当于生产方,而视频流发送相当于消耗方,云端给出一个整体上的处理速率,由客户端在编码速率和发送速率之间进行合理分布,当然,云端提供的处理速率也可以是发送速率或者编码速率之一,在确定了其中一个后,根据预设的策略来确定另一个。
下面再进一步介绍一下OnRL模型的结构,如图3所示,其为本发明实施例的在线机器学习模型的示例性结构示意图。该模型整体上包括应用模型和训练模型两部分,应用模型用于根据输入的状态数据生成流媒体处理速率并输出给客户端,而训练模型用于根据状态数据和之前的流媒体处理速率对模型进行训练并不断更新模型参数。
其中,在本示例中,OnRL模型采用了神经网络结构,具体采用了两层全连接层(fully connected layers,FC)结构,提取隐藏在不同输入元素中的隐含特征。更具体地说,OnRL模型首先平铺(flatten)层对当前时间段(t时间段)状态数据序列St(lt,dt,It,tt)进行平铺处理,然后将其馈送到两个FC层,两个FC层可以分别包含64和32个神经元,然后经过SoftMax(软性最大值)层的处理,输出流媒体处理速率的排名,具体可以是在下一时间段(t+1时间段)视频发送端视频流处理的目标比特率,选择排名最高的目标比特率at发送给客户端以用于t+1时间段的流媒体动作处理,上述过程会重复执行,即向模型输入当前时间段的状态数据,从模型输出用于下一时间段的流媒体动作处理的目标比特率。上述的时间段可以设置为一个或多个RTCP报文的时间间隔。
对于训练模型的训练策略,采用以最大化累积奖励回报作为训练目标的的训练策略对模型进行训练。为了确保OnRL模型能够从过去的经验中学习,每个时间段的流媒体处理动作(流媒体处理效率)都与一个奖励相关联,该t时间段的奖励rt可以通过前一个时间段的流媒体状态参数来计算,具体可以通过如下公式(1)来定义:
其中,qn表示应用层的接收端的吞吐量(throughput),ln和dn表示传输层的丢包率(Loss rate)和延迟(Delay)。最后一项qn-qn-1是用来惩罚比特率波动来增强视频的平滑性。这些指标由不同的影响因素α、β、η、进行加权,α、β、η、可以根据实际策略而预先设定。
在计算了各个时间段的奖励后,根据如下公式(2)计算累积奖励Rτ:
如前所介绍的,训练目标是最大化总的累积奖励Rτ,其中,γ作为折扣因子,通常可以设定为0.99或0.9,Tn为总的时间段的数量,N是训练样本的数量,每个训练样本可以包括Tn个时间段的训练数据。Rτ最大化的梯度策略可表示为如下公式(3):
上式中,为优势函数,表示状态和行动决定的预期报酬与策略θ的平均预期奖励b之间的差异,简单的说,优势函数可以显示某个动作相对于平均动作的额外效益。上述公式中,策略θ对应于t时间段模型参数所形成的策略,pθ(an t,sn t)为概率函数,表示在策略θ下基于sn t(状态数据)输出动作(目标比特率)an t的概率。
通过上述公式(3)对累积奖励Rτ进行梯度计算,从而找到能够使累积奖励最大化的模型参数,训练模型的输出,用来更新OnRL模型。
此外,为了避免梯度策略所带来的频繁波动可以采用批量更新的方式或者平滑更新的方式。批量更新是指将训练数据先存储在数据缓冲区中,待缓冲区的数据量达到一定阈值后,再进行批量的训练处理,并更新模型参数。批量更新的好处在于,能够避免针对单个时间段的数据进行训练更新而带来的模型响应速度降低的缺点,减少对模型实时进行决策处理的干扰。平滑更新可以在梯度更新的损失函数中,引入对新旧模型策略之间的差异进行判定的机制,如果差异超过预设的限制阈值,则将超过阈值部分的梯度损失激励移除掉,使用移除梯度损失激励后的损失函数值来对OnRL模型进行训练和参数更新。
具体地,梯度更新的损失函数L(θ)可以表示为公式(4):
其中,pθ(s,a)为新的模型参数对应的策略的概率函数,pθold(s,a)为旧的模型参数对应的策略的概率函数,为计算期望值的函数。在上述公式中,通过限制新旧策略的概率比来限制当前策略和旧策略之间的差异,在上述公式(4)中使用了剪裁函数clip,当超过区间[1-ε,1+ε](ε可以根据需要而预先设定,例如可以设置为0.2)时,会按照超出区间部分的比例对的值进行截取,从而从损失函数L(θ)中移除对应激励,从而实现平滑级别的参数更新,通过这种方式,OnRL模型能够避免输出过于抖动的比特率决策,从而提高比特率平滑度以获得更好的QoE。
下面介绍一下阶段二的学习聚合处理,如图1中所示,该部分处理由模型聚合处理模块来完成。通过上述阶段一的对各个个性化模型的训练后,可以将训练后产生的模型参数,反馈到图1中的模型聚合处理模块,该模块可以对各个模型参数进行聚合处理,生成一个具有通用性的模型,用于对全部或者部分个性化模型进行更新。根据联邦学习的原理,聚合模型可以对每个模型的神经模型参数采用加权平均,聚合模型经历了来自不同用户的足够多的网络变体,从而获得了所需的应对网络动态的能力。
在实际应用中,流媒体的用户表现出不同程度的网络动态性。例如,一些用户通常在家里进行视频会话(例如,化妆师或店内购物指南),有稳定的WiFi连接,相应地,学习算法倾向于生成稳定的视频比特率决策。相反,有些用户使用的客户端可能处于移动性较高的环境中,例如经常出差的用户,通常会经历网络环境的波动,相应地,学习算法将学习频繁地改变其视频比特率以匹配瞬时网络变化。当用户通常具有相对稳定的网络状况时,如果该用户突然改变日常的网络环境,从而遇到新的网络动态。在这种情况下,一个单纯基于该用户以前的网络条件训练出的OnRL模型将做出不适应的动作决策。而通过上述的聚合处理,能够一定程度上避免这种情况的出现,让用户的客户端适应更多更复杂的网络环境。
如图4所示,其为本发明实施例的模型聚合原理的示意图,图中左侧的多个圆圈代表多个OnRL模型图中,假设有K个模型,每个模型k的神经网络的参数矩阵可以表示为Wk,i,j(k∈[1,K]),其中Wk,i,j的每个元素是神经模型中一个神经元的参数(i表示神经网络的第i层,总共有I层,j是每层的第j个神经元,每层共有J个神经元)各个模型对应的参数矩阵表示为各个矩阵的维数是相同的,λk是用户k模型的权重,聚合处理采用模型参数加权平均的方式,经过聚合处理,生成新的聚合后的模型参数矩阵聚合处理过程可以表示为如下公式(5):
对于λk值的确定,可以采用如下两种方式:
(i)平均聚集。令λk=1/k,k∈[1,K],即聚合成一个具有所有用户平均经验的模型。这种处理方式较为适合新加入的客户端。
(ii)个性化聚合。优先考虑客户端自身的权重,以便在其典型网络条件下获得较佳的性能,同时在遇到异常情况时做出适当的反应。具体地说,可以令客户端k的权重λk=c(c∈[0,1]),其他客户端的权重λm=(1-c)/(K-1)。
在本发明实施例中,可以只采用上述阶段一的个性化学习模式,也可以采用阶段一个的性化学习+阶段二的模型聚合模式相结合的模式。对于上述的OnRL模型的处理过程以及模型的训练过程,都是采用在线迭代的方式,具体可以基于预设的时间段来形成每一轮的迭代,在基于RTCP协议的数据传输的情况下,可以以RTCP报文的时间间隔作为上述时间段。
在应用场景方面,本发明实施例的技术方案可以应用于视频通话以及视频直播等情形,此外,上述的视频通话可以是在游戏场景下的视频通话,在运行在线游戏的情况下,上述的在线机器学习模型所输出的流媒体控制信息需要兼顾到和游戏相关的数据传输等,在保证游戏顺畅的前提下,提升视频通话的质量。此外,在输出的针对客户端的流媒体控制信息方面,还可以针对视频流和音频流进行分别控制,例如在一些场景下,可以优先确保用户可以看到清晰的视频,而适当降低一些对音频流的QoE要求,也可以优先确保音频流的传输质量的稳定,而适当降低对视频流的QoE要求,即通过本发明实施例的在线机器学习模型,输出能够在视频流和音频流的之间进行权衡的流媒体控制信息。
本发明实施例的流媒体数据处理方法,采用了在线机器学习模型,根据当前的流媒体状态数据,决策出流媒体控制信息,并传送给客户端以控制进一步的流媒体的处理操作,如此进行迭代操作,从而适应动态变化的网络环境。与此同时,在线机器学习模型,会根据流媒体的处理操作后,产生的流媒体状态数据,结合之前的流媒体控制信息,对在线机器学习模型进行训练,从而不断更新模型参数,以不断适应新的网络环境。此外,在线机器学习模型可以同时维持多个,与各个客户端相对应,从而实现个性化的流媒体控制处理,在模型训练方面,还可以进一步引入模型聚合的处理机制,以形成适应性更强的机器学习模型,在模型聚合处理的过程中,还可以针对不同的客户端进行个性化聚合,即采用加权平均的方式,对于某个具体的客户端,在进行模型参数聚合时,增加其自身对应的机器学习模型的参数所对应的权重,从而实现个性化聚合,从而获得较佳的QoE。
下面通过一些具体实施例来进一步说明本发明的技术方案。
实施例一
如图5所示,其为本发明实施例的流媒体数据处理方法的流程示意图之一,该方法可以应用于云平台上,云平台可以通过消息交互的方式与客户端进行通信,采集流媒体状态数据以及向客户端发送流媒体控制信息,从而控制客户端进行流媒体数据处理,具体地,该方法包括:
S101:获取流媒体客户端的当前时间段的流媒体状态数据。参与流媒体数据通信的客户端可以包括作为流媒体发送端的客户端和流媒体接收端的客户端。流媒体状态数据包括:丢包率、网络延迟、延迟间隔和流媒体吞吐量中的一项或者任意多项,流媒体控制数据可以由流媒体客户端通过消息交互的方式上报云平台。
S102:通过在线机器学习模型,根据流媒体状态数据,确定流媒体发送端的当前时间段的流媒体控制信息,并发送给流媒体客户端。在本发明实施例中,在线机器学习模型输出的流媒体控制信息是针对作为流媒体发送端的流媒体客户端而进行的控制,具体可以包括流媒体处理速率,用于控制流媒体发送端执行流媒体的编码和/或发送的处理。作为流媒体发送端的发送速率和编码速率是处于一个动态匹配的状态,云平台提供的流媒体处理速率是整体上的处理速率,可以由客户端在编码速率和发送速率之间进行合理分布,当然,云平台提供的处理速率也可以是发送速率或者编码速率之一,在确定了其中一个后,根据预设的策略来确定另一个。
S103:获取流媒体客户端的下一时间段的流媒体状态数据,根据下一时间段的流媒体状态数据和当前时间段的流媒体控制信息,对在线机器学习模型进行训练并对在线机器学习模型进行模型参数更新。在本发明实施例中,步骤S101至S103的处理可以进行不断迭代,具体可以以上述的一个或者多个时间段作为迭代周期,不断地向客户端输出控制信息并更新模型。这里所说的当前时间段和下一时间段仅仅是为了区别时间上的先后顺序而进行的区别性命名,由于存在迭代处理,到了下一轮迭代,上述的下一时间段就变成当前时间段了,依次类推。
具体地,在本发明实施例中,上述的在线机器学习模型可以采用在线强化学习模型(OnRL模型),对于强化学习模型可以采用奖励机制来对模型进行训练,具体地,对于在线机器学习模型进行训练以及模型参数的更新处理可以包括:
S1031:获取下一时间段的流媒体状态数据,根据下一时间段的流媒体状态数据计算当前时间段的流媒体控制信息的奖励数据。具体的计算方式可以参照前述的公式(1)。
S1032:根据多个时间段的奖励数据,计算累积奖励。具体地,累积奖励的计算方式可以参照前述的公式(2)。
S1033:使用累积奖励最大化的梯度策略,对在线机器学习模型进行训练并对在线机器学习模型进行模型参数更新。具体地,可以基于上述的公式(3)对累积奖励求取梯度,并确定出能够使累积奖励对大化的模型参数,并进行后续的模型更新处理。
在S1033中,为了避免梯度策略所带来的频繁波动,对于模型的训练和更新,可以采用批量更新的方式或者平滑更新的方式。
1)批量更新的方式:将多个时间段的流媒体状态数据、流媒体控制信息、奖励数据以及累积奖励记录在数据缓冲区中。
相应地,使用累积奖励最大化的梯度策略,对在线机器学习模型进行训练并对在线机器学习模型进行模型参数更新可以包括:当数据缓冲区中数据量超过预设阈值时,执行使用累积奖励最大化的梯度策略,对在线机器学习模型进行训练并对在线机器学习模型进行模型参数更新的处理。
2)平滑更新的方式具体可以包括:
在梯度更新的损失函数中,根据预设差异限制阈值,对损失函数中的新模型策略和旧模型策略之间的差异进行判定;如果新模型策略和旧模型策略之间的差异大于限制阈值,则移除超出阈值部分对应的梯度损失激励;使用移除了梯度损失激励后的损失函数值,对在线机器学习模型进行训练并对在线机器学习模型进行模型参数更新。对于平滑更新的方式的数据处理,可以采用公式(4)来实现。
此外,上述的流媒体客户端可以为多个,相应地,在线机器学习模型也可以为多个,分别与各个流媒体客户端对应,多个在线机器学习模型使用与流媒体客户端对应的流媒体状态数据进行训练,通过这样机制可以为各个客户端提供个性化模型,从而符合不同用户的使用情况。
进一步地,为了让在线机器学习模型更具有通用性,能够适应更加复杂的网络环境,在本发明实施例中,还可以引入模型聚合的处理。在进行聚合处理的过程中,可以采用平均聚合的方式,即将各个训练更新后的模型参数进行加权平均,然后用生成的模型参数来更新全部的在线机器学习模型。此外,还可以采用个性化聚合的方式,针对每个流媒体客户端进行个性化的聚合,在聚合过程中,优先考虑该流媒体客户端的模型参数的权重,具体可以采用加大该流媒体客户端的模型参数的权重的方式,使之明显高于其他流媒体客户端的权重,从而获得的聚合后的模型参数更加符合自身的需求,在这种方式下,相当于每个流媒体客户端的对应的在线机器学习模型需要使用不同的模型参数进行更新,从而实现个性化的特性。
具体地,对于平均聚合的方式,上述S103中对在线机器学习模型进行模型参数更新可以包括:将多个在线机器学习模型的训练后的模型参数进行加权平均处理,生成聚合后的模型参数;使用该聚合后的模型参数,对多个在线机器学习模型进行模型参数更新。
对于个性化聚合的方式,上述S103中对在线机器学习模型进行模型参数更新可以具体为,针对多个在线机器学习模型中的指定在线机器学习模型执行如下处理:将多个在线机器学习模型的训练后的模型参数进行加权平均处理,生成聚合后的模型参数,其中,指定在线机器学习模型对应的权重值大于其他在线机器学习模型的权重值;使用该聚合后的模型参数,对指定在线机器学习模型进行模型参数更新。对于个性化聚合,相当于针对每个模型都执行一次单独的聚合处理,从而在使得模型具有通用性的情况下,还保持了一定的个性化的策略。
如图6所示,其为本发明实施例的流媒体数据处理方法的流程示意图之二,与云端处理相对应的,在客户端一侧,可以执行如下处理:
S201:检测当前时间段的流媒体状态数据,并发送部署在云服务器的与客户端对应的在线机器学习模型。
S202:接收在线机器学习模型返回的当前时间段的流媒体控制信息,并根据该流媒体控制信息执行流媒体控制处理。其中,流媒体控制信息可以包括流媒体处理速率,相应地,根据该流媒体控制信息执行流媒体控制处理可以包括:根据流媒体处理速率,控制流媒体客户端执行流媒体的编码和/或发送的处理。
S203:检测下一时间段的流媒体状态数据,并向在线机器学习模型进行发送。
上述的S201至S203的处理也是不断进行迭代的,从而向云端上报数据和接收控制信息,与此同时,也为云端提供了在线机器学习模型的训练数据,从而不断更新模型参数,实现在线学习。
本发明实施例的流媒体数据处理方法,采用了在线机器学习模型,根据当前的流媒体状态数据,决策出流媒体控制信息,并传送给客户端以控制进一步的流媒体的处理操作,如此进行迭代操作,从而适应动态变化的网络环境。与此同时,在线机器学习模型,会根据流媒体的处理操作后,产生的流媒体状态数据,结合之前的流媒体控制信息,对在线机器学习模型进行训练,从而不断更新模型参数,以不断适应新的网络环境。
实施例二
如图7所示,其为本发明实施例的流媒体数据处理装置的结构示意图,该装置可以设置于云平台上,云平台可以通过消息交互的方式与客户端进行通信,采集流媒体状态数据以及向客户端发送流媒体控制信息,从而控制客户端进行流媒体数据处理,具体地,该装置包括:
状态数据获取模块11,用于获取流媒体客户端的当前时间段的流媒体状态数据。参与流媒体数据通信的客户端可以包括作为流媒体发送端的客户端和流媒体接收端的客户端。流媒体状态数据包括:丢包率、网络延迟、延迟间隔和流媒体吞吐量中的一项或者任意多项,流媒体控制数据可以由客户端通过消息交互的方式上报云平台。
控制信息生成模块12,用于通过在线机器学习模型,根据流媒体状态数据,确定流媒体发送端的当前时间段的流媒体控制信息,并发送给流媒体发送端。在本发明实施例中,在线机器学习模型输出的流媒体控制信息是针对作为流媒体发送端而进行的控制,具体可以包括流媒体处理速率,用于控制流媒体发送端进行流媒体的编码和/或发送的处理。作为流媒体发送端的发送速率和编码速率是处于一个动态匹配的状态,云平台提供的流媒体处理速率是整体上的处理速率,可以由客户端在编码速率和发送速率之间进行合理分布,当然,云平台提供的处理速率也可以是发送速率或者编码速率之一,在确定了其中一个后,根据预设的策略来确定另一个。
模型更新模块13,用于获取流媒体客户端的下一时间段的流媒体状态数据,根据下一时间段的流媒体状态数据和当前时间段的流媒体控制信息,对在线机器学习模型进行训练并对在线机器学习模型进行模型参数更新。在本发明实施例中,上述各个模块所执行的处理可以进行不断迭代,具体可以以上述的一个或者多个时间段作为迭代周期,不断地向客户端输出控制信息并更新模型。这里所说的当前时间段和下一时间段仅是为了区别时间上的先后顺序而进行的区别性命名,由于存在迭代处理,到了下一轮迭代,上述的下一时间段就变成当前时间段了,依次类推。
具体地,在本发明实施例中,上述的在线机器学习模型可以采用在线强化学习模型(OnRL模型),对于强化学习模型可以采用奖励机制来对模型进行训练,具体地,对于在线机器学习模型进行训练以及模型参数的更新处理可以包括:获取下一时间段的流媒体状态数据,根据下一时间段的流媒体状态数据计算当前时间段的流媒体控制信息的奖励数据。具体的计算方式可以参照前述的公式(1);根据多个时间段的奖励数据,计算累积奖励。具体地,累积奖励的计算方式可以参照前述的公式(2);使用累积奖励最大化的梯度策略,对在线机器学习模型进行训练并对在线机器学习模型进行模型参数更新。具体地,可以基于上述的公式(3)对累积奖励求取梯度,并确定出能够使累积奖励对大化的模型参数,并进行后续的模型更新处理。
为了避免梯度策略所带来的频繁波动,对于模型的训练和更新,可以采用批量更新的方式或者平滑更新的方式。
1)批量更新的方式:将多个时间段的流媒体状态数据、流媒体控制信息、奖励数据以及累积奖励记录在数据缓冲区中。相应地,使用累积奖励最大化的梯度策略,对在线机器学习模型进行训练并对在线机器学习模型进行模型参数更新可以包括:当数据缓冲区中数据量超过预设阈值时,执行使用累积奖励最大化的梯度策略,对在线机器学习模型进行训练并对在线机器学习模型进行模型参数更新的处理。
2)平滑更新的方式具体可以包括:在梯度更新的损失函数中,根据预设差异限制阈值,对损失函数中的新模型策略和旧模型策略之间的差异进行判定;如果新模型策略和旧模型策略之间的差异大于限制阈值,则移除超出阈值部分对应的梯度损失激励;使用移除了梯度损失激励后的损失函数值,对在线机器学习模型进行训练并对在线机器学习模型进行模型参数更新。对于平滑更新的方式的数据处理,可以采用公式(4)来实现。
此外,上述的流媒体客户端可以为多个,相应地,在线机器学习模型也可以为多个,分别与各个流媒体客户端对应,多个在线机器学习模型使用与流媒体客户端对应的流媒体状态数据进行训练,通过这样机制可以为各个客户端提供个性化模型,从而符合不同用户的使用情况。
进一步地,为了让在线机器学习模型更具有通用性,能够适应更加复杂的网络环境,在本发明实施例中,还可以引入模型聚合的处理。在进行聚合处理的过程中,可以采用平均聚合的方式,即将各个训练更新后的模型参数进行加权平均,然后用生成的模型参数来更新全部的在线机器学习模型。此外,还可以采用个性化聚合的方式,针对每个流媒体客户端进行个性化的聚合,在聚合过程中,优先考虑该流媒体客户端的模型参数的权重,具体可以加大该流媒体客户端的模型参数的权重,使之明显高于其他流媒体客户端的权重,从而获得的聚合后的模型参数更加符合自身的需求,在这种方式下,相当于每个流媒体客户端的对应的在线机器学习模型需要使用不同的模型参数进行更新,从而实现个性化的特性。
具体地,对于平均聚合的方式,上述对在线机器学习模型进行模型参数更新可以包括:将多个在线机器学习模型的训练后的模型参数进行加权平均处理,生成聚合后的模型参数;使用该聚合后的模型参数,对多个在线机器学习模型进行模型参数更新。
对于个性化聚合的方式,上述对在线机器学习模型进行模型参数更新可以具体为,针对多个在线机器学习模型中的指定在线机器学习模型执行如下处理:将多个在线机器学习模型的训练后的模型参数进行加权平均处理,生成聚合后的模型参数,其中,指定在线机器学习模型对应的权重值大于其他在线机器学习模型的权重值;使用该聚合后的模型参数,对指定在线机器学习模型进行模型参数更新。对于个性化聚合,相当于针对每个模型都执行一次单独的聚合处理,从而在使得模型具有通用性的情况下,还保持了一定的个性化的策略。
本发明实施例的流媒体数据处理装置,采用了在线机器学习模型,根据当前的流媒体状态数据,决策出流媒体控制信息,并传送给客户端以控制进一步的流媒体的处理操作,如此进行迭代操作,从而适应动态变化的网络环境。与此同时,在线机器学习模型,会根据流媒体的处理操作后,产生的流媒体状态数据,结合之前的流媒体控制信息,对在线机器学习模型进行训练,从而不断更新模型参数,以不断适应新的网络环境。
实施例四
如图8所示,其为本发明实施例的流媒体数据处理方法的流程示意图之三,该方法可以在客户端一侧执行,包括:
S301:检测当前时间段的流媒体状态数据,发送给部署在本地在线机器学习模型。与前述实施例不同,在本实施例中,各个客户端中都维护这一个在线机器学习模型,该机器学习模型使用其所在客户端的产生的数据进行训练,并不断根据自身的流媒体状态数据来向客户端输出流媒体控制信息。
S302:获取在线机器学习模型输出的当前时间段的流媒体控制信息,并根据该流媒体控制信息执行流媒体控制处理。该流媒体控制信息用于当前客户端的流媒体控制处理,具体可以包括流媒体处理速率,用于控制流媒体发送端执行流媒体的编码和/或发送的处理。
S303:检测下一时间段的流媒体状态数据,发送给在线机器学习模型。该下一时间段的流媒体状态数据用于机器学习模型的下一轮输出新的流媒体控制信息,以及用于后续的模型更新训练。
S304:根据下一时间段的流媒体状态数据和当前时间段的流媒体控制信息,对在线机器学习模型进行训练生成新的模型参数,并向云服务器上报。与前述实施例不同,在本实施例中,客户端仅向云端上报使用本客户端的数据训练后生成的新的模型参数,而不是上报流媒体状态数据,通过这样的方式,来保护客户端的隐私。
S305:接收云服务器返回的经过聚合学习处理后的模型参数,根据聚合学习处理后的模型参数,对本地在线机器学习模型进行模型参数更新。在云端一侧,会根据多个客户端上报的模型参数进行聚合学习,具体地,云端执行如下聚合学习处理:云服务器将多个客户端上报的模型参数进行加权平均处理,生成聚合学习处理后的模型参数,其中,在线机器学习模型对应的权重值大于其他在线机器学习模型的权重值。
在本实施例中,客户端通过部署在本地的在线机器学习模型能够实现基于本地数据的自行学习和/或决策,进一步地,通过云端的聚合学习处理,能够充分利用大量客户端的训练结果,形成适应于更多情形的机器学习模型,此外,在进行聚合学习的过程中,进行有区别的权重处理,从而能够保留客户端本地的模型的个性化,从而获得较佳的QoE。
实施例五
前面实施例描述了流媒体数据处理方法的流程处理及装置结构,上述的方法和装置的功能可借助一种电子设备实现完成,如图9所示,其为本发明实施例的电子设备的结构示意图,具体包括:存储器110和处理器120。
存储器110,用于存储程序。
除上述程序之外,存储器110还可被配置为存储其它各种数据以支持在电子设备上的操作。这些数据的示例包括用于在电子设备上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。
存储器110可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
处理器120,耦合至存储器110,用于执行存储器110中的程序,以执行前述实施例中所描述的流媒体数据处理方法的操作步骤。
此外,处理器120也可以包括前述实施例所描述的各种模块以执行流媒体数据处理,并且存储器110可以例如用于存储这些模块执行操作所需要的数据和/或所输出的数据。
对于上述处理过程具体说明、技术原理详细说明以及技术效果详细分析在前面实施例中进行了详细描述,在此不再赘述。
进一步,如图所示,电子设备还可以包括:通信组件130、电源组件140、音频组件150、显示器160等其它组件。图中仅示意性给出部分组件,并不意味着电子设备只包括图中所示组件。
通信组件130被配置为便于电子设备和其他设备之间有线或无线方式的通信。电子设备可以接入基于通信标准的无线网络,如WiFi,2G、3G、4G/LTE、5G等移动通信网络,或它们的组合。在一个示例性实施例中,通信组件130经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,通信组件130还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
电源组件140,为电子设备的各种组件提供电力。电源组件140可以包括电源管理系统,一个或多个电源,及其他与为电子设备生成、管理和分配电力相关联的组件。
音频组件150被配置为输出和/或输入音频信号。例如,音频组件150包括一个麦克风(MIC),当电子设备处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器110或经由通信组件130发送。在一些实施例中,音频组件150还包括一个扬声器,用于输出音频信号。
显示器160包括屏幕,其屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与触摸或滑动操作相关的持续时间和压力。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (19)
1.一种流媒体数据处理方法,包括:
获取流媒体客户端的当前时间段的流媒体状态数据;
通过在线机器学习模型,根据所述流媒体状态数据,确定所述流媒体客户端的当前时间段的流媒体控制信息,并发送给所述流媒体客户端;
获取流媒体客户端的下一时间段的流媒体状态数据,根据所述下一时间段的流媒体状态数据和所述当前时间段的流媒体控制信息,对所述在线机器学习模型进行训练并对所述在线机器学习模型进行模型参数更新。
2.根据权利要求1所述的方法,其中,所述流媒体客户端为多个,所述在线机器学习模型也为多个,与所述流媒体客户端对应,多个所述在线机器学习模型使用与所述流媒体客户端对应的流媒体状态数据进行训练。
3.根据权利要求2所述的方法,其中,对所述在线机器学习模型进行模型参数更新包括:
将所述多个在线机器学习模型的训练后的模型参数进行加权平均处理,生成聚合后的模型参数;
使用该聚合后的模型参数,对多个所述在线机器学习模型进行模型参数更新。
4.根据权利要求2所述的方法,其中,对所述在线机器学习模型进行模型参数更新包括:
针对所述多个在线机器学习模型中的指定在线机器学习模型执行如下处理:将所述多个在线机器学习模型的训练后的模型参数进行加权平均处理,生成聚合后的模型参数,其中,所述指定在线机器学习模型对应的权重值大于其他在线机器学习模型的权重值;
使用该聚合后的模型参数,对指定在线机器学习模型进行模型参数更新。
5.根据权利要求1所述的方法,其中,对所述在线机器学习模型进行训练并对所述在线机器学习模型进行模型参数更新包括:
获取所述下一时间段的流媒体状态数据,根据所述下一时间段的流媒体状态数据计算所述当前时间段的流媒体控制信息的奖励数据;
根据多个时间段的奖励数据,计算累积奖励;
使用累积奖励最大化的梯度策略,对所述在线机器学习模型进行训练并对所述在线机器学习模型进行模型参数更新。
6.根据权利要求5所述的方法,其中,多个时间段的所述流媒体状态数据、流媒体控制信息、奖励数据以及累积奖励被记录在数据缓冲区中,
使用累积奖励最大化的梯度策略,对所述在线机器学习模型进行训练并对所述在线机器学习模型进行模型参数更新包括:
当所述数据缓冲区中数据量超过预设阈值时,执行使用累积奖励最大化的梯度策略,对所述在线机器学习模型进行训练并对所述在线机器学习模型进行模型参数更新的处理。
7.根据权利要求5所述的方法,其中,使用累积奖励最大化的梯度策略,对所述在线机器学习模型进行训练并对所述在线机器学习模型进行模型参数更新包括:
在梯度更新的损失函数中,根据预设差异限制阈值,对损失函数中的新模型策略和旧模型策略之间的差异进行判定;
如果所述新模型策略和旧模型策略之间的差异大于所述限制阈值,则移除超出阈值部分对应的梯度损失激励;
使用移除了所述梯度损失激励后的损失函数值,对所述在线机器学习模型进行训练并对所述在线机器学习模型进行模型参数更新。
8.根据权利要求1所述的方法,其中,所述流媒体状态数据包括:流媒体客户端的上报的丢包率、网络延迟、延迟间隔和流媒体吞吐量中的一项或者任意多项。
9.根据权利要求1所述的方法,其中,所述流媒体控制信息包括流媒体处理速率,用于控制流媒体客户端执行流媒体的编码和/或发送的处理。
10.根据权利要求1所述的方法,其中,所述在线机器学习模型为在线强化学习模型。
11.一种流媒体数据处理装置,包括:
状态数据获取模块,用于获取流媒体客户端的当前时间段的流媒体状态数据;
控制信息生成模块,用于通过在线机器学习模型,根据所述流媒体状态数据,确定所述流媒体客户端的当前时间段的流媒体控制信息,并发送给所述流媒体客户端;
模型更新模块,用于获取流媒体客户端的下一时间段的流媒体状态数据,根据所述下一时间段的流媒体状态数据和所述当前时间段的流媒体控制信息,对所述在线机器学习模型进行训练并对所述在线机器学习模型进行模型参数更新。
12.根据权利要求11所述的装置,其中,所述流媒体客户端为多个,所述在线机器学习模型也为多个,与所述流媒体客户端对应,多个所述在线机器学习模型使用与所述流媒体客户端对应的流媒体状态数据进行训练。
13.根据权利要求12所述的装置,其中,对所述在线机器学习模型进行模型参数更新包括:
将所述多个在线机器学习模型的训练后的模型参数进行加权平均处理,生成聚合后的模型参数;
使用该聚合后的模型参数,对多个所述在线机器学习模型进行模型参数更新。
14.根据权利要求12所述的装置,其中,对所述在线机器学习模型进行模型参数更新包括:
针对所述多个在线机器学习模型中的指定在线机器学习模型执行如下处理:将所述多个在线机器学习模型的训练后的模型参数进行加权平均处理,生成聚合后的模型参数,其中,所述指定在线机器学习模型对应的权重值大于其他在线机器学习模型的权重值;
使用该聚合后的模型参数,对指定在线机器学习模型进行模型参数更新。
15.一种流媒体数据处理方法,包括:
检测当前时间段的流媒体状态数据,并发送部署在云服务器的与客户端对应的在线机器学习模型;
接收所述在线机器学习模型返回的当前时间段的流媒体控制信息,并根据该流媒体控制信息执行流媒体控制处理;
检测下一时间段的流媒体状态数据,并向所述在线机器学习模型进行发送。
16.根据权利要求15所述的方法,其中,所述流媒体控制信息包括流媒体处理速率,所述根据该流媒体控制信息执行流媒体控制处理包括:根据流媒体处理速率,控制流媒体客户端执行流媒体的编码和/或发送的处理。
17.一种流媒体数据处理方法,包括:检测当前时间段的流媒体状态数据,发送给部署在本地在线机器学习模型;
获取在线机器学习模型输出的当前时间段的流媒体控制信息,并根据该流媒体控制信息执行流媒体控制处理;
检测下一时间段的流媒体状态数据,发送给所述在线机器学习模型;
根据所述下一时间段的流媒体状态数据和所述当前时间段的流媒体控制信息,对所述在线机器学习模型进行训练生成新的模型参数,并向云服务器上报;
接收云服务器返回的经过聚合学习处理后的模型参数,根据所述聚合学习处理后的模型参数,对所述本地在线机器学习模型进行模型参数更新。
18.根据权利要求17所述的方法,其中,还包括:
所述云服务器将多个客户端上报的模型参数进行加权平均处理,生成所述聚合学习处理后的模型参数,其中,所述在线机器学习模型对应的权重值大于其他在线机器学习模型的权重值。
19.一种电子设备,包括:
存储器,用于存储程序;
处理器,用于运行所述存储器中存储的所述程序,以执行权利要求1至10、15至18任一所述的流媒体数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010880129.1A CN113422751B (zh) | 2020-08-27 | 2020-08-27 | 基于在线强化学习的流媒体处理方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010880129.1A CN113422751B (zh) | 2020-08-27 | 2020-08-27 | 基于在线强化学习的流媒体处理方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113422751A true CN113422751A (zh) | 2021-09-21 |
CN113422751B CN113422751B (zh) | 2023-12-05 |
Family
ID=77711530
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010880129.1A Active CN113422751B (zh) | 2020-08-27 | 2020-08-27 | 基于在线强化学习的流媒体处理方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113422751B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113660488A (zh) * | 2021-10-18 | 2021-11-16 | 腾讯科技(深圳)有限公司 | 对多媒体数据进行流控及流控模型训练方法、以及装置 |
CN114629797A (zh) * | 2022-03-11 | 2022-06-14 | 阿里巴巴(中国)有限公司 | 带宽预测方法、模型生成方法及设备 |
CN114727131A (zh) * | 2022-03-28 | 2022-07-08 | 慧之安信息技术股份有限公司 | 基于机器学习的流媒体推流性能提升方法和装置 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170237792A1 (en) * | 2016-02-15 | 2017-08-17 | NETFLIX, Inc, | Feature Generation for Online/Offline Machine Learning |
CN108632384A (zh) * | 2018-05-15 | 2018-10-09 | 西安电子科技大学 | 基于视频请求数预测的负载均衡方法 |
CN109635948A (zh) * | 2018-12-19 | 2019-04-16 | 北京达佳互联信息技术有限公司 | 在线训练方法、装置、系统及计算机可读存储介质 |
CN109729437A (zh) * | 2017-10-30 | 2019-05-07 | 中国电信股份有限公司 | 流媒体自适应传输方法、终端和系统 |
CN110114783A (zh) * | 2016-11-04 | 2019-08-09 | 渊慧科技有限公司 | 利用辅助任务的强化学习 |
CN110188910A (zh) * | 2018-07-10 | 2019-08-30 | 第四范式(北京)技术有限公司 | 利用机器学习模型提供在线预测服务的方法及系统 |
CN110321422A (zh) * | 2018-03-28 | 2019-10-11 | 腾讯科技(深圳)有限公司 | 在线训练模型的方法、推送方法、装置以及设备 |
CN110390041A (zh) * | 2019-07-02 | 2019-10-29 | 上海上湖信息技术有限公司 | 在线学习方法及装置、计算机可读存储介质 |
CN110460880A (zh) * | 2019-08-09 | 2019-11-15 | 东北大学 | 基于粒子群和神经网络的工业无线流媒体自适应传输方法 |
CN110503206A (zh) * | 2019-08-09 | 2019-11-26 | 阿里巴巴集团控股有限公司 | 一种预测模型更新方法、装置、设备及可读介质 |
CN111083535A (zh) * | 2019-12-26 | 2020-04-28 | 天翼物联科技有限公司 | 视频数据传输码率自适应方法、系统、装置和存储介质 |
CN111160380A (zh) * | 2018-11-07 | 2020-05-15 | 华为技术有限公司 | 生成视频分析模型的方法及视频分析系统 |
CN111159558A (zh) * | 2019-12-31 | 2020-05-15 | 支付宝(杭州)信息技术有限公司 | 一种推荐列表的生成方法、装置和电子设备 |
-
2020
- 2020-08-27 CN CN202010880129.1A patent/CN113422751B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170237792A1 (en) * | 2016-02-15 | 2017-08-17 | NETFLIX, Inc, | Feature Generation for Online/Offline Machine Learning |
CN110114783A (zh) * | 2016-11-04 | 2019-08-09 | 渊慧科技有限公司 | 利用辅助任务的强化学习 |
CN109729437A (zh) * | 2017-10-30 | 2019-05-07 | 中国电信股份有限公司 | 流媒体自适应传输方法、终端和系统 |
CN110321422A (zh) * | 2018-03-28 | 2019-10-11 | 腾讯科技(深圳)有限公司 | 在线训练模型的方法、推送方法、装置以及设备 |
CN108632384A (zh) * | 2018-05-15 | 2018-10-09 | 西安电子科技大学 | 基于视频请求数预测的负载均衡方法 |
CN110188910A (zh) * | 2018-07-10 | 2019-08-30 | 第四范式(北京)技术有限公司 | 利用机器学习模型提供在线预测服务的方法及系统 |
CN111160380A (zh) * | 2018-11-07 | 2020-05-15 | 华为技术有限公司 | 生成视频分析模型的方法及视频分析系统 |
CN109635948A (zh) * | 2018-12-19 | 2019-04-16 | 北京达佳互联信息技术有限公司 | 在线训练方法、装置、系统及计算机可读存储介质 |
CN110390041A (zh) * | 2019-07-02 | 2019-10-29 | 上海上湖信息技术有限公司 | 在线学习方法及装置、计算机可读存储介质 |
CN110460880A (zh) * | 2019-08-09 | 2019-11-15 | 东北大学 | 基于粒子群和神经网络的工业无线流媒体自适应传输方法 |
CN110503206A (zh) * | 2019-08-09 | 2019-11-26 | 阿里巴巴集团控股有限公司 | 一种预测模型更新方法、装置、设备及可读介质 |
CN111083535A (zh) * | 2019-12-26 | 2020-04-28 | 天翼物联科技有限公司 | 视频数据传输码率自适应方法、系统、装置和存储介质 |
CN111159558A (zh) * | 2019-12-31 | 2020-05-15 | 支付宝(杭州)信息技术有限公司 | 一种推荐列表的生成方法、装置和电子设备 |
Non-Patent Citations (2)
Title |
---|
梅香: "直播场景下DASH 流媒体服务质量优化", 《中国优秀硕士学位论文全文数据库 信息科技辑 2020年》 * |
梅香: "直播场景下DASH 流媒体服务质量优化", 中国优秀硕士学位论文全文数据库 信息科技辑 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113660488A (zh) * | 2021-10-18 | 2021-11-16 | 腾讯科技(深圳)有限公司 | 对多媒体数据进行流控及流控模型训练方法、以及装置 |
CN114629797A (zh) * | 2022-03-11 | 2022-06-14 | 阿里巴巴(中国)有限公司 | 带宽预测方法、模型生成方法及设备 |
CN114629797B (zh) * | 2022-03-11 | 2024-03-08 | 阿里巴巴(中国)有限公司 | 带宽预测方法、模型生成方法及设备 |
CN114727131A (zh) * | 2022-03-28 | 2022-07-08 | 慧之安信息技术股份有限公司 | 基于机器学习的流媒体推流性能提升方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113422751B (zh) | 2023-12-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113422751B (zh) | 基于在线强化学习的流媒体处理方法、装置及电子设备 | |
CN114449282B (zh) | 视频传输控制方法及装置、设备、存储介质 | |
US9807457B1 (en) | Predictive content placement on a managed services system | |
CN110268717A (zh) | 使用播放统计信息对多表示编码的比特率优化 | |
US11699084B2 (en) | Reinforcement learning in real-time communications | |
Mei et al. | Realtime mobile bandwidth prediction using lstm neural network | |
CN112954385A (zh) | 一种基于控制论和数据驱动的自适应分流决策方法 | |
Guo et al. | Buffer-aware streaming in small-scale wireless networks: A deep reinforcement learning approach | |
US20230138038A1 (en) | Reinforcement learning for jitter buffer control | |
Cui et al. | TCLiVi: Transmission control in live video streaming based on deep reinforcement learning | |
Ye et al. | Power control for wireless VBR video streaming: From optimization to reinforcement learning | |
CN113630625B (zh) | 视频分发系统和视频分发方法 | |
Xiao et al. | Traffic-aware rate adaptation for improving time-varying QoE factors in mobile video streaming | |
Xu et al. | PnP-DRL: A plug-and-play deep reinforcement learning approach for experience-driven networking | |
CN115695390B (zh) | 一种基于移动边缘计算的矿山安全监控系统海量视频数据自适应流方法 | |
Naresh et al. | Sac-abr: Soft actor-critic based deep reinforcement learning for adaptive bitrate streaming | |
Kim et al. | HTTP adaptive streaming scheme based on reinforcement learning with edge computing assistance | |
Çetinkaya et al. | Offline Reinforcement Learning for Bandwidth Estimation in RTC Using a Fast Actor and Not-So-Furious Critic | |
Du et al. | Dynamic Push for HTTP Adaptive Streaming with Deep Reinforcement Learning | |
Zhang et al. | Adaptive Frame Rate Optimization Based on Particle Swarm and Neural Network for Industrial Video Stream | |
Zhu et al. | Improving the application performance of Loki via algorithm optimization | |
Saleem et al. | Quality enhanced multimedia content delivery for mobile cloud with deep reinforcement learning | |
Yaqoob et al. | Fuzzy Logic-based Adaptive Multimedia Streaming for Internet of Vehicles | |
US11412283B1 (en) | System and method for adaptively streaming video | |
Elanthiraiyan et al. | Live Video Streaming Buffering Time Reduction using DRL Algorithm |
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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40059904 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |