一种内容流行度随时间变化下的基站缓存方法与流程

文档序号:16248810发布日期:2018-12-11 23:49阅读:548来源:国知局
一种内容流行度随时间变化下的基站缓存方法与流程

本发明涉及移动通信系统技术领域,尤其是一种内容流行度随时间变化下的基站缓存方法。

背景技术

为了应对海量数据增长带来的对系统容量的挑战,一种有效的方案是在宏基站周围部署helper,其中helper拥有缓存容量且能够缓存内容。当用户请求的内容存储在helper的缓存中,内容直接从helper传给用户,不会占用回程链路资源,同时减少传输时延,提高用户体验。如果用户请求的内容不在helper中,则将请求发送给宏基站并从宏基站下载所请求的内容。基站主动存储是在请求未到达之前将内容存储在helper中,可以减小回传链路的流量,进而缓解蜂窝系统中的流量负载,改善系统的性能。但目前多数缓存研究都是在内容流行度已知且不随时间变化的情况下研究缓存性能,在内容流行度随时间变化情况下,性能尚待改进。



技术实现要素:

发明目的:本发明目的在于提供一种基站缓存方法,能够在内容流行度随时间变化情况下优化缓存内容,提高缓存命中率,缓解回程链路负载,提高用户满意度。

技术方案:为实现上述发明目的,本发明采用如下技术方案:

一种内容流行度随时间变化下的基站缓存方法,包括如下步骤:

(1)在每个时刻t,对在时刻产生的缓存在helper中的内容,将内容作为多臂赌博机中的“臂”,采用组合置信区间上界算法估计内容流行度,并按照内容流行度从高到低缓内容,直到达到设定的各helper缓存容量占比;其中,td为设定的新内容流行度计算周期;

(2)每隔设定的时间段td,基于缓存在各个helper中的新内容的请求历史,利用隐语义模型估计每个helper下覆盖用户对新内容的流行度,并按照内容流行度从高到低缓内容。

作为优选,步骤(1)中根据公式估计时刻thelpern中内容流行度内容f的流行度,其中tf,n为内容f缓存在helpern的次数,为观测到的内容流行度,更新方式为为时刻t观测的瞬时请求次数。

作为优选,步骤(2)中,利用隐语义模型估计新内容的流行度,包括如下步骤:

(2.1)将新产生的内容依次存储在helper中,观测helper覆盖用户对新内容的请求频率,构造不完全流行度矩阵;

(2.2)初始化参数向量pn和qf,其中pn表征用户n对潜在特征的感兴趣程度,qf表征内容f在特征的权重;

(2.3)采用梯度下降法求解获得参数pn和qf直到如下损失函数达到最小:

其中,是已知内容流行度θf,n的(f,n)集合,参数λ控制正则化的程度;

(2.4)根据计算出的pn和qf,利用式估计helper对某个新内容的流行度。

作为优选,步骤(2.1)中对于第f个新内容,则将内容f缓存在第n=f%n个helper中,其中n是所有helper的个数。

作为优选,如果helper中没有足够的容量对时间段td之间产生的新内容进行缓存,则对新内容采用先进先出的规则进行替换。

作为优选,步骤(2.1)中新内容的不完全流行度矩阵根据计算;其中为时刻t观测的瞬时请求次数,tf,n为内容f缓存在helpern的次数。

有益效果:本发明结合机器学习中的多臂赌博机和隐语义模型提出一种在线实时的缓存策略。一方面多臂赌博机模型能够边学习内容的流行度,边缓存流行度高的内容。另一方面,隐语义模型采取基于用户行为统计的自动聚类,能反应用户对于内容的分类意见,能有效估计新内容的流行度,同时减少多臂赌博机对新内容的探索次数。本发明将多臂赌博机和隐语义模型进行结合,在内容流行度随时间变化情况下,能有效估计内容流行度,从而提高缓存命中率,改善用户满意度和网络回程负载;与现有技术相比,本发明将机器学习引入到对缓存内容的决策中,在内容流行度随时间变化的情况下,大大提高了缓存命中率,有效的缓解了回程链路负载,提高用户满意度。

附图说明

图1为本发明实施例的应用场景图。

图2为本发明实施例的方法流程示意图。

具体实施方式

下面结合附图和具体实施例对发明的技术方案做进一步介绍。

考虑一个部署n个helpers的宏蜂窝网络,helper用集合表示。如图1所示,每个helper通过可靠的回程链路连接到宏基站,同时向它服务的用户提供高速数据服务。假设每个helper有固定的缓存容量m,宏基站中的内容控制器根据缓存策略确定每个helper所缓存的内容。我们将时间分为一些时间段,每个时间段包含用户请求阶段和缓存放置阶段。在用户请求阶段,helper所服务的用户请求内容,如果请求的内容存储在helper中,则helper处理请求并将内容快速传输给用户,不会对宏蜂窝网络造成负载,与此同时,提高用户体验。在缓存放置阶段,内容控制器根据缓存内容的瞬时请求频率更新缓存内容,同时helper将缓存内容的更新信息广播给服务的用户。缓存放置阶段的持续时间可以忽略不计。

在每个时间段,helper将缓存的内容广播给它所服务的用户,注意内容控制器仅能观测到缓存在helper中的内容请求信息。如果有新内容产生,我们应该将新内容缓存在helper中来通知用户。

我们定义为helpern所服务用户对于内容f在时刻t瞬时请求次数。瞬时请求次数,是均值为θf,n的独立同分布随机变量,其值介于[0,un]之间,这里un是helper给定时间内所能服务的最大用户数。我们假设同一个helper所服务的用户对于同一个内容有相同的请求频率,不同helper所服务的用户对内容的请求频率不同。我们用vf表示内容f的平均请求次数。对于每一个内容,内容的平均请求次数vf和θf,n之间的关系是:

