CN115186097A - 一种基于知识图谱和强化学习的交互式推荐方法 - Google Patents
一种基于知识图谱和强化学习的交互式推荐方法 Download PDFInfo
- Publication number
- CN115186097A CN115186097A CN202210017981.5A CN202210017981A CN115186097A CN 115186097 A CN115186097 A CN 115186097A CN 202210017981 A CN202210017981 A CN 202210017981A CN 115186097 A CN115186097 A CN 115186097A
- Authority
- CN
- China
- Prior art keywords
- reward
- representation
- node
- entity
- user
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/36—Creation of semantic tools, e.g. ontology or thesauri
- G06F16/367—Ontology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Animal Behavior & Ethology (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种基于知识图谱和强化学习的交互式推荐方法,涉及交互式推荐技术领域。从建模整个交互式推荐过程角度出发,结合图注意力机制,语义相似性、结构相似性,加入好奇心机制,有效建模推荐过程并提高推荐性能指标,构建训练稳定且方差小的模型。克服现有模型中物品相关信息少,未参考邻居信息以及训练过程的候选集巨大造成的算法效率低下,同时提出了新的奖励设定机制。采用了双网络结构训练,加入了防止过拟合的优化设计,并设置了引入好奇心机制的奖励模拟器,从评分,知识图谱中节点距离,好奇心机制三个维度给出奖励的准则,并加入了减少策略方差的机制,模型训练稳定且效率显著提升。
Description
技术领域
本发明涉及交互式推荐建模方法,具体涉及一种基于知识图谱和强化学习的交互式推荐方法。
背景技术
交互式推荐是通过建模用户与推荐***的整个交互过程,帮助推荐***学习推荐策略,并利用学习到的灵活的推荐策略导出下一步推荐决策。交互式推荐作为一种新型的推荐方式,为如何获得最优的长期的用户体验问题上提供了解决办法。
目前大多数的推荐算法被视为一步预测任务,从海量的信息中筛选出个性化的相关性内容推荐给用户,整体算法流程可看作静态的过程,即推荐算法与用户之间没有交互,因此并不能利用用户持续的即时反馈改进推荐算法。这类方式侧重于建模用户的一致性偏好,便无法反映用户偏好的高度动态性。因此,一些学者开始研究交互式推荐***,其核心思路是把推荐问题制定为一个多步决策过程,在每一步骤中,推荐***通过推荐策略选择一个物品并推荐给用户,然后推荐***接受来自用户的反馈,该反馈随后以连续的方式导出下一个推荐决策,重复上述过程直至用户访问***结束。现有的模拟交互式推荐的一类方法是基于多臂***的(MAB),但此类方法并没有明确地为***长期规划而设计,这使得这类方法的性能不尽如人意。当前被用于解决交互式推荐问题的另一类方法便是基于深度强化学习(DRL)的,其在动态环境下决策,并在长期规划方面具有巨大潜力。然而,深度强化学习中的基于时序差分的方法在估计计算中使用自举,这会使得在策略学习的时候出现不稳定和发散的问题。同时,每个步骤中的动作空间与状态空间巨大,直接增大了学习推荐策略的时间复杂度,算法效率低下。为了解决上述问题,研究者开始探索利用丰富的辅助信息并结合深度强化学习进行交互式推荐建模与设计,这种丰富的辅助信息可以是知识图谱,文本,序列信息等。
知识图谱是由实体与关系组成的大型异构网络,不同类型的实体都可以称为节点,不同类型的关系都可以称为边。在推荐中引入知识图谱,不仅可以生成结合了知识图谱结构信息和语义信息的节点嵌入,还可以利用知识图谱对候选动作空间进行缩小。目前少数研究者进行了这方面的研究:Zhou等人首先提出的KGQR模型是一种结合了知识图谱并扩展了DQN的推荐框架;Chen等人随后提出的KGRL模型是一种结合知识图谱的Actor-Critic框架,使用DDPG算法训练,但是存在连续动作表示和真实的离散动作表示不一致问题。也有研究者在推荐中引入文本或物品集合,例如Chen等人为了避免连续动作表示和真实离散动作不一致问题,提出了TPGR模型,这是一个树形结构的策略梯度推荐框架,依据物品集合建立一个平衡的层次聚类树,但该方法在新物品频繁出现时有构建聚类树的负担;为了提高效率,Dulac等人提出先在连续的隐藏空间中学习动作表示,然后使用k近邻搜索方法找到有效项。
以上方法通常存在以下几个问题:1.引入的辅助信息都普遍在加入新物品时具有高的重构难度,例如重构树结构;2.模型以离散方式建模时存在动作、状态空间巨大而造成的计算量大问题;3.模型以连续方式建模时存在连续动作与真实离散动作向量不一致问题以及匹配难度大的问题。4.强化学习模型由于自举和最优贝尔曼方程所造成的过估计问题,各种优化方式顾此失彼,模型复杂度和训练难度增大。
发明内容
针对现有技术存在的问题,本发明提供了一种基于知识图谱和强化学习的交互式推荐方法,旨在有效建模交互式推荐过程,构建训练稳定且方差小的模型。通过知识图谱这种辅助信息克服现有模型中物品相关信息少,未参考邻居信息以及训练过程的候选集巨大造成的算法效率低下。
本发明的技术方案是:
一种基于知识图谱和强化学习的交互式推荐方法,包括如下步骤:
步骤1:将推荐数据集中的物品与知识库Freebase中的实体进行对应,构建得到特定领域知识图谱,根据构建的知识图谱,对知识图谱进行预嵌入得到知识图谱中实体和关系的低维表示。
其中实体映射到超平面后的映射公式为:
其中,h代表知识图谱中头实体节点表示,h⊥代表映射后的头实体节点表示;tail代表尾实体节点表示,tail⊥代表映射后的尾实体节点表示;每个关系r都有一个是与超平面表示相关的矩阵参数Wr。
步骤2:计算知识图谱中的实体节点与其一阶邻居实体节点之间的注意力系数,利用计算得到的注意力系数与步骤1得到的实体低维表示,以加权求和的计算方式得到传播了一阶邻居实体节点的中心实体低维表示。
所述计算注意力系数公式为:
gnj=LeakyReLu(Win||Wij) (3)
其中,in和ij为节点n和节点j的向量表示;gnj为节点j对于节点n的注意力系数;LeakyReLU为非线性激活函数;W为权值矩阵;||为两个向量的拼接;使用softmax函数对节点n的所有一阶邻居实体节点的注意力系数进行规范化,公式如下:
其中,αnj为节点j对于中心节点n的进行了规范化后的注意力系数;N为对于节点n的所有一阶邻居实体节点集合;ik为节点k的向量表示。
所述以加权求和的方式得到传播了一阶邻居实体节点的中心实体低维表示i′n的计算公式如下:
其中,σ是一个非线性函数,作为一种单层前向神经网络。
步骤3:对步骤1得到的实体低维表示与步骤2得到的传播了一阶邻居实体节点的中心实体低维表示进行集成,集成操作所得到的实体节点表示将作为下一轮实体低维表示,重复步骤2以及本步骤操作,直至实体节点嵌入表示收敛;
所述集成公式如下:
en=fBi-Interaction(in,i′n)=LeakyReLU(W(in+i′n))+LeakyReLU(W(in⊙i′n)) (6)
其中,fBi-Interaction为使用Bi-Interaction集成器的集成函数,集成器还可以考虑使用GCN集成器或GraphSage集成器;⊙为Hadamard积;W为权值矩阵;LeakyReLU为激活函数;in为节点n的向量表示,i′n为公式(5)的输出结果,即传播了一阶邻居实体节点的中心实体低维表示i′n。
定义上一层与下一层的聚集函数,具体计算方式如下:
其中l为第l轮集成,l-1为第l-1轮,即第l轮的上一轮;指l-1轮节点n的表示,指l-1轮以节点n为中心的聚集一阶邻居节点的信息和;采用了Bi-Interaction集成器得到 是集成了第l-1轮时实体节点信息与聚集了一阶邻居实体节点信息的第l轮节点n的表示。
步骤4:从步骤3得到的实体节点表示中取出用户有过正向交互过的物品表示,输入至GRU模型得到用户即时偏好向量,即状态。
步骤4.1:针对交互式推荐的建模过程进行定义;
给定一组用户U={u1,u2,u3,.....},一组物品I={i1,i2,i3,.....}以及步骤1构建的知识图谱先初始化随机策略π,当用户(即环境)和推荐策略(即智能体)第t次交互时,在用户特定偏好St下智能体向用户(ui∈U)推荐动作At,此动作是基于随机策略π选择的,随之获得用户的反馈(fi∈F),包括点击,收藏,忽略,评分,得到的反馈可用来改进随机策略π,用户偏好状态也根据状态转移函数由St变为St+1。
步骤4.2:构建交互式推荐智能体,定义MDP元组;
给定过去交互的观察{u,i1,f1,...,it-1,ft-1},推荐策略被建模为一个条件分布,用来表示在t次交互时,推荐物品it的概率。在用户和推荐策略之间的一系列交互就会产生一条轨迹ξ={S0,i0,r0,...,St,it,rt,...,ST},获得向用户推荐物品以得到长期累计奖励最大的推荐策略π*,定义如下:
其中,是策略π下的期望折扣奖励;状态St由用户在时间t之前感兴趣的,即有过正向交互的物品决定,动作At为推荐一个物品或物品列表;奖励r(St,At)为奖励模拟器根据用户对推荐物品的即时反馈给出的奖励,折扣因子γ∈[0,1],γ为0时候,将完全专注于眼前的回报,在t为1时,即时奖励是0.9倍的r(St,At),t为2时,即时奖励是0.81倍的r(St,At),以此类推;T指的是一条轨迹的长度;Σ指的是求和操作;π指推荐策略,π*指的是最优推荐策略;Π指的是所有策略的集合。
步骤4.3:确定每个步骤的用户即时偏好向量,计算物品集成反馈之后的表示;
先将点击项目序列{it}通过步骤2与步骤3转换成嵌入向量et∈Rd,其中d是向量的维度。物品集成反馈之后的表示计算为:
In=concat(en,tanh(WFfn+bF)) (9)
其中,en是知识图注意力模块中得到的实体节点n的嵌入表示;fn一个反馈类型对应的one-hot向量;使用tanh作为激活函数;WF是参数矩阵;bF是偏置向量参数;concat为连接函数;In则是物品集成反馈之后的表示,即此步骤的输出。
步骤4.4:使用GRU模型来跟踪状态;
上一步骤的输出是用户每个交互过的物品集成反馈之后得到的新的物品表示,将其输入至GRU模型中计算用户的状态。GRU模型是一个序列模型,由若干个GRU单元构成,其中一个GRU单元的函数被定义为:
其中,It是输入向量,即公式(9)的输出;zt是更新门;rt是复位门;°是element-wise积;Wz,Wr,Wh分别是计算更新门,复位门,隐藏状态的矩阵参数,Uz,Ur,Uh分别是计算更新门,复位门,隐藏状态的另一种矩阵参数,bz,br,bh分别为计算更新门,复位门,隐藏状态的偏置参数;式(13)为隐藏状态ht的更新函数,具体计算是先前的隐藏状态与新的候选隐藏状态的线性插值;σg、σh分别是sigmoid激活函数和tanh激活函数。
步骤5:以用户有过正向交互的物品为中心,选取知识图谱的k跳邻居实体节点作为候选空间集合,即动作空间。
所述选取的方式为,采样种子集合的k跳领域内的所有物品作为候选集合,其中种子集合的定义为:
其中,下角标中的t代表第t步,上标的0代表的是初始集合,即种子集。由此得到k跳邻域集定义如下:
其中,上标的数字k指的是第k跳邻域内的物品;为知识图谱,(head,relation,tail)指的是知识图谱中的三元组,head指的是三元组中的头实体节点,tail指的是三元组的尾实体节点,relation指的是连接头实体节点与尾实体节点的关系。
步骤6:将步骤4得到的状态和步骤5得到的动作空间输入至策略网络,并得到动作向量。
所述策略网略是由多层感知机构成的,其输出待推荐的动作高维向量表示。
步骤7:将步骤6输出的动作向量输入到奖励模拟器得到奖励,若奖励大于预设阈值,则将此动作向量加入至此用户的有过交互的物品中,并重新利用步骤4的计算过程得到下一步状态;若奖励小于等于预设阈值,则下一步状态保持和上一步状态不变。
所述奖励模拟器接收当前状态St和动作At,返回奖励rt和下一个状态St+1;其中奖励功能指导模型捕获用户的偏好,并评估推荐物品的质量,使用离线日志数据构建奖励模拟器去模拟用户反馈,引入了好奇心机制,当智能体探索未知物品给予其正向奖励;同时设置平衡参数对好奇心奖励与其他奖励的占比进行平衡。
其中奖励设置计算按照如下公式所示:
其中,Rt为时间步t下对推荐动作At的奖励;ratingt指的是离线数据中评分,rdistance指的是距离奖励;代表时间步t下的好奇心网络输出的好奇心奖励;γ是奖励折扣因子;V(st)是状态st的价值;τ是指好奇心奖励与距离奖励的平衡因子,Distance指的是推荐物品距离正向交互物品的距离函数,使用Dijkstra算法计算距离;∈无限趋近于0,Wnt是指从in到it的最短路径的权重和。
步骤8:将步骤4得到的状态,步骤6得到的动作向量,步骤7得到的奖励,步骤4得到的下一步状态存储在经验池中,基于强化学习中的PPO2算法构建推荐智能体模型,智能体以试错的方式得到训练数据并获得最优的行为策略,以交互式的形式利用用户当下即时反馈调整推荐策略。
所述推荐智能体模型中,当前动作为At,当前状态的价值为V(St),智能体采取动作At后环境返回奖励r,好奇心神经网络返回奖励存储在经验池中作为可复用经验,当一个回合结束时,利用经验池中的数据更新策略π,使用随机采样的方式从中抽样数据,重复更新3次后清空经验池,开始下一回合的数据更新,直到策略收敛为止;
所述带有好奇心奖励的PPO2算法的损失函数值的具体计算方式如下:
Advθ′(St,At)=Rt+(γλ)Rt+1+...+(γλ)T-t+1RT-1(18)
其中,Rt为时间步t下的时序差分误差;Advθ′(At|St)是在策略参数为θ′下,状态st的动作优势估计函数;∈是截断阈值;L(θ)代表PPO2算法的策略梯度损失函数;函数clip()将函数中的参数值限制范围,为[1-∈,1+∈];pθ(At|St)是在策略θ,状态St下动作At的概率分布;γ是奖励折扣因子,τ是好奇心奖励与距离奖励的平衡因子,∈无限趋近于0,T指的是轨迹的长度。
与现有技术相比,本发明具有如下有益效果:
(1)本发明通过引入知识图谱克服现有模型中物品相关信息少的问题,并利用知识图谱解决交互式推荐中动作状态空间巨大造成的计算量大的问题,缩小了动作空间候选集并提高训练稳定性。
(2)本发明在图嵌入部分充分考虑了知识图谱中节点之间的结构信息与语义信息,利用注意力机制为每个节点分配不同的权重,关注那些作用比较大的节点,忽略一些作用比较小的节点,在处理局部信息的时候同时关注整体的信息。图嵌入部分得到的表示能有助于刻画用户动态偏好向量,从而提高模拟精度。
(3)本发明采用了双网络结构训练,加入了防止过拟合的优化设计,并设置了引入好奇心机制的奖励模拟器,从评分,知识图谱中节点距离,好奇心机制三个维度给出奖励的准则,并加入了减少策略方差的机制,模型训练稳定且效率显著提升。
附图说明
图1为本发明基于知识图谱和强化学习的交互式推荐方法的流程图;
图2为本发明的整体模型图;
图3使用Neo4j工具展示的部分知识图谱;
图4为本发明中应用TransH方法将实体映射至超平面的计算原理图;
图5为本发明中选取候选动作集合示意图;
图6为本发明中图嵌入部分的图注意力网络模型结构示意图;
图7为本发明中用户与推荐***动态交互的建模场景图。
具体实施方式
为了便于理解本发明,下面将参照相关附图对本发明进行更详细的阐述。附图中给出了本发明的实施方式。但是,本发明也可以以不同的多样的形式来实现,并不限于本文所描述的实施方式。相反地,提供这些实施方式的目的是使对本发明的公开内容理解的更加透彻全面。
一种基于知识图谱和强化学习的交互式推荐方法,图1是本发明的基于知识图谱和强化学习的交互式推荐方法的流程图。图2是本发明实施方式的整体模型图。下面结合图1和图2对该方法做详细描述,该方法包括如下步骤:
步骤1:将推荐数据集中的物品与知识库Freebase中的实体进行对应,构建得到特定领域知识图谱,根据构建的知识图谱,对知识图谱进行预嵌入得到知识图谱中实体和关系的低维表示。
在该步骤的实施方式中所需读取的数据分为两大类,分别是推荐***数据集和知识库数据。推荐数据集包括MovieLens,LFM-1b和Amazon book三种;知识库数据有Freebase。将来自推荐***的数据集分别与来自知识库的数据集相连接形成三元组集合。这种三元组类型包括(实体,关系,实体)或(实体,属性,值)。将数据集连接起来的方式是:根据推荐数据集的物品id与知识图谱数据中的实体id相连接,类似于数据库的内连接。所得知识图谱可以为推荐***提供丰富且结构化的知识库信息。如图3是使用Neo4j展示的部分知识图谱。
得到构建后的知识图谱,利用现有的知识图谱嵌入方法TransH学***面计算原理图。具体的实体映射到超平面后的映射公式为:
其中,h代表知识图谱中头实体节点表示,h⊥代表映射后的头实体节点表示,tail代表尾实体节点表示,tail⊥代表映射后的尾实体节点表示,每个关系r都有一个是与超平面表示相关的矩阵参数Wr。
步骤2:计算步骤1所得知识图谱的实体节点与其一阶邻居实体节点之间的注意力系数,利用计算得到的注意力系数与步骤1得到的实体低维表示,即上一轮的实体低维表示,以加权求和的计算方式得到传播了一阶邻居实体节点的中心实体低维表示。
具体而言,计算实体对的注意力系数的具体想法为:为每个节点分配不同权重,关注作用比较大的节点,而忽视一些作用较小的节点,在处理局部信息的时候同时能够关注整体的信息。其思想是计算图中每个实体节点的向量表示,通过关注它的邻居实体节点,遵循自我关注策略。基于空间相似假设,一个样本与一定范围内的样本关系比较密切,样本比较多,计算量也比较大,所以对于一个样本来说只利用邻域内的样本计算注意力系数和新的表示,即仅将注意力分配到节点的一阶邻居实体节点集上。不需要复杂的矩阵运算或对图结构的事先了解,通过叠加自注意力层,在卷积过程中将不同的重要性分配给邻域内不同实体节点,同时处理不同大小的邻域。计算注意力系数公式为:
gnj=LeakyReLU(Win||Wij) (3)
其中,in和ij指节点n和节点j的向量表示,gnj指的节点j对于节点n的注意力系数,单层前向神经网络可应用LeakyReLU作为非线性激活函数,W指的是权值矩阵,||指的是两个向量的拼接。为了使不同节点之间的系数易于比较,使用softmax函数对节点n的所有一阶邻居实体节点的注意力系数进行规范化,公式如下:
其中,αnj指的节点j对于节点n的进行了规范化后的注意力系数,N指的是对于节点n的所有一阶邻居实体节点集合。图5表示的就是选取的计算实体节点的一阶邻居实体节点邻域。
图6是图注意力网络模型结构示意图。以加权求和的方式获得一阶邻居实体节点的新的表示i′n,公式如下:
其中,σ是一个非线性函数,作为一种单层前向神经网络,可使用LeakyReLU函数。
步骤3:对步骤1得到的实体低维表示与步骤2得到的传播了一阶邻居实体节点的中心实体低维表示进行集成,集成操作所得到的实体节点表示将作为下一轮实体低维表示,重复步骤2以及本步骤操作,直至实体节点嵌入表示收敛;
采用Bi-Interaction集合器聚集实体节点表示和基于一阶实体节点邻域的实体节点表示,计算方式如下:
en=fBi-Interaction(in,i′n)=LeakyReLU(W(in+i′n))+LeakyReLU(W(in⊙i′n))(6)
其中,fBi-Interaction为使用Bi-Interaction集成器的集成函数,集成器还可以考虑使用GCN集成器或GraphSage集成器;⊙为Hadamard积;W为权值矩阵;LeakyReLU为激活函数;in为节点n的向量表示,i′n为公式(5)的输出结果,即传播了一阶邻居实体节点的中心实体低维表示i′n。使用激活函数LeakyReLU的好处就是:在反向传播过程中,对于LeakyReLU激活函数输入小于零的部分,也可以计算得到梯度(而不是像ReLU一样值为0),这样就避免了梯度方向锯齿问题。
上述描述具体指的是每一层中为传播信息的集成操作过程,传播的是中心实体节点的一阶邻居实体节点的信息。但为进行中心实体节点的高阶传播,需定义上一层与下一层的聚集函数,具体计算方式如下:
其中l为第l轮集成,l-1为第l-1轮,即第l轮的上一轮;指l-1轮节点n的表示,指l-1轮以节点n为中心的聚集一阶邻居节点的信息和,采用了Bi-Interaction集成器得到 是集成了第l-1轮时实体节点信息与聚集了一阶邻居实体节点信息的第l轮节点n的表示。
步骤4:从步骤3得到的实体节点表示中提取出用户有过正向交互过的物品表示,输入至GRU模型得到用户即时偏好向量,即状态;
为理解本发明步骤4之后的训练过程,有必要在具体介绍步骤4之前介绍推荐***和用户的整个交互过程,一般整个交互场景如图7所示。假设用户与推荐策略之间的一个典型的交互式推荐设置,给定一组用户U={u1,u2,u3,.....},一组物品I={i1,i2,i3,.....}以及步骤1构建的知识图谱在用户和推荐策略第t次交互时,在用户特定偏好(可用StateSt表示)下推荐智能体向用户(ui∈U)推荐动作(ActionAt),此动作是基于策略π选择的,随之获得用户的反馈(Rewardfi∈F),比如点击,收藏,忽略,评分等行为,推荐策略则利用得到的反馈改进策略π,用户偏好状态也根据状态转移函数由St变为St+1。构建交互式推荐智能体,定义MDP元组。具体方法为:
给定过去交互的观察{u,i1,f1,...,it-1,ft-1},推荐***被建模为一个条件分布,用来表示在t次交互时,推荐物品it的概率。在用户和推荐***之间的一系列交互就会产生一条轨迹ξ={S0,i0,r0,...,St,it,rt,...,ST}。推荐***和用户之间的交互本质就是一个持续一段时间的多步交互过程,其目的就是获得向用户推荐物品以得到长期累计奖励最大的推荐策略π*。形式化定义如下:
其中,是策略π下的期望折扣奖励;状态St由用户在时间t之前感兴趣的,即有过正向交互的物品决定,用来模拟用户动态偏好;动作At为推荐一个物品或物品列表;奖励r(St,At)为奖励模拟器根据用户对推荐物品的即时反馈给出的奖励,被认为是对推荐策略π的改进;折扣因子γ∈[0,1],是用于平衡未来和眼前的回报,γ为0时候,将完全专注于眼前的回报,一般取0.9,在t为1时,即时奖励是0.9倍的r(St,At),t为2时,即时奖励是0.81倍的r(St,At),以此类推;T指的是一条轨迹的长度;Σ指的是求和操作;π指推荐策略,π*指的是最优推荐策略;Π指的是所有策略的集合。
此步骤是建模状态的关键步骤,跟踪当前用户偏好,将用户的长期偏好和临时偏好编码为稠密向量。状态是用来刻画用户偏好的,是从用户有过正向交互的物品抽象而来的。确定每个步骤的用户即时偏好向量具体方法为:先将点击项目序列{it}通过步骤2与步骤3转换成嵌入向量et∈Rd,其中d是向量的维度,en是知识图注意力模块中得到的实体n的嵌入表示(此处可以指物品嵌入表示),fn一个反馈类型对应的one-hot向量。物品集成反馈之后的表示计算为:
In=concat(en,tanh(WFfn+bF)) (9)
其中,使用tanh作为激活函数,WF是参数矩阵,bF是偏置向量参数。
在得到用户交互过的物品表示之后,使用GRU模型来跟踪状态。在现实模型中,用户当前的兴趣通常与之前有过正向交互的物品有关。聚合用户交互历史并提取用户状态。其中一个GRU单元的更新函数被定义为:
其中,It是输入向量,即公式(9)的输出;zt是更新门,rt是复位门;是element-wise积;Wz,Wr,Wh分别是计算更新门,复位门,隐藏状态的矩阵参数,Uz,Ur,Uh分别是计算更新门,复位门,隐藏状态的矩阵参数,bz,br,bh分别为计算更新门,复位门,隐藏状态的偏置参数;式(13)为隐藏状态ht的更新函数,具体计算是先前的隐藏状态与新的候选隐藏状态的线性插值,σg、σh分别是sigmoid激活函数和tanh激活函数。
步骤5:以用户有过正向交互的物品为中心,并依据向量距离模型选取知识图谱的k跳邻居节点作为候选空间集合,即动作空间;
巨大的动作空间会在策略训练过程造成困扰,采样效率低下,训练速度受限。所以有必要对候选集进行筛选,获得相关物品集合,提高策略学习的样本效率。如图5所示是候选集筛选的示意图,采取的方式是采样种子集合的k跳领域内的所有物品作为候选集合,之后将在强化模型中用于动作选择。种子集合的定义为:
其中,t代表第t步,上标的数字k指的是第k跳邻域内的物品。由此可推k跳邻域集定义如下:
步骤6:将步骤4得到的状态和步骤5得到的动作空间输入至策略网络,并得到动作向量;
如图6所示,此步骤是将步骤4所得到的状态和步骤5所得的可选择动作集合输入到策略网络,策略网络是由多层感知机构成的,输出是待推荐的动作高维向量表示。策略网络可参考图2。
步骤7:将步骤6输出的动作向量输入到奖励模拟器得到奖励,若奖励大于预设阈值,则将此动作向量加入至此用户的有过交互的物品中,并重新回到步骤4计算下一步状态;
本专利的一大创新点就是构建了新型的奖励模拟器。奖励模拟器接收当前状态St和动作At,返回奖励rt和下一个状态St+1。奖励功能指导模型捕获用户的偏好,并评估推荐物品的质量。在线交互得到用户的反馈肯定是最理想的设置。但是在线交互训练时的试错性质会降低用户体验,而且真实的交互环境对强化学***衡参数来平衡好奇心奖励与其他奖励的占比。具体来说:当策略模块给出的推荐物品在正向交互物品集合内,智能体会收到奖励信号。为了驱动智能体能够较大概率给出正向交互的物品,给予其推荐动作的奖励大小与其距离正向交互物品的距离负相关。同时为了给智能体更明确的训练目标,设置距离阈值,在阈值内智能体收到正向奖励,反之智能体收到负向奖励。从评分结果,知识图谱中节点距离,好奇心机制这三个维度给出奖励的准则。奖励设置计算按照如下公式所示:
其中,Rt为时间步t下对推荐动作At的奖励;包含了离线数据中评分ratingt和距离奖励rdistance;代表时间步t下的好奇心网络输出的好奇心奖励;γ是奖励折扣因子;V(St)是状态St的价值;τ是指好奇心奖励与距离奖励的平衡因子,本实施例中取为0.8;distance为推荐物品距离正向交互物品的距离,使用Dijkstra算法计算距离;∈是避免分母为0;Wnt是指从in到it的最短路径的权重和。
步骤8:将步骤4得到的状态,步骤6得到的动作向量,步骤7得到的奖励,步骤4得到的下一步状态存储在经验池中,基于强化学习中的PPO2算法构建推荐智能体模型,智能体以试错的方式得到训练数据并获得最优的行为策略。至此,交互式推荐的建模过程结束,随后便可以以交互式的形式利用用户当下即时反馈灵活的调整推荐策略。
通过图嵌入与状态表示之后得到的特征向量分别输入到策略网络和状态价值网络中得到当前动作At和当前状态的价值V(St),智能体采取动作At后环境返回奖励r,好奇心神经网络返回奖励存储在一个经验池中作为可复用经验,当一个回合结束时,利用经验池中的数据更新策略π。使用随机采样的方式从中抽样数据,重复更新3次后清空经验池,开始下一回合的数据更新,直到策略收敛为止。
带有好奇心奖励的PPO2算法的损失函数值的具体计算方式如下:
Advθ′(St,At)=Rt+(γλ)Rt+1+...+(γλ)T-t+1RT-1 (18)
其中,Rt为时间步t下的时序差分误差;Advθ′(At|St)是在策略参数为θ′下,状态st的动作优势估计;∈是截断阈值;L(θ)代表PPO2算法的策略梯度损失函数;函数clip()将函数中的参数值限制范围,为[1-∈,1+∈];pθ(At|St)是在策略θ,状态St下动作At的概率分布;γ是奖励折扣因子;τ是好奇心奖励与距离奖励的平衡因子;∈无限趋近于0;T指的是轨迹的长度。
应当理解的是,本领域技术人员在本发明技术构思的启发下,在不脱离本发明内容的基础上,可以根据上述说明做出各种改进或变换,这仍落在本发明的保护范围之内。
Claims (8)
1.一种基于知识图谱和强化学习的交互式推荐方法,其特征在于,包括:
步骤1:将推荐数据集中的物品与知识库Freebase中的实体进行对应,构建得到特定领域知识图谱,根据构建的知识图谱,对知识图谱进行预嵌入得到知识图谱中实体和关系的低维表示,即实体映射到超平面的映射;
步骤2:计算知识图谱中的实体节点与其一阶邻居实体节点之间的注意力系数,利用计算得到的注意力系数与步骤1得到的实体低维表示,以加权求和的计算方式得到传播了一阶邻居实体节点的中心实体低维表示;
步骤3:对步骤1得到的实体低维表示与步骤2得到的传播了一阶邻居实体节点的中心实体低维表示进行集成,集成操作所得到的实体节点表示将作为下一轮实体低维表示,重复步骤2以及本步骤操作,直至实体节点嵌入表示收敛;
步骤4:从步骤3得到的实体节点表示中取出用户有过正向交互过的物品表示,输入至GRU模型得到用户即时偏好向量,即状态;
步骤5:以用户有过正向交互的物品为中心,选取知识图谱的k跳邻居实体节点作为候选空间集合,即动作空间;
步骤6:将步骤4得到的状态和步骤5得到的动作空间输入至策略网络,并得到动作向量;其中所述策略网略是由多层感知机构成的,其输出待推荐的动作高维向量表示;
步骤7:将步骤6输出的动作向量输入到奖励模拟器得到奖励,若奖励大于预设阈值,则将此动作向量加入至此用户的有过交互的物品中,并重新利用步骤4的计算过程得到下一步状态;若奖励小于等于预设阈值,则下一步状态保持和上一步状态不变;
步骤8:将步骤4得到的状态,步骤6得到的动作向量,步骤7得到的奖励,步骤4得到的下一步状态存储在经验池中,基于强化学习中的PPO2算法构建推荐智能体模型,智能体以试错的方式得到训练数据并获得最优的行为策略,以交互式的形式利用用户当下即时反馈调整推荐策略。
3.根据权利要求1所述的一种基于知识图谱和强化学习的交互式推荐方法,其特征在于,步骤2中所述计算注意力系数公式为:
gnj=LeakyReLU(Win||Wij) (3)
其中,in和ij为节点n和节点j的向量表示;gnj为节点j对于节点n的注意力系数;LeakyReLU为非线性激活函数;W为权值矩阵;||为两个向量的拼接;使用softmax函数对节点n的所有一阶邻居实体节点的注意力系数进行规范化,公式如下:
其中,αnj为节点j对于中心节点n的进行了规范化后的注意力系数;N为对于节点n的所有一阶邻居实体节点集合;ik为节点k的向量表示;
所述以加权求和的方式得到传播了一阶邻居实体节点的中心实体低维表示i′n的计算公式如下:
其中,σ是一个非线性函数,为一种单层前向神经网络。
4.根据权利要求1所述的一种基于知识图谱和强化学习的交互式推荐方法,其特征在于,步骤3中所述集成的公式如下:
en=fBi-Interaction(in,i′n)=LeakyReLU(W(in+i′n))+LeakyReLU(W(in⊙i′n)) (6)
其中,fBi-Interactton为使用Bi-Interaction集成器的集成函数,集成器还可以考虑使用GCN集成器或GraphSage集成器;⊙为Hadamard积;W为权值矩阵;LeakyReLU为激活函数;in为节点n的向量表示,i′n为公式(5)的输出结果,即传播了一阶邻居实体节点的中心实体低维表示i′n;
上一层与下一层的聚集函数,具体计算方式如下:
5.根据权利要求1所述的一种基于知识图谱和强化学习的交互式推荐方法,其特征在于,所述步骤4具体包括以下步骤:
步骤4.1:针对交互式推荐的建模过程进行定义;
给定一组用户U={u1,u2,u3,......},一组物品I={i1,i2,i3,......}以及步骤1构建的知识图谱先初始化随机策略π,当用户,即环境,和推荐策略,即智能体第t次交互时,在用户特定偏好St下智能体向用户ui∈U推荐动作At,此动作是基于随机策略π选择的,随之获得用户的反馈fi∈F,包括点击,收藏,忽略,评分,得到的反馈用来改进随机策略π,用户偏好状态也根据状态转移函数由St变为St+1;
步骤4.2:构建交互式推荐智能体,定义MDP元组;
给定过去交互的观察{u,i1,f1,...,it-1,ft-1},推荐策略被建模为一个条件分布,用来表示在t次交互时,推荐物品it的概率;在用户和推荐策略之间的一系列交互就会产生一条轨迹ξ={S0,i0,r0,...,St,it,rt,...,ST},获得向用户推荐物品以得到长期累计奖励最大的推荐策略π*,定义如下:
其中,是策略π下的期望折扣奖励;状态St由用户在时间t之前感兴趣的,即有过正向交互的物品决定,动作At为推荐一个物品或物品列表;奖励r(St,At)为奖励模拟器根据用户对推荐物品的即时反馈给出的奖励;折扣因子γ∈[0,1],γ为0时候,将完全专注于眼前的回报,在t为1时,即时奖励是0.9倍的r(St,At),t为2时,即时奖励是0.81倍的r(St,At);T指的是一条轨迹的长度;∑指的是求和操作;π指推荐策略,π*指的是最优推荐策略;∏指的是所有策略的集合;
步骤4.3:确定每个步骤的用户即时偏好向量,计算物品集成反馈之后的表示;
先将点击项目序列{it}通过步骤2与步骤3转换成嵌入向量et∈Rd,其中d是向量的维度;物品集成反馈之后的表示计算为:
In=concat(en,tanh(WFfn+bF)) (9)
其中,en是知识图注意力模块中得到的实体节点n的嵌入表示;fn一个反馈类型对应的one-hot向量;使用tanh作为激活函数;WF是参数矩阵;bF是偏置向量参数;concat为连接函数;In则是物品集成反馈之后的表示,即此步骤的输出;
步骤4.4:使用GRU模型来跟踪状态;
上一步骤的输出是用户每个交互过的物品集成反馈之后得到的新的物品表示,将其输入至GRU模型中计算用户的状态;其中GRU模型是一个序列模型,由若干个GRU单元构成,其中一个GRU单元的函数被定义为:
zt=σg(WzIt+Uzht-1+bz) (10)
rt=σg(WrIt+Urht-1+br) (11)
8.根据权利要求1所述的一种基于知识图谱和强化学习的交互式推荐方法,其特征在于,步骤8中所述推荐智能体模型中,当前动作为At,当前状态的价值为y(St),智能体采取动作At后环境返回奖励r,好奇心神经网络返回奖励存储在经验池中作为可复用经验,当一个回合结束时,利用经验池中的数据更新策略π,使用随机采样的方式从中抽样数据,重复更新3次后清空经验池,开始下一回合的数据更新,直到策略收敛为止;
所述带有好奇心奖励的PPO2算法的损失函数值的具体计算方式如下:
Advθ′(St,At)=Rt+(γλ)Rt+1+…+(γλ)T-t+1RT-1 (18)
其中,Rt为时间步t下的时序差分误差;Advθ′(At|St)是在策略参数为θ′下,状态st的动作优势估计函数;∈是截断阈值;L(θ)代表PPO2算法的策略梯度损失函数;函数clip()将函数中的参数值限制范围,为[1-∈,1+∈];pθ(At|St)是在策略θ,状态St下动作At的概率分布;γ是奖励折扣因子,τ是好奇心奖励与距离奖励的平衡因子,∈无限趋近于0,T指的是轨迹的长度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210017981.5A CN115186097A (zh) | 2022-01-07 | 2022-01-07 | 一种基于知识图谱和强化学习的交互式推荐方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210017981.5A CN115186097A (zh) | 2022-01-07 | 2022-01-07 | 一种基于知识图谱和强化学习的交互式推荐方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115186097A true CN115186097A (zh) | 2022-10-14 |
Family
ID=83511629
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210017981.5A Pending CN115186097A (zh) | 2022-01-07 | 2022-01-07 | 一种基于知识图谱和强化学习的交互式推荐方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115186097A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112699302A (zh) * | 2021-01-05 | 2021-04-23 | 汕头大学 | 一种基于测地距离的实时推荐方法 |
CN115600012A (zh) * | 2022-12-01 | 2023-01-13 | 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院)(Cn) | 一种基于知识增强和结构对比的api推荐方法 |
CN116628247A (zh) * | 2023-07-24 | 2023-08-22 | 北京数慧时空信息技术有限公司 | 基于强化学习和知识图谱的影像推荐方法 |
CN116720007A (zh) * | 2023-08-11 | 2023-09-08 | 河北工业大学 | 基于多维学习者状态和联合奖励的在线学习资源推荐方法 |
CN117217100A (zh) * | 2023-11-08 | 2023-12-12 | 中国人民解放军63963部队 | 一种基于强化学习的某分队数智化建模方法及仿真*** |
CN117786416A (zh) * | 2024-02-28 | 2024-03-29 | 腾讯科技(深圳)有限公司 | 一种模型训练方法、装置、设备、存储介质及产品 |
-
2022
- 2022-01-07 CN CN202210017981.5A patent/CN115186097A/zh active Pending
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112699302A (zh) * | 2021-01-05 | 2021-04-23 | 汕头大学 | 一种基于测地距离的实时推荐方法 |
CN112699302B (zh) * | 2021-01-05 | 2023-07-04 | 汕头大学 | 一种基于测地距离的实时推荐方法 |
CN115600012A (zh) * | 2022-12-01 | 2023-01-13 | 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院)(Cn) | 一种基于知识增强和结构对比的api推荐方法 |
CN116628247A (zh) * | 2023-07-24 | 2023-08-22 | 北京数慧时空信息技术有限公司 | 基于强化学习和知识图谱的影像推荐方法 |
CN116628247B (zh) * | 2023-07-24 | 2023-10-20 | 北京数慧时空信息技术有限公司 | 基于强化学习和知识图谱的影像推荐方法 |
CN116720007A (zh) * | 2023-08-11 | 2023-09-08 | 河北工业大学 | 基于多维学习者状态和联合奖励的在线学习资源推荐方法 |
CN116720007B (zh) * | 2023-08-11 | 2023-11-28 | 河北工业大学 | 基于多维学习者状态和联合奖励的在线学习资源推荐方法 |
CN117217100A (zh) * | 2023-11-08 | 2023-12-12 | 中国人民解放军63963部队 | 一种基于强化学习的某分队数智化建模方法及仿真*** |
CN117217100B (zh) * | 2023-11-08 | 2024-01-30 | 中国人民解放军63963部队 | 一种基于强化学习的某分队数智化建模方法及仿真*** |
CN117786416A (zh) * | 2024-02-28 | 2024-03-29 | 腾讯科技(深圳)有限公司 | 一种模型训练方法、装置、设备、存储介质及产品 |
CN117786416B (zh) * | 2024-02-28 | 2024-05-28 | 腾讯科技(深圳)有限公司 | 一种模型训练方法、装置、设备、存储介质及产品 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111523047B (zh) | 基于图神经网络的多关系协同过滤算法 | |
Athey et al. | Machine learning methods that economists should know about | |
CN115186097A (zh) | 一种基于知识图谱和强化学习的交互式推荐方法 | |
Chen et al. | Deep reinforcement learning in recommender systems: A survey and new perspectives | |
CN110955826B (zh) | 基于改进型循环神经网络单元的推荐*** | |
CN108563755A (zh) | 一种基于双向循环神经网络的个性化推荐***及方法 | |
Li et al. | A CTR prediction model based on user interest via attention mechanism | |
CN111723285A (zh) | 一种基于评分的深度谱卷积协同过滤推荐方法 | |
CN108921657A (zh) | 一种基于知识增强记忆网络的序列推荐方法 | |
CN111241394A (zh) | 数据处理方法、装置、计算机可读存储介质及电子设备 | |
Klissarov et al. | Reward propagation using graph convolutional networks | |
CN112699310A (zh) | 基于深度神经网络的冷启动跨域混合推荐的方法及*** | |
Ahamed et al. | A recommender system based on deep neural network and matrix factorization for collaborative filtering | |
CN113449182A (zh) | 一种知识信息个性化推荐方法及*** | |
Baker et al. | Machine learning: factorization machines and normalized discounted cumulative gain for tourism recommender system optimisation | |
Gao | Game-theoretic approaches for generative modeling | |
CN116975686A (zh) | 训练学生模型的方法、行为预测方法和装置 | |
CN116484868A (zh) | 一种基于生成扩散模型的跨域命名实体识别方法及装置 | |
Zhang et al. | Hybrid structural graph attention network for POI recommendation | |
CN115840853A (zh) | 一种基于知识图谱和图注意力网络的课程推荐*** | |
CN115293812A (zh) | 一种基于长短期兴趣的电商平台会话感知推荐预测方法 | |
CN113888238A (zh) | 一种广告点击率预测方法、装置及计算机设备 | |
CN111612572A (zh) | 一种基于推荐***的自适应局部低秩矩阵近似建模方法 | |
Poulakis | Unsupervised AutoML: a study on automated machine learning in the context of clustering | |
CN116720007B (zh) | 基于多维学习者状态和联合奖励的在线学习资源推荐方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |