打字猴:1.700540552e+09
1700540552
1700540553
1700540554
1700540555
1700540556 (13.23)
1700540557
1700540558
1700540559 其中。这是一个交替优化的过程,固定判别器,对生成器的优化简化为:
1700540560
1700540561
1700540562
1700540563
1700540564 (13.24)
1700540565
1700540566
1700540567
1700540568
1700540569 问题来了,如果d连续,我们沿用原GANs的套路没问题,对每个qn,生成K个文档,用近似估计每个qn下的损失函数,损失函数对dk的梯度会回传给生成dk的生成器。但是,如果d离散,损失函数对d是没有梯度的,我们拿什么传给生成器呢?
1700540570
1700540571 强化学习中的策略梯度方法揭示了期望下损失函数的梯度的另外一种形式[42]。我们用JG(qn)表示给定qn下损失函数的期望,即:
1700540572
1700540573
1700540574
1700540575
1700540576 (13.25)
1700540577
1700540578 我们暂不用蒙特卡洛采样(即采样样本之和的形式)去近似期望,而是直接对期望求梯度
1700540579
1700540580
1700540581
1700540582
1700540583 (13.26)
1700540584
1700540585
1700540586 梯度仍是期望的形式,是对数概率函数log pθ(d|qn)对θ的梯度带上权重的期望,我们再用蒙特卡洛采样去近似它:
1700540587
1700540588
1700540589
1700540590
1700540591 (13.27)
1700540592
1700540593 其中K为采样个数。此时,我们就能估计目标函数对生成器参数θ的梯度,因为梯度求解建立在对概率分布函数pθ(dk |qn)(强化学习中称策略函数)求梯度的基础上,所以称为策略梯度。
1700540594
1700540595 欲得到策略梯度,我们必须显式表达pθ(dk |qn),这与原GANs的生成器不同。原GANs不需要显式给出概率分布函数的表达式,而是使用了重参数化技巧,通过对噪音信号的变换直接给出样本,好处是让生成过程变得简单,坏处是得不到概率表达式,不适于这里的生成器。这里直接输出的不是离散样本,而是每个离散样本的概率。一方面,生成器的输入端不需要引入噪音信号,我们不想让概率分布函数也变成随机变量;另一方面,生成器的输出端需要增加抽样操作,依据所得概率分布生成K个样本。如果用神经网络对生成器建模,那么最后一层应是Softmax层,才能得到离散样本概率分布。在判别器的构建中,输入的是离散样本的n维向量表示,如一个文档向量每维可以是一些诸如BM25,TF-IDF,PageRank的统计值,其余部分参照原GANs的做法。
1700540596
1700540597 最后,训练过程与原GANs的步骤一样,遵循一个MiniMax的优化框架,对生成器和判别器交替优化。优化生成器阶段,先产生K个样本,采用策略梯度对生成模型参数进行多步更新;优化判别器阶段,也要先产生K个样本,作为负样本与真实数据的样本共同训练判别器。理论上,优化过程会收敛到一个纳什均衡点,此时生成器完美地拟合了真实数据的Query-Document相关性分布ptrue(d|qn),这个生成模型被称为生成式检索模型(Generative Retrieval Models),对应于有监督的判别式检索模型(Discriminative Retrieval Models)。
1700540598
1700540599
1700540600
1700540601
[ 上一页 ]  [ :1.700540552e+09 ]  [ 下一页 ]