GAN学习笔记(10)IRGAN

GAN学习笔记(10)IRGAN_第1张图片

 IRGAN: A Minimax Game for Unifying Generative and Discriminative Information Retrieval Models
 大一统信息检索模型的博弈竞争
 2017年SIGIR满分论文
 将GAN应用至信息检索领域
 Te experiment code is provided at: htps://github.com/geek-ai/irgan

IR背景

  1. 经典学派认为,在文档和信息需求(包括查询)之间存在一个潜在的随机生成(gen-erative)过程。在文本检索中,经典的信息检索关联模型着重描述如何根据给定的信息需求生成(相关)文档:q→d,其中q是查询(例如,关键字、用户描述、问题,取决于特定的应用程序),d是其对应的文档(例如,文本文档、信息,项目,答案),箭头指示生成方向。统计语言文本检索模型考虑从文档到查询的逆向生成过程:d→q,通常从文档生成查询项(即查询似然函数)。

  2. 现代思维学派认识到机器学习的优势,并转向从标记的相关判断或其代理(如点击或评级)中学习的有区别的(分类)解决方案。它将文档和查询联合作为特征,从大量的训练数据中预测它们的相关性或排序标签:q+d→r,r表示相关性,符号+表示特征的组合。web搜索的一个重要发展是学习排名(LTR),这是一系列机器学习技术,其训练目标是为给定的查询(或上下文)提供文档(或项目)列表的正确排序。

A Minimax Retrieval Framework

不失概括性的前提下,信息检索问题描述:有一组查询{ q 1 q_1 q1,…, q N q_N qN}和一组文档{ d 1 d_1 d1,…, d M d_M dM}。在一般设置中,查询是用户信息需求的任何特定形式,例如搜索关键字、用户建议或问题,而文档可以是文本文档、信息项或答案,具体取决于特定的检索任务。对于一个给定的查询 q n q_n qn,我们有一组相关的文档,这些文档的大小远远小于文档总数 M M M
潜在的真实关联分布可以表示为条件概率p t _t t r _r r u _u u e _e e d d d | q q q r r r),它描述了用户提交的查询对候选文档的关联偏好分布。给定一组从p t _t t r _r r u _u u e _e e d d d | q q q r r r)观测到的样本作为训练数据,我们可以尝试构建两种类型的IR模型:

Generative retrieval model

p θ p_θ pθ d d d | q q q r r r)它的目标是尽可能接近文档p t _t t r _r r u _u u e _e e d d d | q q q r r r)上的真实关联分布。由 Softmax 函数给出
GAN学习笔记(10)IRGAN_第2张图片

Discriminative retrieval model

f ψ f_ψ fψ q q q d d d),相反,它试图区分匹配良好的查询文档元组( q q q d d d)和不匹配的查询文档元组( q q q d d d),其中 f ψ f_ψ fψ q q q d d d)给出的得分取决于 d d d q q q的相关性;换句话说,它的目标是尽可能准确地区分查询q的相关文档和非相关文档。事实上,它只是一个二进制分类程序,我们可以使用1作为真正匹配的查询文档元组的类标签(正示例),而0作为那些不匹配的类标签(负数示例)。

总体目标函数(思想同GAN,不多解释)

在这里插入图片描述
其中生成式检索模型G写成 p θ p_θ pθ d d d | q n q_n qn r r r),判别式检索 D D D直接估计文档 d d d与查询 q q q相关的概率,由判别器分数的sigmoid函数给出:
在这里插入图片描述

Optimising Discriminative Retrieval.

鉴别器的目标是最大化正确区分真实和生成的相关文档的对数可能性。
GAN学习笔记(10)IRGAN_第3张图片

Optimising Generative Retrieval.

目的是最小化目标,它将潜在的相关性分布传递给文档真值p t _t t r _r r u _u u e _e e d d d | q q q r r r),并在此基础上从整个文档集中随机抽取文档,以愚弄有区别的检索模型。
GAN学习笔记(10)IRGAN_第4张图片
由于 d d d的采样是离散的,它不能像原始GAN公式那样通过梯度下降直接优化。一种常见的方法是使用基于策略梯度(Policy Gradient )的强化学习。reward 由 D D D给出,其梯度推导如下:

  需要强化学习预备知识:https://zhuanlan.zhihu.com/p/42055115

GAN学习笔记(10)IRGAN_第5张图片
其中 d k d_k dk是从生成器(G) p θ p_θ pθ d d d | q n q_n qn r r r)当前版本中采样的第 k k k个文档。使用强化学习技术;
术语log(1+exp(fψ(d,qn)))
作为Policy p θ p_θ pθ d d d | q n q_n qn r r r)在环境 q n q_n qn中采取行动 d d d的reward。

