一种基于对比学习的网络服务QoS预测方法技术

技术编号:32545616 阅读:9 留言:0更新日期:2022-03-05 11:43
本发明专利技术公开了一种基于对比学习的网络服务QoS预测方法。目前主流预测方法为协同过滤法,主要分为非时间感知方法和时间感知方法,然而当数据稀疏时,这些方法无法推断出最适当的QoS表示以此预测值。本发明专利技术采用多任务策略,通过主要的预测任务对QoS序列进行编码,额外对比学习任务对序列进行增强与编码,来联合优化损失函数进而优化编码器,推断出用户最适当的QoS表示,最终实现预测。通过本发明专利技术的预测方法,可以在数据稀疏时更好地预测QoS值,从而更好地为用户提供个性化服务。好地为用户提供个性化服务。好地为用户提供个性化服务。

【技术实现步骤摘要】
一种基于对比学习的网络服务QoS预测方法


[0001]本专利技术属于网络服务领域,涉及一种基于对比学习实现网络服务QoS预测的方法。

技术介绍

[0002]网络服务是指一些在网络上运行的、面向服务的、基于分布式程序的软件模块。随着互联网的发展,一方面,人们对网络服务的要求越来越高。如在传输内容上从单一的数据变为数据、图像、视频等多媒体内容;在传输要求上,从小流量传输变为云计算、大数据等大流量传输。另一方面,互联网始终存在传输延时、延时抖动等问题。在此背景下,为了给用户提供更好的网络服务,可以使用网络服务的一些属性来描述网络服务。
[0003]网络服务的质量可以通过功能属性和非功能属性来描述。当前通过非功能属性来描述网络质量就尤为重要。网络的非功能属性值即为QoS值,包括网络的响应时间、吞吐量、故障概率等等。然而,用户观测到的QoS值很大程度上取决于调用网络服务的环境,即在同一网络服务下,不同的用户的网络质量可能相对不同。因此,需要为不同的用户获取个性化的QoS值,从而为不同用户提供更好的网络服务。由于时间成本高昂和资源开销巨大,用户不可能调用全部的服务来获得个性化的QoS值,因此,只能基于现有的观察结果,预测缺失的QoS值,从而获得近似的个性化QoS值。
[0004]现有的大多数QoS预测方法属于协同过滤方法,其中根据是否使用时间特征,将协同过滤法分为两类:非时间感知方法和时间感知方法。非时间感知的QoS预测方法使用单个时间片,不考虑时间影响因素,主要包括传统的协同过滤方法、基于位置的协同过滤方法和基于上下文的协同过滤方法。这些方法存在以下问题:所依赖的外部信息不容易获取,并且实现起来也更为复杂。为了弥补这些缺点并进一步提高推荐的准确性,研究人员开始将上下文信息(例如,位置、偏好和时间)集成到基于协同过滤的方法的相似度计算中,即时间感知的QoS预测方法,包括基于内存的协同过滤法、基于模型的协同过滤法。其中,基于模型的协同过滤法主要包括基于神经网络的模型,通过潜在的特征向量表示每个时间片,来描述整个网络在不同时间的状态。虽然这些方法已经取得了较好的成果,但是容易出现数据稀疏问题,可能无法做出精确的预测。
[0005]为了解决这一问题,可以将自监督学习应用在QoS预测上。自监督学习从未标记的数据提取内在的数据相关性,来优化用户表示模型,以改进预测结果。最近的研究方向是通过从原始特征数据的固有结构中提取的自我监督信号来增强特征表示。这些以前的工作通常侧重于改进项目级别的表示,然而,如何在用户行为序列水平上获得准确的表示还没有得到很好的研究。

技术实现思路

[0006]本专利技术的目的在于从用户的QoS序列上获得尽可能准确的表示,从而预测出未知的QoS值,而提出一种基于对比学习的网络服务QoS预测方法。
[0007]本专利技术方法的使用步骤是:
[0008]步骤一:
[0009]对于用户QoS数据进行处理,该数据为用户在连续64个时间片上调用不同服务所对应的QoS值。对于每个用户u,在每个时间片上,将其调用的所有服务v所对应的QoS值形成一个序列,该序列即为后续处理中输入的QoS 数据序列其中|s
u
|为QoS序列的长度。
[0010]步骤二:
[0011]采用多任务策略。将预测QoS任务分成主要的预测任务与额外的对比学习任务。
[0012]步骤三:
[0013]进行主要的预测任务。输入用户的QoS数据序列s
u
,首先将其分为历史序列与待预测的QoS值,其次使用编码器分别进行编码,得到用户表示,最后利用以下公式计算该任务的损失L
main

