1.一种多任务优化的智能缓存方法,其特征在于,该方法具体包括以下步骤:S1:当用户请求的内容未被缓存在边缘服务器或缓存内容存在偏差时,边缘服务器采集用户端数据,包括用户信息和内容特征;
S2:采用不同特征处理方式对步骤S1采集到的数据进行编码处理;
S3:构建并训练多任务优化模型:采用深度学习方法,构造多任务优化模型;构造的多任务优化模型包括输入层、特征嵌入层输、特征共享层、门控专家层、塔层和输出层;输入步骤S2处理后的数据进行训练与预测,不断优化模型参数,预测得到未来一段时间内的内容热度和用户偏好程度;
S4:内容联合缓存:根据内容热度与用户偏好程度重要性的不同,设计联合因子,将两者进行联合优化,并将内容进行降序排列,根据边缘服务器的缓存容量选取Top‑k的内容进行缓存;
S5:优化缓存结果:根据联合优化结果优化缓存命中率与用户命中率。
2.根据权利要求1所述的多任务优化的智能缓存方法,其特征在于,步骤S2具体包括以下步骤:S21:对于采集到的离散特征,使用独热编码的方式进行编码;
任一经过独热编码的离散特征记为fd:
fd=[d1,d2,...,di,...,d||D||]其中, D表示离散特征fd的类别集合;
S22:对于采集到的连续特征,使用特征嵌入进行编码,得到的低维稠密嵌入特征Y=[y1,y2,y3...,yk];
其中, 表示过度矩阵的参数, 表示输入的稀疏特征,k和m表示参数矩阵的维度,且k<m, 表示偏置向量。
3.根据权利要求1所述的多任务优化的智能缓存方法,其特征在于,步骤S3中,构建特征共享层,具体包括:首先,将特征嵌入层各自分散的输入特征进行聚合,聚合后的向量记为fconcat:fconcat=(fd,fy)
其中,fy表示离散特征经过向量嵌入后的稠密向量,fd为经过独热编码的离散特征;
聚合后的向量仍然是一个高纬度较稀疏的向量,然后使用单层神经网络对聚合后的向量进行降维,降维后的输出向量记为fshare:fshare=σ(Wfconcat)
其中,W表示单层神经网络的权重,σ表示神经网络的激活函数,||fshare||<<||fconcat||。
4.根据权利要求1所述的多任务优化的智能缓存方法,其特征在于,步骤S3中,构建门控专家层,包括:使用门控专家层来替代共享底层;门控专家层由三部分组成:任务A和任务B的专家模块、共享专家模块和门控网络;其中,
1)多个专家模块的输入特征是相同的,即都是共享层降维后的输出特征,但各个专家模块是互相隔离的,根据训练误差独立的学习和更新各自的任务参数;
2)任务A和任务B的专家模块分别学习各自任务的差异性;共享专家模块学习各任务之间的相似性和关联性;
3)门控网络根据各个专家模块学习功能的不同,根据各自任务的需要,给各个专家模块分配不同的权重,进而将专家进行融合。
5.根据权利要求4所述的多任务优化的智能缓存方法,其特征在于,步骤S3中,构建门控专家层,具体包括:对于任务A的专家模块,将任务A专家模块的输出记为EA,则:其中, 表示任务A的专家模块中第m个专家的参数,M表示专家模块中包含的专家的个数;
EA,m,l=ReLu(WA,m,lEA,m,l‑1)+bA,m,lEA,m,1=ReLu(WA,m,1fshare)+bA,m,1其中,WA,m,l‑1表示任务A模块第m个专家中第l层的神经网络权重向量,EA,m,l‑1表示任务A模块第m个专家中第l‑1层的输出向量,bA,m,l表示任务A模块第m个专家中第l层神经网络的偏置向量,fshare表示降维后的输出向量;
同理,分别得到任务B的专家模块EB和共享专家模块ES;
门控网络通过对输入特征和专家模块的学习,根据各自任务的不同控制各个专家模块的权重;
k
其中,k∈{A,B}表示训练任务,G 表示门控网络对于任务k的输出向量, 表示任务kk的门控网络的参数矩阵;S 表示任务k的输入向量, 表示任务k模块第m个专家的输出向量, 表示共享专家模块第m个专家的输出向量。
6.根据权利要求1所述的多任务优化的智能缓存方法,其特征在于,步骤S3中,构建的塔层包括:在门控专家层之后加入塔层;塔层将门控专家层输出的矩阵向量输入多层的神经网络进一步挖掘各个任务的异化信息。
7.根据权利要求1所述的多任务优化的智能缓存方法,其特征在于,步骤S3中,构建的输出层包括:输出层有两个任务,分别是预测使用softmax函数和ReLu分别进行归一化和标准化;采用不同的误差函数进行拟合;分类问题使用对数形式的交叉熵损失函数。
8.根据权利要求1所述的多任务优化的智能缓存方法,其特征在于,步骤S4具体包括以下步骤:S41:根据多任务优化模型训练的结果对用户偏好程度进行加权平均并排序;
S42:根据多任务优化模型训练的结果对内容热度进行排序;
S43:将两者排序结果取交集得到最终的缓存内容。