为了减少强化学习过程中的方差,我们还将奖励项log(1+exp(fψ(d,qn)))
替换为其优势函数:
在这里插入图片描述

算法

GAN学习笔记(10)IRGAN_第6张图片
GAN学习笔记(10)IRGAN_第7张图片

成对情况的扩展

对于每个查询 q n q_n qn,我们有一组带标签的文档对 R n R_n Rn={ d i d_i di d j d_j dj | d i d_i di d j d_j dj}。 d i d_i di d j d_j dj表示 d i d_i di q n q_n qn更相关。
生成器 G G G将尝试生成与 R n R_n Rn中相似的文档对,即具有正确的排名。鉴别器 D D D将尝试将这些生成的文档对与那些实际文档对区分开来。文档对{ d u d_u du d v d_v dv}被正确排序的概率可以通过sigmoid函数通过判别性检索模型 D D D来估计:
在这里插入图片描述
在这里插入图片描述
则目标函数:
GAN学习笔记(10)IRGAN_第8张图片
注意: o={ d u d_u du d v d_v dv}
在实践中,通过生成器G生成一个文档对,我们首先从 R n R_n Rn中选择一个文档对{ d i d_i di d j d_j dj}取排名较低的文档 d j d_j dj,然后将其与从未标记数据中选择的文档 d k d_k dk配对,生成一个新的文档对{ d k d_k dk d j d_j dj}。其基本原理是识别与排名较高的文档相似的文档,这些文档更可能与查询 q n q_n qn相关。根据当前生成模型pθ(d | q,r), d k d_k dk应比 d j d_j dj更具相关性。换言之,我们希望从整个文档集中选择 d k d_k dk生成一个文档对{ d k d_k dk d j d_j dj},它可以模仿文档对{ d i d_i di d j d_j dj}∈ R n R_n Rn

这里的生成模型有由softmax给出在这里插入图片描述
式中, g θ g_θ gθ q q q d d d)是一个任务特定的实值函数,表示从 q q q生成 d d d的概率。然后,选择特定文档 d k d_k dk的概率可以由另一个sofmax函数给出:
GAN学习笔记(10)IRGAN_第9张图片

 注意:在实际应用中,相关文档的真实分布是未知的,在这种情况下,生成/判别检索模型如何收敛以达到这样的平衡仍是当前研究文献中的一个悬而未决的问题。在对IRGAN的实证研究中,我们发现,根据特定的任务,生成和判别检索模型可能会达到不同的性能水平,并且至少有一个模型在没有对抗性训练的情况下比相应的原始模型有显著的提高。

讨论

鉴别器和发生器如何互相帮助?对于positive文献,无论观察到与否,其由判别因子fψ(q,d)和条件概率密度pθ(d | q,r)给出的相关性得分可能有一定的正相关。在训练的每一个阶段,生成器试图产生接近判别器决策边界的样本,以混淆下一轮训练,而鉴别器则试图对产生的样本进行评分。由于正但未观测到的(即真阳性)样本和(部分)观测到的阳性样本之间存在正相关关系,因此生成器应该能够学会利用鉴别器的信号,比其他样本更快地向上推这些正但未观测到的样本。
GAN学习笔记(10)IRGAN_第10张图片

GAN在IR中的不同点

Generative Adversarial Nets

GAN最初是为了生成连续的数据,如图像。IRGAN在以下三个方面有所不同。

  1. 首先,生成检索过程是对离散数据(即候选文档)进行随机采样,这与基于原始GAN中采样噪声信号的确定性生成不同。具体地说,如式(20)所示,对于每个查询 q n q_n qn,生成检索模型的目标是最小化来自区分性检索的回报信号的期望值,而在原始GAN中,奖励信号仅依赖于单个生成实例。’

     原始GAN是生成一个图像,让D去判别fake和True,这里是生成一组候选文档
    
  2. 其次,对生成检索模型的学习过程是基于强化学习领域的随机策略梯度技术。在IRGAN中,生成检索模型可以看作是在给定的查询环境中选择候选文档的行为体;判别检索模型可以看作是判断查询文档对是否足够相关的批评家。

  3. 在训练过程中,由于文档是离散的,候选集是fnite,这与图像的连续(infinte)空间或文本序列的极其巨大的离散(几乎无限)空间相背离,因此,在训练过程中,地面真实文档与生成文档之间的冲突非常普遍。

MLE based Retrieval Models.

