5.2.2 基于强化学习的社交网络话题内容匹配算法形式化定义
在MDP框架下针对社交网络话题内容匹配任务,定义搜索过程为一个五元组<S,A,O,T,R>。
状态(State)S代表不同时间步骤下的搜索状态。将每个时间步骤下的中间结果序列视为一个对应的状态,因此,状态S随着时间步骤的前移在不断变化,搜索结果也随之变化。进一步地定义S为一个二元组,即S=<D t,P t>。在时间步骤t,D t是前t个时间步骤中所选取搜索结果内容构成的中间结果,如式(5-1)所示:
其中,m(n)为在时间步骤t下的搜索结果序列中第n个位置上的社交网络内容特征。P t是为与D t相对应的用户感知效用的编码表示,与D t类似,P t定义如式(5-2)所示:
其中,p(n)为时间步骤t下的用户感知效用指标值,取值为-1~1的实数标量值。m(n)和p(n)通过时间步骤相互对应,在初始化阶段,即t=0时D t=∅,P t=∅。
动作(Action)A代表为相应的社交网络内容选择的动作。对于每个社交网络内容只有两个动作选择:选择当前内容并将其作为搜索结果排在相应的位置上或跳过当前内容。动作A集合中的元素是动态社交网络内容相关性评价的中间结果,通过动作集合所构造的搜索结果序列,作为搜索结果的阶段性输出。动作A集合与状态S的相关信息进行相互作用,在算法上形成强化的效果。在时间步骤t,定义A为Act={c,k},其中c代表选择当前内容作为对应位置的结果,k代表跳过。时间步骤t下算法所做出的对应动作a t=Act_DQN(S t)用于决定选择或跳过m t+1作为相应位置的搜索结果。当前时间步骤对应的社交网络内容定义为Cm(at=c)。结合状态S的定义,可以将P t扩展定义为P t=DQN(C m(at=c)),即通过动态社交网络内容相关性评价对当前所选择的社交网络内容计算用户感知效用,以决定是否将其作为结果列表中的一部分。
观测(Observation)O代表对当前搜索状态的观察。它用于记录全局状态,包括状态的变化和对当前社交网络内容的动作选择。观察O是对状态的S扩展描述,定义O如式(5-3)所示:
过渡(Transition)T定义为时间步骤t的状态S t到下一个时间步骤t+1状态S t+1的转换。转换过程由做出动作来触发,定义如式(5-4)所示:
其中,函数Act_DQN(S t;θ)在已优化参数θ下,结合时间步骤t的搜索状态S t,对当前社交网络内容作出动作选择。符号⊕表示一个元素序列与一个单一元素的连接构成一个新的元素序列。
反馈评价(Reward)R定义为在训练阶段一次循环中的所得搜索结果的评价。基于强化学习的社交网络话题内容匹配算法(MDPMS)将状态S中定义的用户感知效用通过NDCG进行定义,并作为反馈评价R的具体表示。为了体现NDCG的作用,将定义时间步骤t下的用户感知效用P t∈[-1,1]通过一个分割判别函数映射为匹配等级,并通过整数数值来表示。该过程定义如式(5-5)所示:
其中,rel t是相对于P t正整数相关等级评价,通过函数switch_map()将P t截断映射为相应正整数相关等级。反馈评价R定义为reward,如式(5-6)所示。
反馈评价reward由NDCG的定义改进而来。结合式(5-5)可以进一步推导式(5-6),如式(5-7)所示。
强化学习算法的训练过程使用以新浪微博为具体社交网络实例内容,并使用已点击标记(Click-Through)数据在监督学习策略下进行模型参数优化。基于强化学习的社交网络话题内容匹配算法(MDPMS)主要依靠奖励连续变化来实现强化。