内容控制器的目标是在事先不知道内容流行度的情况下,仅仅通过观察缓存在helper中的内容请求频率,采用合适的缓存策略,估计内容流行度,在每个时间段优化缓存放置内容,使用户直接从helper获得的数据流量最大化。

当用户请求的内容f从helper中获得,我们认为网络中有一个sf的奖赏,这里sf是内容f的大小。这个奖赏可以被看作用户的qoe增益,或者是宏蜂窝网络中的带宽缓解。所以对于每一个helper,其平均瞬时奖赏可以描述为:

其中ft表示该时刻存在的所有内容的总数,是缓存放置矩阵的元素,其中表示内容f在时刻t被缓存在helpern中。

我们定义内容流行度矩阵其中每个元素θf,n(t)表示helpern的覆盖区域下内容f的流行度。注意到不同helper所服务的用户对于同一个内容的流行度可能不同,也就是θf,n(t)≠θf,n'(t)。如果内容流行度θ(t)已知,内容控制器可以根据流行度从高到低将内容缓存在helper中。但在实际中,我们事先并不知道内容流行度,所以需要根据历史请求来估计。在每个缓存内容放置阶段,内容控制器可以根据缓存在helper中的内容请求频率估计出内容流行度。我们提出一种优化的方式根据瞬时请求频率去估计内容流行度,并根据估计的内容流行度缓存内容。由于内容控制器仅仅能估计缓存在helper中的内容流行度,内容在helper中缓存的次数越多,对于内容流行度估计的就越准确,同时,内容控制器也要缓存当前它认为最流行的内容。这是多臂赌博机中的探索和利用权衡问题,与此同时,为了减少对新内容的探索次数,我们预先使用隐语义模型对新内容估计流行度。

我们采用如下的方式进行缓存,主要包括:

首先,考虑利用多臂赌博机模型估计内容流行度的问题:内容控制器仅仅能观测到缓存在helper中的内容请求频率,内容在helper中缓存的次数越多,对于内容流行度估计的就越准确,同时,内容控制器也要缓存当前它认为最流行的内容以确保缓存命中率。这是多臂赌博机中的探索和利用权衡问题。将内容作为多臂赌博机中的“臂”,采用组合置信区间上界算法(cucb),对缓存在helper中的内容估计内容流行度。并缓存内容流行度高的内容。

然后,对于一段时间产生的新内容,将新内容依次存储在helper中,并观察请求频率,利用隐语义模型(lfm)估计每个helper下覆盖用户对新内容的流行度。

最后,综合上述两方面,对于每个helper,根据估计的内容流行度,按照内容流行度从高到低将内容依次存储在helper中。

如图2所示,本发明实施例公开的一种内容流行度随时间变化下的基站缓存方法,包括如下步骤:

(1)利用多臂赌博机模型根据瞬时请求频率去估计内容流行度,并根据估计的内容流行度缓存内容。

在每个时刻t,我们对在时刻产生的内容利用组合置信区间上界算法来边缓存边预测内容流行度,用式来权衡探索和利用,其中tf,n为内容f缓存在helpern的次数,按照内容流行度从高到低缓内容,直到内容的大小达达helper缓存容量的1-η,其中η用来表示预留给新内容的容量占总缓存容量的百分比。具体包括如下步骤:

(1.1)初始化阶段,将所有内容都至少在helper中缓存一次,观测瞬时请求次数同时更新内容f在helpern中缓存的次数tf,n和观测到的内容流行度

(1.2)观测缓存在helper中内容的瞬时请求次数

(1.3)更新和tf,n←tf,n+1。

(1.4)计算根据选择流行度最高的内容缓存在helper中。

(1.5)t←t+1,重复(1.2)~(1.4)根据瞬时请求估计内容流行度,实时更新缓存内容。

(2)利用隐语义模型估计新内容的流行度,并根据估计的内容流行度缓存内容。

在每个t%td==0时刻,基于缓存在各个helper中的新内容的请求历史,构造不完全流行度矩阵θ(t),利用隐语义模型计算参数向量pn和qf,根据公式计算新内容f在各个helper中的流行度,对所有现存内容根据流行度从高到低缓存在每个helper中。具体包括如下步骤:

(2.1)将新产生的内容依次存储在helper中,观测helper覆盖用户对新内容的请求频率,根据构造不完全流行度矩阵θ(t)。本步骤中,如果第f个新内容产生,则将内容f缓存在第n=f%n个helper中,这里n是所有helper的个数。如果时间段td之间产生的新内容较多,helper中没有足够的容量对其进行缓存,则对新内容采用先进先出的规则进行替换。

(2.2)为了获得不同helper对新内容的流行度,即补全流行度矩阵θ(t),我们利用隐语义模型估计某个helper对新内容的流行度,首先用较小的值初始化参数向量pn和qf,其中pn表征用户n对潜在特征k的感兴趣程度,qf表征内容f在特征k的权重。

(2.3)隐语义模型通过最小化如下损失函数来获得参数pn和qf:

这里,是已知内容流行度θf,n的(f,n)集合。λ(||qf||2+||pn||2是用来防止过拟合的正则化项,参数λ控制正则化的程度,通常通过交叉验证来确定。

本步骤可采用梯度下降法求解获得参数pn和qf,计算参数最快下降方向也就是梯度

用如下公式更新参数pn和qf:

其中α是学习速率。

(2.4)根据计算出的pn和qf,利用式估计helper对某个新内容的流行度。对所有现存内容根据流行度从高到低缓存在每个helper中。

尽管本发明就优选实施方式进行了示意和描述,但本领域的技术人员应当理解,只要不超出本发明的权利要求所限定的范围,可以对本发明进行各种变化和修改。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1