在信息检索中,最大似然估计(MLE)也被广泛地用作许多相关特征或检索模型的估计方法,如词频(TF)、混合模型(MM)和概率潜在语义索引(PLSI)。本文提供了另一种训练和融合检索模型的方法。

  1. 首先,生成过程被设计为通过最小化Jensen-Shannon散度来获得潜在的真条件分布p t _t t r _r r u _u u e _e e d d d | q q q r r r)。利用观察到的用户反馈数据,很自然地利用GAN来提炼出一个生成性的检索模型,将其转化为一个未知的条件分布。
  2. 第二,两个联合的IR模型的统一训练方案具有获得更优检索模型的潜力,因为(i)生成检索自适应地为判别检索训练提供不同的负样本,与静态负采样或动态负采样相比具有策略上的多样性;(ii)判别检索模型的奖励信号为生成检索模型的训练提供了策略指导,这是传统的生成检索模型训练所不具备的。从生成检索的角度来看,IRGAN优于传统的极大似然估计。从判别式检索的角度来看,IRGAN能够利用未标记的数据来实现半监督学习的效果。

APPLICATIONS

公式(8)
在这里插入图片描述
完全依赖于 g θ g_θ gθ(q,k),,在取样阶段,温度参数τ包含在公式(8)中表示为:
在这里插入图片描述
τ越低,抽样的重点就越集中在排名靠前的文件上。一种特殊情况是温度设置为0,这意味着发生器的熵为0。在这种情况下,生成器简单地按降序排列文档并选择最上面的文档。
判别器对文档的排序,即等式(2)用于逐点设置,等式(6)用于成对设置,完全由评分函数 g θ g_θ gθ(q,d)和 f ψ f_ψ fψ(q,d)确定。 g θ g_θ gθ(q,d)和 f ψ f_ψ fψ(q,d)是任务特定的。尽管 g θ g_θ gθ(q,d)和 f ψ f_ψ fψ(q,d)可能有各种实现(例如, f ψ f_ψ fψ(q,d)被实现为三层神经网络,而Д g θ g_θ gθ(q,d)被实现为一个因子分解机),但为了更集中于对抗性训练。选择使用相同的函数(具有不同的参数集)来实现它们。
在这里插入图片描述

应用

Web Search

一般来说,有三种类型的损失函数是为学习排名而设计的,即点态pointwise , 、成对pairwise和列表态listwise。,在文档对上减少损失并在文档对上添加列表感知权重的列表式方法,例如LambdaRank和LambdaMART],可以在各种学习排序任务中获得最佳性能。尽管排序损失函数多种多样,但几乎每一种排序方法都归结为一个评分函数 s s s q q q d d d)。在web搜索场景中,每个(查询------文档)对( q q q d d d)可以用一个向量 x x x q _q q , _, , d _d d R k R^k Rk来表示,其中每个维度表示查询文档对或其中任何一部分的统计值,如BM25、PageRank、TFIDF,语言模型评分等。我们遵循RankNet的工作,实现了评分函数的两层神经网络:
在这里插入图片描述
其中 w 1 w_1 w1 ∈ ∈ R R R l ^l l × ^× × k ^k k为第一层的全连通矩阵 b 1 b_1 b1 ∈ ∈ R R R l ^l l为隐层的偏置向量, w 2 w_2 w2 R l R^l Rl w 0 w_0 w0为输出层的权值。

Item Recommendation

Item推荐是一个流行的数据挖掘任务,可以看作是一个广义的信息检索问题,其中的查询是由用户过去的项目消费构造的。推荐系统中最重要的方法之一是CF,它探索潜在的用户用户或项目项的相似性,并在此基础上执行个性化推荐。在CF中,一个被广泛采用的模型是矩阵分解,我们将评分函数定义为用户 u u u(即查询)对项目 i i i(即文档)的偏好,如下所示:
在这里插入图片描述
其中 b i b_i bi是项目 i i i的偏差项, v u v_u vu v i v_i vi ∈ ∈ R k R^k Rk是在 k k k维连续空间中分别定义的user和item的潜在向量。这里我们省略了全局偏差和用户偏差,因为它们在每个用户的top-N项推荐任务中减少了???。为了使讨论不受限制,选择了一个基本的矩阵分解模型来实现,并且在需要的时候用更复杂的模型(如因子分解机或神经网络)来代替它。

Qestion Answering

