【技术实现步骤摘要】
一种基于边缘缓存的个性化推荐方法
[0001]本专利技术涉及边缘计算与推荐系统领域,具体涉及一种基于边缘缓存的个性化推荐方法。
技术介绍
[0002]随着5G、云计算、边缘计算、大数据等新兴技术的快速发展,服务数量与种类呈现爆发式增长。然而,当面对大量的服务时,用户发现很难根据自己的喜好发现所需的服务。推荐系统作为一种有效缓解信息过载的方法,旨在通过用户的画像、历史行为记录等信息挖掘出用户偏好,并为用户推荐可能感兴趣的项目或服务。
[0003]传统的推荐系统大多采用云
‑
端两点式架构,通过将用户数据从客户端上传到云服务器,并在云中完成模型的建模与计算,再将推荐结果返回给用户。然而,随着服务规模的膨胀和用户日志的不断增长,云服务器负载将进一步增大,难以满足用户低延迟、高精准的服务需求。此外,用户信息和服务信息往往是稀疏的,导致用户特征向量和服务特征向量的高维稀疏性,难以得到较好的推荐质量。
技术实现思路
[0004]鉴于上述问题,本专利技术旨在提供一种基于边缘缓存的个性化推荐方法。通过调整推荐应用架构,在云端部署服务匹配模型,将用户划分至不同群组,通过挖掘群组偏好,将满足多数人需求的服务缓存到边缘服务器中,以降低服务传输的时延和花消耗。同时,在边缘端捕获用户行为,使用超图建模用户的社交关系,并通过卷积网络计算用户间邻域级特征,实现个性化推荐,进一步提高推荐的准确率。
[0005]技术方案:为解决上述技术问题,本专利技术采用的技术方案为:
[0006]第一方面,本 ...
【技术保护点】
【技术特征摘要】
1.一种基于边缘缓存的个性化推荐方法,其特征在于,包括:步骤1,根据用户历史服务调用记录,构建用户嵌入向量和服务嵌入向量;步骤2,基于用户嵌入向量,利用服务缓存概率预测模型进行预测得到服务缓存概率预测值:201、使用堆叠降噪编码器压缩用户嵌入向量;202、基于压缩后的用户嵌入向量,通过DBSCAN聚类算法实现群组划分,得到群组划分结果;203、根据所述群组划分结果,将同一群组中的用户在相同时段的服务调用记录进行融合,在不同时段的服务调用记录进行拼接,构建该群组的嵌入向量,使用多层感知机网络对群组的嵌入向量进行压缩,并利用门循环单元对群体偏好特征的动态变化进行建模,获得群组的偏好特征向量;通过全连接层和sigmoid函数输出服务缓存的概率;步骤3,根据所述服务缓存概率预测值,利用Top
‑
k策略实现边缘缓存;步骤4,基于服务嵌入向量和获取的用户社交关系特征,利用服务推荐概率预测模型进行预测得到服务推荐概率预测值:401、使用超图建模用户间的社交关系,为每个用户构造一条超边,每条超边包含该用户的所有邻居用户结点,并使用图卷积网络挖掘超图中的高阶连通信息,从而获得用户社交关系特征;402、使用多层感知机网络对所述服务嵌入向量进行压缩,将压缩后的服务嵌入向量和所述用户社交关系特征进行拼接后,输入全连接层,通过sigmoid函数输出服务被推荐的概率;步骤5、利用Top
‑
k策略将服务推荐概率预测值进行降序排序,选择前k个服务推荐给用户;步骤6、若被推荐的服务被缓存在边缘服务器中,则由边缘服务器向用户提供服务,否则,从云服务器中向用户提供服务。2.根据权利要求1所述的一种基于边缘缓存的个性化推荐方法,其特征在于,步骤1中,根据用户历史服务调用记录,构建用户嵌入向量根据用户历史服务调用记录,构建用户嵌入向量其中代表用户i与服务j交互的次数;根据用户历史服务调用记录,构建服务嵌入向量其中代表服务j与用户i交互过的次数。3.根据权利要求1所述的一种基于边缘缓存的个性化推荐方法,其特征在于,201、使用堆叠降噪编码器压缩用户嵌入向量包括:利用堆叠降噪编码器将稀疏的用户嵌入向量u
i
从高维空间压缩到低维隐藏空间,对于堆叠降噪编码器的每一层,输入h
l
‑1和输出h
l
表示为:h
l
=f(W
l
h
l
‑1+b
l
),where h0=u
i
其中l∈{1,2,..,L},W
l
和b
l
是第l层要学习的参数,堆叠降噪编码器的前L/2层为编码器,后L/2层为解码器,目标函数定义为:argmin||u
i
‑
h
L
||2通过反向传播训练堆叠降噪编码器模型,用堆叠降噪编码器第L/2层的输出特征x
u
作为
聚类样本;和/或,202、基于压缩后的用户嵌入向量,通过DBSCAN聚类算法实现群组划分包括:基于压缩后的用户嵌入向量,计算每个样本点间的欧式距离d
ij
,当d
ij
不大于领域的距离阈值r时,认为点j包含在点i的领域内;当且仅当点i的领域内包含样本点的数量大于等于领域内样本阈值M时,创建一个以点i为核心点的新类;反复寻找与核心点直接密度可达或密度可达的点,将其添加到相应的类,并将核心点间密度可达的类合并成同一类,直至没有新的点能加入已有类,完成用户的群组划分;和/或,步骤203包括:根据群组划分结果,用户分为m个群组,将同一群组的用户在相同时段的行为进行融合,在不同时段的服务调用记录进行拼接,获得群组i的嵌入向量合,在不同时段的服务调用记录进行拼接,获得群组i的嵌入向量表示第i个群组中的用户在a时刻与服务j的交互次数;将群组i的嵌入向量输入多层感知机网络,从高维空间压缩到低维隐藏空间,每一层的输入和输出为:其中l∈{1,2,..,L},W
(l)
、b
(l)
是第l层要学习的参数,在经过L层后,得到低维嵌入表示作为后续的输入;...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。