[0014][0015]其中,表示推断出的用户表示形式,即用户u交互。
[0016]步骤四:
[0017]进行额外的对比学习任务。输入用户QoS数据序列s
u
,首先应用数据增强方法,将其转换为两个增强序列如果两个转换实例来自同一样本,则将它们视为正样本对。如果它们来自不同样本,则它们是负样本。其次,使用和上述相同的编码器对增强后的序列进行编码,得到用户表示的和最后利用以下公式计算该任务的对比损失L
cl

[0018][0019]使用对比损失,最小化相同用户QoS序列的不同增强序列之间的差异,并最大化来自不同用户的QoS增强序列之间的差异。
[0020]步骤五:
[0021]计算以上两种任务的总损失。总损失L
total
为上述两种损失的线性加权和,公式如下:
[0022]L
total
=L
main
+λL
cl
[0023]通过优化该损失函数,可以对编码器进行优化,使编码器进行更好的编码,获得准确的用户表示,从而预测QoS值。
[0024]本专利技术的有益效果为:通过本专利技术的方法,将传统的序列预测与对比学习目标相结合。在对比学习损失的情况下,通过最大化潜在空间中相互交互 QoS序列的不同增强视图之间的一致性来编码用户表示,来推断出准确的用户表示,然后为其选取QoS值,即预测QoS值,从而为不同用户提供个性化的网络服务。
附图说明
[0025][0026]图1基于对比学习的网络服务QoS预测流程图;
[0027]图2QoS数据增强方法流程图;
[0028]图3用户表示的编码器流程图;
[0029]图4编码器堆叠流程图。
具体实施方式
[0030]以下结合附图对本专利技术作进一步说明:
[0031](1)本专利技术整体流程如附图1所示。
[0032]将用户的QoS数据进行处理,形成用户QoS数据序列。分别在主要的预测任务与额外的对比学习任务上通过增强、编码计算损失函数,利用损失函数对编码器进行优化,获得有效的用户表达,最终预测QoS值。
[0033](2)三种对QoS数据进行增强的方法,如附图2所示。
[0034]第一种方法为随机剪裁方法。对于用户的QoS序列,随机选择一个连续的子序列。通过随机剪裁方法,可以获得广义用户QoS动向,而不需要用户的全面信息,从而进行增强用户表示模型。
[0035]第二种方法为随机掩模方法。对于用户的QoS序列,随机掩盖一部分QoS 值,即用特殊项mask将其替换。通过掩模技术,仍然可以保留用户主要的 QoS动向。
[0036]第三种方法为重新排序方法。对于用户的QoS序列,随机选取一个连续的子序列,对其进行重新排序。通过重新排序方法,可以增强其遇到新交互时的鲁棒性。
[0037]在对比学习任务的数据增强部分,随机选择以上两种方法对用户序列进行增强,从而得到两个增强序列。
[0038](3)为了获得有意义的用户表示,提出用户表示的编码器并进行堆叠。
[0039]利用神经网络作为用户表示的编码器,从QoS序列中提取信息。该编码器由三个部分组成:嵌入层(Embedding层)、多头本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于对比学习的网络服务QoS预测方法,其特征在于该方法包括以下步骤:步骤一,对于用户QoS数据进行处理,该数据为用户在连续64个时间片上调用不同服务所对应的QoS值;对于每个用户,在每个时间片上,将其调用的所有服务对应的QoS值形成一个序列,该序列即为后续处理中输入的QoS数据序列;步骤二,采用多任务策略将预测QoS任务分成主要的预测任务与额外的对比学习任务;步骤三,进行主要的预测任务输入用户的QoS数据序列,首先将其分为历史序列与待预测的QoS值,其次使用编码器分别进行编码,得到用户表示,最后计算该任务的损失;步骤四,进行额外的对比学习任务输入用户QoS数据序列,首先应用数据增强方法,将其转换为两个QoS增强序列;如果两个转换实例来自同一样本,则将它们视为正对;如果它们来自不同样本,则它们是负样本;其次,使用编码器对增强后的序列进行编码,得到用户表示,最后利计算该任务的对比损失;步骤五,计算以上两种任务...

【专利技术属性】
技术研发人员:陈慢慢殷昱煜邸千卉梁婷婷袁成
申请(专利权)人:杭州电子科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1