在问答任务[9]中,问题q或答案a被表示为一系列单词。典型的QA解决方案旨在首先理解自然语言问题,然后选择/生成一个或多个与问题最匹配的答案。在各种问答任务中,基于文档的问答任务可以看作是一个基于两个文本(分别为 Qestion和Answering)匹配得分的排序过程。最近,利用神经网络提出了端到端预测短文本对匹配的方法(CNN,LSTM)

对于任何一个问题-答案对( q q q a a a),我们可以定义一个相关性得分。具体地说,我们可以利用卷积神经网络(CNN)来学习单词序列的表示,其中每个单词都作为一个向量嵌入到 R k R^k Rk中。通过对齐词向量,长度为 l l l字句可以看作是 R R R l ^l l × ^× × k ^k k中的一个矩阵。然后经过CNN通过最大池随时间策略得到当前句子的表示向量,这种问答对的相关度可以定义为它们的余弦相似性,即。
在这里插入图片描述
在这里插入图片描述
z是卷积核的数目

实验

Web Search

实验设置。Web Search是IR领域的一个重要问题。本文利用著名的基准数据集LETOR(LEarning TO Rank)[25]进行网页排名实验。尽管标准的学习排序任务假定所有训练查询文档对都有明确的专家评分,但用户交互的隐含反馈(如点击信息)在实际应用中更为常见。这意味着我们通常面对的是从隐含反馈中推断出的相对较少的标记数据和大量未标记的数据。在未标记的数据中,可能存在一些尚未被发现的隐藏的正例。因此,我们选择在LETOR 4.0中的MQ2008- semi(百万Query track)集合上进行半监督设置的实验:除了标记的数据(判断的查询文档对),这个集合还包含大量未标记的数据(未定义的查询文档对),这些数据可以被我们的IRGAN框架有效地利用。

数据集中的每个查询文档对都有一个关联级别(−1、0、1或2)。关联级别越高,查询文档对的相关性就越高,除非−1表示“未知”。每个查询文档对由一个46维的特征向量表示(例如BM25和LMIR)。为了在内隐反馈的背景下评估我们提出的IRGAN,我们将相关性级别高于0的所有查询文档对视为正例,将所有其他查询性文档对(相关性-1或0)视为未标记例。 根据我们的统计数据,该数据集中有784个唯一查询; 一般每个查询与大约5个肯定文档相关,1,000张未贴标签的文件。 为了构造训练和测试集,我们执行4:1随机分割。 基于此数据集评估点对和成对IRGAN。
我们提供了MQ2008-semi数据集上所有比较学习与排名算法的总体性能。在我们的IRGAN框架中,我们使用生成式检索模型来预测给定查询的用户偏好文档的分布,然后进行排名,这与在温度参数设置非常接近0的情况下进行sofmax抽样相同。从实验结果中,我们可以看到我们的IRGAN方法在所有指标上带来了明显的性能改进。具体来说,IRGAN pointwise在P@3, NDCG@3这主要集中在排名靠前的几个网页上优于IRGAN pointwise,而IRGAN pointwise在精度@10, NDCG@10和MAP,考虑到更多的网页排名靠前时优于IRGAN pointwise。一种可能的解释是,IRGAN pointwise针对的是条件分布ptrue(d | q,r),它只关心单个文档是否与查询相关,而IRGAN pairwise关心给定查询的文档的整体排名。值得一提的是,我们实验中研究的数据集带有隐式反馈,这在现实生活中很常见,包括网络搜索和在线广告。传统的学习排序方法(如LambdaMART)在这种半监督设置中并不特别有效,这可能是因为它依赖于每个文档对的∆NDCG评分。

图4显示了在等式(10)中排名性能如何随温度参数的变化而变化,生成性检索模型使用该参数为区分性检索模型抽取否定查询文档对。我们发现经验上的最佳取样温度为0.2。当温度从0调整到最佳值时,排名性能会提高,然后再进一步下降,这表明适当增加生成检索模型的攻击性(即倾向于关注排名靠前的文档)是很重要的
GAN学习笔记(10)IRGAN_第11张图片

Item Recommendation

数据集:GAN学习笔记(10)IRGAN_第12张图片

将Movielens和Netfix中的5星评级视为正反馈,而将所有其他条目视为未知反馈,主要关注的是隐式反馈问题。对两个数据集应用4:1随机分割。Movielens和Netfix的矩阵因子数分别为5和16。
GAN学习笔记(10)IRGAN_第13张图片

GAN学习笔记(10)IRGAN_第14张图片
GAN学习笔记(10)IRGAN_第15张图片

Qestion Answering

数据集:InsuranceQA

GAN学习笔记(10)IRGAN_第16张图片

你可能感兴趣的:(笔记,深度学习)