【技术实现步骤摘要】
一种基于联邦学习的序列推荐方法和系统
[0001]本专利技术涉及推荐方法领域和用户隐私保护领域,尤其涉及一种基于联邦学习的序列推荐方法和系统。
技术介绍
[0002]随着信息技术不断地发展,互联网上的信息发生了指数型的增长,用户无法快速地在网上寻找到自己想要的信息,由此诞生了个性化推荐技术。目前常见的推荐方法假设用户的喜好是一个静态的过程,即其喜好对于当前的历史数据是基本不变的,因此现有算法基于历史数据使用协同过滤、矩阵因子分解、深度学习等技术来对用户偏好进行建模,来独立地预测每个待推荐项目的评分或者排序,这样的技术方案虽然可解释性较强,能持续不断地给用户提供与其历史浏览/购买物品相似的项目或与其好友浏览/购买相似的项目,但是忽略了用户序列化决策的动态过程。
[0003]因此,为了实现动态建模以及长期收益的最大化,现有技术引入强化学习来将推荐过程看作一个序列化推荐过程,提出了基于策略或者基于价值的方法。其中,基于策略方法是学习生成策略来直接生成动作,这类方案专注于连续动作空间,在离散和连续动作空间存在不可忽视的鸿沟; ...
【技术保护点】
【技术特征摘要】
1.一种基于联邦学习的序列推荐方法,其特征在于,包括以下步骤:步骤1:中心服务器预先设置好强化学习模型参数,向参与联邦的客户端发送初始化的强化学习模型参数;所述的强化学习模型包括策略网络和评价网络;步骤2:各个客户端独立观察本地环境状态,收集本地的用户交互数据,存储到本地数据库;步骤3:各个客户端根据中心服务器发送的强化学习模型参数,加载本地模型,并从本地数据库中读取数据进行预处理操作,利用预处理后的本地数据对本地模型进行训练;所有的客户端均在“状态
‑
行动
‑
奖励
‑
状态”循环中训练各自的本地模型;步骤4:待各个客户端的本地模型收敛后,将随机选中客户端的本地模型参数上传到中心服务器端;将每个选中的客户端的本地模型训练指标作为一个参数组合,采用自注意力机制获取本地模型的权重值,计算上传的本地模型参数的加权值作为全局模型参数,并将全局模型参数传回本地客户端;步骤5:判断联邦学习训练轮次是否达到预设轮次;若是,则将最后一次本地训练结束后得到的本地模型作为各个客户端的个性化本地模型,用于生成符合用户操作习惯的序列化推荐方案;若否,则重复步骤3
‑
4,各个客户端开始下一次的参数上传及迭代训练。2.根据权利要求1所述的基于联邦学习的序列推荐方法,其特征在于,所述的用户交互数据包括带有时间戳的项目信息和个人信息。3.根据权利要求1所述的基于联邦学习的序列推荐方法,其特征在于,所述的步骤3包括:步骤3.1:对用户交互数据进行词嵌入处理,得到用户嵌入向量u_i和项目嵌入向量{i_b|b=1,2,...,n};其中,u_i表示第i个用户的嵌入向量,i_b表示第i个用户的第b个项目的嵌入向量,n表示项目的数量;步骤3.2:将最近一段时间内的若干个用户嵌入向量和项目嵌入向量作为策略网络的输入,利用状态表示模块得到用户的状态向量s;步骤3.3:将步骤3.2得到的状态向量s依次经过ReLU和Tanh激活层,转化为动作信息向量a,计算候选项目的排名分数;步骤3.4:将步骤3.2得到的状态向量s和步骤3.3得到的动作信息向量a作为评价网络的输入,所述的状态表示s经ReLU激活层转化后再与动作信息向量a进行拼接,拼接向量依次经ReLU和Tanh激活层得到Q值,根据Q值大小来更新策略网络的参数,直至收敛。4.根据权利要求3所述的基于联邦学习的序列推荐方法,其特征在于,所述的步骤3.2具体为:3.2a. 对项目嵌入向量{i_b|b=1,2,...,n}进行加权元素级相乘后进行平均池化,得到池化后的项目嵌入向量{g(i_b)|b=1,2,...,n},其中{g(i_b)=ave(w_b*i_b)|b=1,2,...,n}表示第i个用户的第b个项目的加权平均嵌入向量,g(.)表示加权平均池化操作,w_b表示第b个项目的权重,ave(.)表示计算每一个项目占所有项目加权和的比例;3.2b. 对用户嵌入向量u_i和项目的加权平均嵌入向量{g(i_b)|b=1,2,...,n}连接起
来,得到引入个人信息的项目嵌入向...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。