美文网首页
一种用于信息检索的对抗性模仿点击模型

一种用于信息检索的对抗性模仿点击模型

作者: 路过的飞碟 | 来源:发表于2021-07-24 09:09 被阅读0次

    问题描述:

    点击模型:研究用户和物品排名列表互动,为学习排序模型提供了关于用户反馈的更好理解。

    点击模型的关键:构造关系

    1.概率图形模型(PGM)依赖于手动分配的关系,且过于简化了用户行为(二进制化,以是和否来结论)。

    2.现用的神经网路,没法解决暴露偏差(训练和测试之间的模型输入差异,用户是动态变化的互动,而训练的模型是静态的)和较差的估计。
    (测试数据偏离训练数据,数据稀疏时,训练数据)

    (利用神经网路,黑盒化,会难以处理部分隐藏关系)

    方法:设计对抗性模仿点击模型(AICM)

    1.学习回报函数,该函数恢复用户的内在效用和潜在意图

    2.将用户交互建模为一个动态系统,而不是一步点击预测,从而缓解了暴露偏差问题
    (将用户与排名列表的交互建模为顺序决策过程,而不是一步预测)

    3.通过对抗性训练最小化了JS散度,并学习了一个稳定的点击序列分布

    4.显式地构建了一个奖励函数,它恢复了用户的内在效用和潜在意图

    模仿学习(暴露偏差问题的缓和):

    根据样本专家的演示轨迹,重建(再现)顺序决策策略

    1.用户行为视为专家演示,并假设用户的本质效用最大化。

    2.基于该假设,从用户的点击日志中显式地构建了一个奖励函数。

    3.用这个奖励函数来指导学习一个复制用户行为的点击策略
    (奖励函数为排名函数的优化和评估提供指导)

    4.将点击模型定义为一个动态系统

    5.按照先前的预测建立用户的当前状态,并针对长期目标优化点击模型

    (缓和暴露偏差问题)

    AICM模型描述

    (1)模仿学习

    ·····························································································
    模仿学习:目标是学习一种行为策略𝜋𝜃(𝑎|𝑠)在给定一组专家演示的情况下再现专家行为。
    其中每个这样的演示轨迹都是一系列状态和动作:
    τ𝜋E=[s0,a1,s1,a1...]

    模仿学习步骤:
    行为克隆,反向强化学习,生成对抗性模仿学习

    (1)1.行为克隆(BC)
    ·····························································································
    学习直接将状态映射到动作,而不恢复奖励函数。
    可以最大化专家演示:

    对于专家策略访问的每个状态将KL散度最小化𝐷𝐾𝐿(𝜋𝐸, 𝜋𝜃)

    只适合单步决策,而不是专注于长期规划。

    (1)2.反向强化学习(IRL)
    ·····························································································
    假设专家演示是最优的情况下,从这些演示中恢复奖励函数。

    随后根据学习到的奖励函数来训练策略。

    但是一个策略对于多个奖励函数都可能是最优的,为了获得唯一解,本文选用最大因果熵,代价函数c∈C(其中代价是负反馈)
    选取低成本给专家策略 𝜋𝐸,高成本给其他策略。

    𝐻(𝜋𝜃)=E𝜋𝜃[-log𝜋𝜃(𝑎|𝑠)]是所学策略𝜋的因果熵。(我们使用期望值)
    𝜋表示的策略
    专家演示轨迹
    E𝜋 [𝑐(𝑠, 𝑎)] =

    𝛾是折扣系数

    IRL 方法通常是一个代价极高的迭代学习过程,它必须在奖励函数的每个更新步骤中解决一个 RL 类型的问题。

    (1)3.生成对抗性模仿学习(GAIL)
    ·····························································································
    用一个鉴别器𝐷𝑤(𝑠,𝑎):S × A → (0, 1)提供的奖励训练了一个策略
    来区分𝜋𝜃和 𝜋𝐸.的 状 态-动 作 对
    GAIL的目标函数是:

    有大佬证明 IRL 是最大熵原理下占位度匹配的对偶。

    GAIL 本质上通过最小化学习行为策略和专家策略下的占用度量之间的 JS 散度来解决占用度量匹配问题

    因果熵𝐻 (𝜋)作为策略正则化:

    归一化的占用度𝜌𝜋𝜃和𝜌𝜋𝐸分别表示在学习行为策略和专家策略下状态-动作对的分布。
    其中:
    𝜌𝜋 (𝑠, 𝑎) =

    表示一个正则化的状态,确保概率和等于 1

    可以看出, JS 散度同时考虑了学习行为策略和目标策略之间正向和反向 KL 散度,使得学习行为策略精确稳定。

    (2)AICM

    ·····························································································
    用户与排序列表的交互可以自然地解释为一个顺序的决策过程。

    如图 1 所示,用户通过发出查询“𝑞”开始搜索会话,并且排名系统传递具有𝑇个相应文档“𝐷 = {𝑑1,𝑑2,...dT}的 排名列表。

    用户检查呈现的列表,可能点击一个或多个文档,然后放弃列表以结束交互。

    在这样的过程中,点击序列{𝑐1。 . . ,𝑐𝑇 }生成。

    点击模型的目标是模拟从发出查询到放弃搜索的过程

    图1:概述点击模型

    此处定义一般的点击模型,不考虑用户在同一会话中的先前搜索查询的信息。
    利用马尔可夫决策过程(MDP)建模用户行为,定义如下:

    状态:

    初始用户状态𝑠0 伴随着查询𝑞初始化。

    状态st包含当前文档dt以及用户交互𝑐1, . . . ,𝑐𝑡−1(点击或不点击)以及排名前t的文档。

    𝑠𝑡 = {𝑞,𝑑1, . . . ,𝑑𝑡−1,𝑑𝑡, 𝑐1, . . . ,𝑐𝑡−1}

    行为:

    𝑎𝑡动作是用户与dt文档的交互,也即是at=ct
    用户是否点击某个项目取决于𝜋𝜃 (𝑎𝑡 |𝑠𝑡)策略,该策略由𝜃参数化

    转变:

    𝑠𝑡状态根据用户的界面进行更新𝑐𝑡和下一个文件𝑑𝑡+1

    t>0,𝑠𝑡+1 = {𝑠𝑡, 𝑐𝑡,𝑑𝑡+1}
    t=0,𝑠1 = {𝑠0, 𝑑1}

    训练我们的模型来预测用户不太可能检查的文档的低点击概率。
    排名列表末尾的状态被简单地设置为终端状态

    AICM组成:
    (1)用于查询、文档和交互表示的嵌入层
    (2)生成器:𝜋𝜃 (𝑎|𝑠),产生用户点击的行为策略
    (3)鉴别器:𝐷𝑤(𝑠,𝑎),测量生成的用户点击和真实点击之间的差异
    由𝑤参数化
    为了减轻暴露偏差,生成器和鉴别器在对抗性训练范式中学习。

    定义:嵌入层中表示查询𝑞、文档𝑑𝑡和交互𝑐𝑡。

    对于𝑑𝑡的每个文档,我们都加入了它的垂直类型𝑣𝑡,这是推断每个文档的呈现风格的一个重要特征。
    商业搜索引擎常见的垂直类型包括有机结果、百科垂直、图解垂直等。

    首先通过onehot编码将原始身份特征转换为高维稀疏特征。

    然后,对单向向量执行嵌入层,以将它们映射到低维、密集的实值嵌入向量:

    其中:

    𝑁∗和𝑙∗表示的输入大小和嵌入大小每个特征

    生成器: 𝜋𝜃 (𝑎|𝑠),根据状态生成用户反馈s

    𝑠携带了用户与之前提交的文档的历史交互信息。

    本文主选NCM模型(神经网络的点击模型)
    门控递归单元(GRU)(计算成本更低)

    生成器𝜋𝜃 (𝑎|𝑠)

    过程如下:
    (1)用户通过发出查询𝑞来启动会话,且初始化隐藏状态h0
    同时文档vd,垂直类型v𝑣,先前的互动vc,分别初始为0𝑑, 0𝑣, 0𝑐

    (2)在第一轮用户检查第一个文档。
    当前隐藏状态 h1 编码最后状态 h0,文档嵌入当前文档 vd,其对应的垂直类型v𝑣通过 GRU 单元嵌入 v𝑣和之前的互动 v𝑐根据来自策略
    𝜋𝜃 (𝑎1|𝑠1) =Softmax (Linear(h1))

    (3)先前的互动 v𝑐随着当前行为𝑎1 的嵌入而更新(单击或不单击)

    (4)对于轮次𝑡 > 1,重复步骤(2)和(3)以选择当前动作𝑎𝑡并更新先前的互动 v𝑐

    公式描述如下:

    其中:⊕是矢量关联的事,0∗表示零矢量,对应特征的大小为𝑙∗,h𝑡是𝑠𝑡的隐藏表示

    在 NCM 中,嵌入 v𝑞的查询仅在第 0 步使用

    而在 AICM 中,我们在每一步都对该信息进行编码,以确保在 RNN 的传播过程中不会忘记该信息。

    鉴别器:

    鉴别器𝐷𝑤 (𝑠,𝑎)将行为𝜋𝜃(𝑎|𝑠)产生的状态-动作对(𝑠,𝑎)与专家政策的状态-动作对区分开来:
    同样使用GRU构造𝐷𝑤 (𝑠,𝑎)
    第0轮次,初始化鉴别器状态h'0和查询vq
    当轮次t>=1时,GRU开始将嵌入 v𝑞的查询、嵌入 v𝑑的文档、嵌入 v𝑣的垂直以及当前 v𝑐与𝑑𝑡的交互作为输入(v𝑐是用户以前的𝑑𝑡−1互动对象)
    输出包含𝑠𝑡和𝑎𝑡信息的隐藏向量 h'𝑡
    鉴别器𝐷𝑤 (𝑠,𝑎):

    隐藏状态h'编码状态𝑠𝑡和行动𝑎𝑡,而ht在等式(7)中仅编码状态st的信息

    对抗训练

    生成器生成点击序列,而鉴别器
    𝐷𝑤 (𝑠,𝑎)测量生成的点击序列和真实序列之间的差异。生成器和鉴别器根据以下程序更新,直到收敛:

    1.首先,我们从行为政策中取样𝜏𝜋𝜃的轨迹来自专家演示的𝜋𝜃 (𝑎|𝑠)𝜏𝜋𝐸,然后我们用梯度更新鉴别器参数𝑤

    2.根据,每次我们获得更新的鉴别器𝐷𝑤 (𝑠,𝑎),我们使用最近策略优化(PPO) 采取梯度步骤来更新生成器

    等式(11)中定义的状态-动作值函数,控制策略梯度的方向和规模,建立在判别器 𝐷𝑤 (𝑠, 𝑎)提供的奖励上,

    (1)一方面,当生成的点击序列的下一次点击不同于训练数据时,它给出低奖励,这类似于大多数最先进的方法。

    (2)另一方面,它也给生成的序列低奖励,其中前缀,即先前生成的点击与训练数据有很大不同,训练数据明确限制了错误的传播。

    在训练过程中,由于鉴别器更好地区分了生成的序列和真实序列,这使得生成器产生更真实的前缀,因此暴露偏差可以是充分缓解

    图2

    对抗性模仿点击模型的总体框架。

    查询ID 记录ID 垂直类型 生成点击 真实点击 零赘余

    左:生成器的模型架构。

    右:鉴别器的模型架构。

    空白节点是零填充,它将在嵌入层之后映射到相应形状的零向量。

    相关文章

      网友评论

          本文标题:一种用于信息检索的对抗性模仿点击模型

          本文链接:https://www.haomeiwen.com/subject/gigdmltx.html