CN111783980B - 基于双重协作生成式对抗网络的排序学习方法 - Google Patents
基于双重协作生成式对抗网络的排序学习方法 Download PDFInfo
- Publication number
- CN111783980B CN111783980B CN202010594875.4A CN202010594875A CN111783980B CN 111783980 B CN111783980 B CN 111783980B CN 202010594875 A CN202010594875 A CN 202010594875A CN 111783980 B CN111783980 B CN 111783980B
- Authority
- CN
- China
- Prior art keywords
- generator
- network
- discriminator
- tutor
- model
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- 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/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
-
- 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/38—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Library & Information Science (AREA)
- Complex Calculations (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
一种基于双重协作生成式对抗网络的排序学习方法,该生成式对抗网络包含三个角色:导师,生成器和判别器,该方法主要步骤包括:S1、构建排序学习所需数据集步骤;S2、创建导师网络和生成器网络步骤;S3、创建判别器网络步骤;S4、数据细节及参数设置步骤;S5、T‑G网络模型迭代训练步骤;S6、G‑D网络模型迭代训练步骤;S7、多指标有效性测试结果返回步骤,效果是改善了用于排序学习的生成式对抗网络,在先前的知识体系基础上,通过导师与生成器之间的交互帮助与监督,减少了生成器和判别器之间的差异,提高了生成器的效率与有效性,在训练过程中大大削弱了过拟合的风险,改善了排序学习的性能。
Description
技术领域
本方法涉及信息检索和机器学习领域,尤其和排序学习中的生成对抗网络关系密切。
背景技术
作为信息检索和机器学习的交集领域,排序学习已广泛应用于基于监督机器学习方法的不同排序任务中。排序学习模型以面向排序的损失函数为优化目标。最终的训练模型可以有效地适应排序方案,并为查询提供相关的文档列表。因此,排序学习的损失函数的构建至关重要。根据损失函数的类型,排序学习模型通常分为三类,即point,pair和list。这三种类型的模型也对应于三种等级损失函数,它们的构造方法也对应着三种不同类型的输入样本划分方法。
pointwise模型把文档和给定查询之间的相关性作为模型训练的预测目标,并把单个文档作为模型的输入,从而直接累积排序损失并预测单个文档的相关性。其他pointwise方法采用类似的方法来建模文档相关性。pointwise模型直接继承了排序任务的分类或回归算法的特征,并将原始算法的输出转换为排序分数,以获得最终的文档排序列表。pairwise模型使用两个相关性不同的文档的偏好关系作为模型训练的预测目标,将同一查询下的所有文档对都作为模型输入,使得所有文档对都累积在排序损失中。listwise模型使用与模型训练的预测目标相同的查询下的所有文档的排序列表,并使用与不同查询相对应的多个文档集作为模型的输入,同时累积地面真实排序列表与损失中的预测清单。因此,可以直接在文档列表级别对排序模型进行优化,来输出最佳文档排序列表。
以往的研究结果表明,与pointwise模型和pairwise模型相比,listwise模型在模型构建中考虑了更多的排序信息,使得它可以直接优化文档排序列表或信息检索评估手段,从而在不同的排序任务中获得更好的排序性能。
生成对抗网络(GAN)为任务提供了一个通用框架,该框架可分为两部分:生成器(Generator)和判别器(Discriminator)。生成器(Generator)G试着拟合真实数据分布,甚至试着生成数据来欺骗判别器(Discriminator)D。而与之相反的是,D学会了从真实数据中分离出虚假数据。这种方法广泛用于计算机视觉(CV)任务,例如:生成像BigGan这样的高质量图像。此外,越来越多的GAN应用于信息检索(IR)任务,例如:IRGAN。
一般来说,训练生成器(Generator)来学习真实数据的潜在概率分布并生成无噪声的数据。判别器(Discriminator)可以通过更少的噪声馈送数据获得更好的性能,并且具有朝向理论数学最小值的稳健训练路径。尽管GAN具有优势,但是面对复杂的训练也会表现得比较糟糕。为了发现并找到可能的解决方案,大家也进行了越来越多相关性的研究。LeakGAN让判别器(Discriminator)将更多信息泄漏给生成器(Generator),这一点使得反馈更加强大,训练过程也变得更加优秀。
发明内容
本发明是一种用于排序学习的双重协作生成对抗网络,其目的在于解决GAN网络的局限性,即缓解训练不足的问题,将NDCG指标引入先前的知识体系之中,大大削弱了过度拟合的程度。
本发明减少生成器(Generator)和判别器(Discriminator)之间的差异,使它们两者都可以进一步训练并获得更好的性能。本方法混合了排序学习的三个范式:pointwise,pairwise和listwise,并将它们分配给三个角色:导师(Tutor),生成器(Generator)和判别器(Discriminator)。这三个模型在两个GAN中进行迭代训练。他们有一个共同的最终目标:最大程度地优化他们的排序表现。
本发明解决现有技术问题所采用的技术方案:发明内容包括:一种基于双重协作生成式对抗网络的排序学习方法,包括如下步骤:S1、构建排序学习所需数据集;S2、创建导师网络(Tutor)和生成器网络(Generator);S3、创建判别器网络(Discriminator);S4、数据细节及参数设置;S5、T-G网络模型迭代训练;S6、G-D网络模型迭代训练;S7、多指标有效性测试结果返回。
进一步的,S1、构建排序学***均值;数据集的格式满足如下要求:每行是一个查询文档对,第一列是该对的相关标签,第二列是查询ID(qid),末尾列是关于该对的注释,中间列为特征列。
进一步的,S2、创建导师网络(Tutor)和生成器网络(Generator):初始化设置导师网络(Tutor)和生成器网络(Generator),创建导师网络(Tutor)和生成器网络(Generator),网络架构如下:根据输入的单个查询文档特征或者查询文档集分别预处理为特征向量或者特征矩阵,然后将其导入两层Linear网络,第一个线性层由非线性函数Tanh激活,第二层由非线性函数Sigmoid或Softmax激活,对于给定的单个查询文档,Sigmoid输出为得分,对于给定的查询文档集,Softmax输出为概率分布。
进一步的,S3、创建判别器网络(Discriminator):初始化设置判别器网络(Discriminator),创建判别器网络(Discriminator),网络架构如下:根据输入的单个查询文档特征预处理为特征向量,然后将其导入两层Linear网络,第一个线性层由非线性函数Tanh激活,第二层由非线性函数Sigmoid激活;对于给定的单个查询文档,Sigmoid输出为得分。
进一步的,S4、数据细节及参数设置:优化目标如下式:
其中d、qn、r分别指的是文档、第n个查询和打分,N指的是查询的个数,G(d|qn)指的是qn检索下,生成器(Generator)对于当前d的打分;D(d|qn)指的是指的是qn检索下,判别器(Discriminator)对于当前d的打分;
对导师网络(Tutor)、生成器网络(Generator)、判别器网络(Discriminator)进行参数设置,导师网络(Tutor)、生成器网络(Generator)、判别器网络(Discriminator)简称为T、G和D,其各自中的参数群分别为λ,θ和φ,初始设置为随机初始化,并通过所述步骤S5与步骤S6对参数群进行更新,网络参数包括学习率(learning rate),梯度算法的动量项(momentum term),批处理参数(batch size),设置T对Stochastic Gradient Descent(SGD)的学习率为1e-6,设置G和D对Adam的学习率为1e-5,动量项β1=0.9,β2=0.999,并且无权重衰减,批处理参数设置为32。
进一步的,S5、T-G网络模型迭代训练:选择最小最大博弈进行优化以迭代训练导师网络(Tutor)和生成器网络(Generator),每次训练过程都调取步骤S2中的网络,一共迭代训练200次,在实际训练中,由于导师网络(Tutor)给予生成器网络(Generator)的采样项不是连续的,使用如下公式对其优化:
其中d、qn分别指的是文档、第n个查询,r指的是打分,N指的是查询的个数,G(d|qn)指的是qn检索下,生成器(Generator)对于当前d的打分;是服从数据集基础相关性分布ptrue(d|qn,r)的计算值期望,导师网络(Tutor)为生成器网络(Generator)生成样本的概率为pλ(d|qn,r);是生成样本概率pλ(d|qn,r)的计算值期望;
K代表当前查询的文档个数,其中ListLoss来源于LambdaRank模型,该模型直接从当前查询与文档相关程度排名的NDCG列表中获取梯度,在导师网络(Tutor)中,采用LambdaRank模型,输入两层网络输出的文档打分排名,获取当前文档排名的ListLoss,而后更新参数群λ,之后以更新参数后的导师网络(Tutor)生成复杂样本文档输入生成器网络(Generator),生成概率满足tλprob(d|q,r),以导师网络(Tutor)输出值分布生成样本,样本输入生成器网络(Generator),输出作为Reward,由此通过ListLoss*Reward以及策略梯度的方式优化JT(qn)。
进一步的,S6、G-D网络模型迭代训练:选择最小最大博弈进行优化以迭代训练生成器网络(Generator)和判别器网络(Discriminator),每次训练过程调取步骤S3中的网络,迭代训练200次;
生成器网络(Generator)通过导师网络(Tutor)采样的真实正样本不断生成假的正样本,以此和判别器网络(Discriminator)博弈,通过下式完善生成器网络(Generator)性能:
其中d、qn、r分别指的是文档、第n个查询和打分,N指的是查询的个数;D(d|qn)指的是指的是qn检索下,判别器(Discriminator)对于当前d的打分;是服从数据集基础相关性分布ptrue(d|qn,r)的计算值期望;是生成样本概率pλ(d|qn,r)的计算值期望;生成器网络(Generator)为判别器网络(Discriminator)生成样本的概率为pθ(d|qn,r);是生成样本概率pθ(d|qn,r)的计算值期望;其中PointLoss来源于Pointwise模型,该模型的损失函数用于评估单个doc的预测得分和真实得分之间差异,定义PointLoss函数如下:
损失函数中的fθ(dn)是模型的预测值,作为G-D循环的后一部分,判别器(Discriminator)用于判别生成器(Generator)生成的假的正样本并最小化假的正样本的对数似然预测标签,最大化生成的正样本的对数似然预测标签:
RankNet模型使用PairLoss函数训练其得分函数,PairLoss函数定义如下:
损失函数中的fΦ(posn)和fΦ(negn)分别是是模型对输入的正样本和负样本的预测值,其中,负样本是从pθ(d|qn,r)中采样的,它是生成器网络(Generator)从pλ(d|qn,r)中学到的,同时也是导师网络(Tutor)从原始数据中学到的。
进一步的,导师(Tutor)检索模型:
导师(Tutor)检索模型具体采用导师网络(Tutor)来实现,导师网络(Tutor)是导师模型(Tutor)的具体体现方式,通过最小化Lambda Loss同时生成NDCG概率tλprob(d|q,r)来训练导师(Tutor),使其匹配得分函数tλscore(d,q),导师(Tutor)为生成器(Generator)不断选择复杂负面样本,NDCG概率被导入到生成器(Generator);
生成器(Generator)检索模型:
采用生成器网络(Generator)来实现生成器(Generator)检索模型,训练生成器(Generator)拟合得分函数gφscore(d,q)并生成概率gφprob(d|q,r);生成器(Generator)接收成批的复杂样本进行训练并不断以渐变的形式向导师(Tutor)提供反馈结果,同时,生成器(Generator)不断产生复杂文档对,供判别器(Discriminator)训练,得到竞争对手的回应并指导训练;
判别器(Discriminator)检索模型:
采用判别器网络(Discriminator)来实现判别器(Discriminator)检索模型,判别器(Discriminator)经过训练匹配得分函数dθscore(d,q),判别器(Discriminator)不断从生成器(Generator)中鉴别出复杂样本改善性能,并给出生成器(Generator)在训练过程中的判别方向。
进一步的,导师(Tutor)、生成器(Generator)和判别器(Discriminator)间的关系如下:
导师(Tutor)和生成器(Generator):
导师(Tutor)和生成器(Generator)之间的关系为教导-反馈循环,导师(Tutor)用复杂样本引导生成器(Generator),生成器(Generator)来充当学生,不断地向导师(Tutor)提供反馈;
导师(Tutor)中采用LambdaRank模型,该模型支持对非平滑的评估指标进行直接的优化,使导师(Tutor)模型不断为生成器(Generator)生成复杂样本,生成器(Generator)模型采用基本的pointwise模型,
在训练过程中,交替训练导师(Tutor)和生成器(Generator)
生成器(Generator)和判别器(Discriminator):
生成器(Generator)和判别器(Discriminator)之间的关系生成-判别循环,生成器(Generator)不断地为判别器(Discriminator)生成复杂样本,而判别器(Discriminator)给出生成器(Generator)的鉴别方向;生成器(Generator)采用pointwise模型,判别器(Discriminator)采用RankNet的pairwise模型;在训练过程中,交替训练生成器(Generator)和判别器(Discriminator)。
有益效果:本发明减少了生成器(Generator)和判别器(Discriminator)之间的差异,使它们每两者都可以进一步训练并获得更好的性能,解决了GAN网络的局限性,缓解了训练不足的问题。
附图说明
图1为本发明的工作流程示意图。
图2为本发明的T-G神经网络结构示意图。
图3为本发明的G-D神经网络结构示意图。
图4为CoGAN模型NDCG@10在MQ2008-semi上的学习曲线。
具体实施方式
以下结合附图及具体实施方式对本发明进行说明:一种用于排序学习的双重协作生成对抗网络,混合了排序学习(LTR)的三个范式:pointwise、pairwise和listwise。并将它们分配给三个角色:导师(Tutor),生成器(Generator)和判别器(Discriminator)。这三个模型在两个GAN中进行迭代训练。
S1、构建排序学习所需数据集步骤
在此步骤,本方法创建一个包含已判断的查询文档,也包含未识别的查询文档对(在训练集中包含,但在验证集和测试集中则不包含)的数据集,数据集格式应在每一阶段都有三个学***均值。
数据集的格式应满足如下要求:每行是一个查询文档对。第一列是该对的相关标签,第二列是查询ID(qid),末尾列是关于该对的注释,包括文档的ID(docid)。第一列的相关性标签值包括0,1,-1,相关性标签值越高,表示查询与文档的相关性越好。其中,一条查询含有唯一的查询ID,对应于多个具有相关性的文档ID,构成了一次查询请求结果文档列表。中间的46列为特征列,基于每个查询和文档,都使用其他基于链接、内容等维度的计算方法,计算出每个查询和文档的46维特征。由此构成数据集。
S2、创建导师(Tutor)网络、生成器(Generator)网络步骤
在此步骤要初始化设置导师(Tutor)和生成器(Generator),创建导师(Tutor)神经网络和生成器(Generator)神经网络以便于后续训练。网络架构如下:根据输入的单个查询文档特征或者查询文档集分别预处理为特征向量或者特征矩阵,然后将其导入两层Linear神经网络,第一个线性层由非线性函数Tanh激活,第二层由非线性函数Sigmoid或Softmax激活。对于给定的单个查询文档,Sigmoid输出为得分(关联程度);对于给定的查询文档集,Softmax输出为概率分布,以便于后续训练。
S3、创建判别器(Discriminator)网络步骤
在此步骤要初始化设置判别器(Discriminator),创建判别器(Discriminator)网络以便于后续训练。网络架构如下:根据输入的单个查询文档特征预处理为特征向量,然后将其导入两层Linear神经网络,第一个线性层由非线性函数Tanh激活,第二层由非线性函数Sigmoid激活。对于给定的单个查询文档,Sigmoid输出为得分(关联程度)。
S4、优化目标细节及参数设置步骤
在此步骤说明优化目标细节及参数设置。在两个对抗网络中的导师(Tutor)与生成器(Generator)、生成器(Generator)与判别器(Discriminator)之间,针对每一个查询,前者均为后者生成(采样)复杂文档(难以辨别),以满足GAN中的最大最小博弈。对于上述假设,本方法精心设计了以下优化目标,其中d、q、和r分别指的是文档、查询和打分。
是服从数据集基础相关性分布ptrue(d|qn,r)的计算值期望。公式3中,通过极大极小损失函数,尽可能提升T、G性能,其中导师(Tutor)为生成器(Generator)生成样本的概率为pλ(d|qn,r),是生成样本概率pλ(d|qn,r)的计算值期望。公式4中,通过极大极小损失函数,尽可能提升G、D性能,其中生成器(Generator)为判别器(Discriminator)生成样本的概率为pλ(d|qn,r),是生成样本概率pθ(d|qn,r)的计算值期望。
另外,针对S3中创建好的三个网络进行参数设置,T、G和D各自中的参数群分别为λ,θ和φ,初始设置为随机初始化,后续通过S5与S6进行更新。神经网络参数包括学习率(learning rate),梯度算法的动量项(momentum term),批处理参数(batch size)。本方法设置T对Stochastic Gradient Descent(SGD)的学习率为1e-6,并设置了G和D对Adam的学习率为1e-5,动量项β1=0.9,β2=0.999,并且无权重衰减。批处理参数都设置为32。
S5、T-G网络模型迭代训练步骤:
在此步骤,选择最小最大博弈进行优化,以便可以迭代训练导师(Tutor)和生成器(Generator)。每次训练过程都会调取S2中神经网络,一共迭代训练200次。在实际训练中,由于导师(Tutor)给予生成器(Generator)的采样项不是连续的,需要进行进一步的数学推导以便于后续优化:
在上述方程式中,为简明起见,将表示为JT(qn)。因为使用的神经网络为非凸函数,要更新给定的JT(qn)参数,需要使用梯度下降方法进行训练。因此,虽然很难计算JT(qn)的梯度,但是可以将策略梯度应用于JT(qn)以获得近似梯度:
在上式中,K代表当前查询的文档个数。
其中ListLoss来源于LambdaRank模型,该模型能改善大多数IR度量中由排序引入的排名性能,可以直接从当前查询与文档相关程度排名的NDCG列表中获取梯度。因此在导师(Tutor)中,采用LambdaRank模型,输入两层神经网络输出的文档打分排名,获取当前文档排名的ListLoss,而后更新参数群λ。之后以更新参数后的导师(Tutor)生成复杂样本文档输入生成器(Generator),生成概率满足tλprob(d|q,r),即以导师(Tutor)神经网络输出值分布生成样本。样本输入生成器(Generator)神经网络,输出作为Reward。由此通过ListLoss*Reward以及策略梯度的方式优化JT(qn)。
S6、G-D网络模型迭代训练步骤:
在此步骤,选择最小最大博弈进行优化,以便可以迭代训练生成器(Generator)和判别器(Discriminator)。每次训练过程都会调取S3中神经网络,同样也迭代训练200次。
生成器(Generator)的目的是通过导师(Tutor)采样的真实正样本不断生成假的正样本,并以此来和判别器(Discriminator)进行博弈。因此我们希望通过如下数学推导的方法来改善生成器的性能:
其中PointLoss来源于Pointwise模型,该模型的损失函数可以评估单个doc的预测得分和真实得分之间差异,易于进行比较并检查实验中的提升。我们定义PointLoss函数如下:
作为G-D循环的后一部分,判别器(Discriminator)的目的是判别生成器(Generator)生成的假的正样本并最小化假的正样本的对数似然预测标签,最大化生成的正样本的对数似然预测标签:
本方法使用RankNet模型,该模型使用PairLoss函数而不是PointLoss函数来训练其得分函数。前者更优秀,并具有更好的区分能力。PairLoss函数定义如下:
如公式7所示,函数的输入是一个对正样本和负样本。这个负样本是从pθ(d|qn,r)中采样的,它是生成器(Generator)从pλ(d|qn,r)中学到的,同时也是导师(Tutor)从原始数据中学到的。
S7、多指标有效性测试结果返回步骤:
本方法可以通过多项指标的打分对三个网络模型的训练结果的有效性进行测试,并将测试结果返回。检索性能的评价指标包括但不限定于:准确率(Precision),平均准确率(MAP),NDCG值和MRR值等。
在步骤S5导师(Tutor)的训练过程中,直接计算很难求得JT(qn)的梯度,应用策略梯度于JT(qn)以获得近似梯度。
本方法中S7、多指标有效性测试结果返回步骤的检测有效性的多指标具体包括但不限定于:准确率Precision(P@N:在第N个位置上的正确率)、MAP(MeanAveragePrecision)、MRR(MeanReciprocalRank)、NDCG(NormalizedDiscountedCumulative Gain)等。
2.CoGAN模型有三个主要模块:导师(Tutor),生成器(Generator)和判别器(Discriminator),这三个模型的具体细节如下:
导师(Tutor)检索模型
通过最小化LambdaLoss同时生成NDCG概率tλprob(d|q,r)来训练导师(Tutor),使其匹配得分函数tλscore(d,q)。换句话说,导师(Tutor)不仅要提高自己的表现,而且还要为生成器(Generator)不断选择复杂负面样本。由于样本满足NDCG概率分布,而不是均匀分布,所以NDCG概率被导入到生成器(Generator)。
生成器(Generator)检索模型
训练生成器(Generator)以拟合得分函数gφscore(d,q)并生成生成概率gφprob(d|q,r)
就与导师(Tutor)的关系而言,生成器(Generator)既是学生又是伴侣。作为学生,它接收成批的复杂样本并进行训练;作为伴侣,它会不断以渐变的形式向导师(Tutor)提供反馈。结果,导师(Tutor)和生成器(Generator)都可以更有效地协作探索梯度空间。同时,就与判别器(Discriminator)的关系而言,生成器(Generator)既是竞争者又是合作者:作为竞争者,它不断产生复杂文档对,供判别器(Discriminator)训练;作为合作者,它会得到竞争对手的回应并指导其训练。如上所述,生成器(Generator)与导师(Tutor)和判别器(Discriminator)有两种关系。它还间接连接了导师(Tutor)和判别器(Discriminator)。
判别器(Discriminator)检索模型
判别器(Discriminator)经过训练以匹配得分函数dθscore(d,q)。判别器(Discriminator)的职责是不断地从生成器(Generator)中鉴别出复杂样本,以改善其性能。同时,它也给出了生成器(Generator)在训练过程中的判别方向,以使训练过程更具指导性。
3、一种用于排序学习的双重协作生pairwise抗网络,其特征在于,CoGAN模型的三个主要模块导师(Tutor),生成器(Generator)和判别器(Discriminator)之间的关系和详细的工作流程如下:
导师(Tutor)和生成器(Generator):
导师(Tutor)和生成器(Generator)之间的关系,也称为教导-反馈循环,导师(Tutor)用复杂样本引导生成器(Generator),生成器(Generator)来充当学生,不断地向教师提供反馈。
为了获得更好的训练性能,在导师(Tutor)中采用LambdaRank模型,该模型可以支持对非平滑的评估指标(比如NDCG)进行直接的优化。因此,导师(Tutor)模型具有很强的自学能力,可以不断为生成器(Generator)生成复杂样本。
为了获得更好的反馈性能,生成器(Generator)模型采用基本的pointwise模型。
在训练过程中,交替训练导师(Tutor)和生成器(Generator)。
生成器(Generator)和判别器(Discriminator):
生成器(Generator)和判别器(Discriminator)之间的关系,也称为生成-判别循环,生成器(Generator)不断地为判别器(Discriminator)生成复杂样本,而判别器(Discriminator)给出生成器(Generator)的鉴别方向。
如上所述,生成器(Generator)采用pointwise模型,而判别器(Discriminator)采用类似于RankNet的pairwise模型。该方法包括了三种不同的传统排序学习模型,而它最终的表现比任何一种单独模型都要好。
同样的,在训练过程中,交替训练生成器(Generator)和判别器(Discriminator)。
实施例
我们在LETOR4.0中进行了基准测试。LETOR4.0包含来自两个查询集和Gov2网页集合的四个排名设置的8个数据集。包装采用5倍交叉验证策略,并包含5倍分区。在每个折叠中,都有三个学习子集:训练集,验证集和测试集。在本例中,我们使用MQ2007-semi和MQ2008-semi作为实验数据集。
指标
使用多种指标来评估信息检索的排名方法:精度指标(P@3,P@5,P@10,MAP,MRR),归一化折现累积增益(NDCG)这些指标在学习等级评估。精度度量(P@k)仅考虑前k个位置的预测准确性,而MRR则考虑第一个正项的位置。
为了概括它们,提出了MAP以全面观察所有正项目。NDCG度量标准不仅考虑相关性,还考虑由模型计算出的预测的位置。这意味着NDCG的泛化度量标准性能优于其他度量标准。
在实验中,为了评估这些算法,使用了标准排名绩效指标,如@N,NDCG@N,MAP和MRR。CoGANs模型在NDCG@3和MRR上有显著改善,这意味着模型具有更好的排名性能。这表明这些模型包括导师(Tutor)和判别器(Discriminator)在内都具有更好的正面术语排名表现。同时,MAP,NDCG@5,NDCG@10和P@3也有提升。
训练过程分析
在图4,提供了NDCG@10的训练曲线。从图4中可以准确地看出:随着步长的增加,生成器(Generator)的性能不会降低太多。导师(Tutor)不断地帮助生成器(Generator),而判别器(Discriminator)不断抑制生成器(Generator)。因此,导师(Tutor)的积极影响和判别器(Discriminator)的负面影响相互抵消。这也意味着,生成器(Generator)不会因过度拟合生成概率分布而变得训练不足。因此,差异减少了,CoGANs也有了更高水平的表现。除此之外,通过在以前的步骤中累积采样文档的方法,将持续训练应用到训练过程中。具体来说,在第n步,新样本的数量是整个样本训练集的1/n。通过每个步骤的少量增量,CoGAN就可以通过旧采样文档和新采样文档进行训练。
持续训练分析
正如在实施部分中所描述的那样,通过存储复杂样本并将判别器(Discriminator)训练到累计样本池中,连续训练使得训练过程更加平稳而健壮。
以丢失各种生成样本为代价,CoGAN的选择更多地集中在复杂的样品上。因此,CoGAN的判别器(Discriminator)可以获得样本数据并更好地探索梯度空间。换种解释来说,就是选择复杂样本意味着生成器(Generator)具有一定的能力来过滤噪声较小的数据。
上述实施例的描述解释并说明了本发明提供的用于排序学习的双重协作对抗网络及其应用。该方法通过混合了排序学习(LTR)的三个范式并将它们分配给三个角色:导师(Tutor),生成器(Generator)和判别器(Discriminator),减少生成器(Generator)和判别器(Discriminator)之间的差异,使它们每两者都可以进一步训练并获得更好的性能,解决了GAN网络的局限性,缓解了训练不足的问题。
以上内容是结合具体的优选技术方案对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
Claims (7)
1.一种基于双重协作生成式对抗网络的排序学习方法,其特征在于,包括如下步骤:
S1、构建排序学习所需数据集;
S2、创建导师网络Tutor和生成器网络Generator;
S3、创建判别器网络Discriminator;
S4、数据细节及参数设置;
S5、T-G网络模型迭代训练;
S6、G-D网络模型迭代训练;
S7、多指标有效性测试结果返回;
所述的S1、构建排序学***均值;数据集的格式满足如下要求:每行是一个查询文档对,第一列是该对的相关标签,第二列是查询IDqid,末尾列是关于该对的注释,中间列为特征列;
所述的S4、数据细节及参数设置:优化目标如下式:
其中d、qn、r分别指的是文档、第n个查询和打分,N指的是查询的个数,G(d|qn)指的是qn检索下,生成器Generator对于当前d的打分;D(d|qn)指的是qn检索下,判别器Discriminator对于当前d的打分;
对导师网络Tutor、生成器网络Generator、判别器网络Discriminator进行参数设置,导师网络Tutor、生成器网络Generator、判别器网络Discriminator简称为T、G和D,其各自中的参数群分别为λ,θ和φ,初始设置为随机初始化,并通过所述步骤S5与步骤S6对参数群进行更新,网络参数包括学习率learningrate,梯度算法的动量项momentumterm,批处理参数batchsize,设置T对StochasticGradientDescentSGD的学习率为1e-6,设置G和D对Adam的学习率为1e-5,动量项β1=0.9,β2=0.999,并且无权重衰减,批处理参数设置为32。
2.如权利要求1所述的基于双重协作生成式对抗网络的排序学习方法,其特征在于,
S2、创建导师网络Tutor和生成器网络Generator:初始化设置导师网络Tutor和生成器网络Generator,创建导师网络Tutor和生成器网络Generator,网络架构如下:根据输入的单个查询文档特征或者查询文档集分别预处理为特征向量或者特征矩阵,然后将其导入两层Linear网络,第一个线性层由非线性函数Tanh激活,第二层由非线性函数Sigmoid或Softmax激活,对于给定的单个查询文档,Sigmoid输出为得分,对于给定的查询文档集,Softmax输出为概率分布。
3.如权利要求1所述的基于双重协作生成式对抗网络的排序学习方法,其特征在于,
S3、创建判别器网络Discriminator:初始化设置判别器网络Discriminator,创建判别器网络Discriminator,网络架构如下:根据输入的单个查询文档特征预处理为特征向量,然后将其导入两层Linear网络,第一个线性层由非线性函数Tanh激活,第二层由非线性函数Sigmoid激活;对于给定的单个查询文档,Sigmoid输出为得分。
4.如权利要求1所述的基于双重协作生成式对抗网络的排序学习方法,其特征在于,
S5、T-G网络模型迭代训练:选择最小最大博弈进行优化以迭代训练导师网络Tutor和生成器网络Generator,每次训练过程都调取步骤S2中的网络,一共迭代训练200次,在实际训练中,由于导师网络Tutor给予生成器网络Generator的采样项不是连续的,使用如下公式对其优化:
其中d、qn分别指的是文档、第n个查询,r指的是打分,N指的是查询的个数,G(d|qn)指的是qn检索下,生成器Generator对于当前d的打分;是服从数据集基础相关性分布ptrue(d|qn,r)的计算值期望,导师网络Tutor为生成器网络Generator生成样本的概率为pλ(d|qn,r);是生成样本概率pλ(d|qn,r)的计算值期望;
K代表当前查询的文档个数,其中ListLoss来源于LambdaRank模型,该模型直接从当前查询与文档相关程度排名的NDCG列表中获取梯度,在导师网络Tutor中,采用LambdaRank模型,输入两层网络输出的文档打分排名,获取当前文档排名的ListLoss,而后更新参数群λ,之后以更新参数后的导师网络Tutor生成复杂样本文档输入生成器网络Generator,生成概率满足tλprob(d|q,r),以导师网络Tutor输出值分布生成样本,样本输入生成器网络Generator,输出作为Reward,由此通过ListLoss*Reward以及策略梯度的方式优化JT(qn)。
5.如权利要求1所述的基于双重协作生成式对抗网络的排序学习方法,其特征在于,
S6、G-D网络模型迭代训练:选择最小最大博弈进行优化以迭代训练生成器网络Generator和判别器网络Discriminator,每次训练过程调取步骤S3中的网络,迭代训练200次;
生成器网络Generator通过导师网络Tutor采样的真实正样本不断生成假的正样本,以此和判别器网络Discriminator博弈,通过下式完善生成器网络Generator性能:
其中d、qn、r分别指的是文档、第n个查询和打分,N指的是查询的个数;D(d|qn)指的是qn检索下,判别器Discriminator对于当前d的打分;是服从数据集基础相关性分布ptrue(d|qn,r)的计算值期望;是生成样本概率pλ(d|qn,r)的计算值期望;生成器网络Generator为判别器网络Discriminator生成样本的概率为pθ(d|qn,r);是生成样本概率pθ(d|qn,r)的计算值期望;其中PointLoss来源于Pointwise模型,该模型的损失函数用于评估单个doc的预测得分和真实得分之间差异,定义PointLoss函数如下:
损失函数中的fθ(dn)是模型的预测值,作为G-D循环的后一部分,判别器Discriminator用于判别生成器Generator生成的假的正样本并最小化假的正样本的对数似然预测标签,最大化生成的正样本的对数似然预测标签:
RankNet模型使用PairLoss函数训练其得分函数,PairLoss函数定义如下:
损失函数中的fΦ(posn)和fφ(negn)分别是模型对输入的正样本和负样本的预测值,其中,负样本是从pθ(d|qn,r)中采样的,它是生成器网络Generator从pλ(d|qn,r)中学到的,同时也是导师网络Tutor从原始数据中学到的。
6.如权利要求1所述的基于双重协作生成式对抗网络的排序学习方法,其特征在于,
导师Tutor检索模型:
导师Tutor检索模型具体采用导师网络Tutor来实现,导师网络Tutor是导师模型Tutor的具体体现方式,通过最小化LambdaLoss同时生成NDCG概率tλprob(d|q,r)来训练导师Tutor,使其匹配得分函数tλscore(d,q),导师Tutor为生成器Generator不断选择复杂负面样本,NDCG概率被导入到生成器Generator;
生成器Generator检索模型:
采用生成器网络Generator来实现生成器Generator检索模型,训练生成器Generator拟合得分函数gφscore(d,q)并生成概率gφprob(d|q,r);生成器Generator接收成批的复杂样本进行训练并不断以渐变的形式向导师Tutor提供反馈结果,同时,生成器Generator不断产生复杂文档对,供判别器Discriminator训练,得到竞争对手的回应并指导训练;
判别器Discriminator检索模型:
采用判别器网络Discriminator来实现判别器Discriminator检索模型,判别器Discriminator经过训练匹配得分函数dθscore(d,q),判别器Discriminator不断从生成器Generator中鉴别出复杂样本改善性能,并给出生成器Generator在训练过程中的判别方向。
7.如权利要求1所述的基于双重协作生成式对抗网络的排序学习方法,其特征在于,
导师Tutor、生成器Generator和判别器Discriminator间的关系如下:
导师Tutor和生成器Generator:
导师Tutor和生成器Generator之间的关系为教导-反馈循环,导师Tutor用复杂样本引导生成器Generator,生成器Generator来充当学生,不断地向导师Tutor提供反馈;
导师Tutor中采用LambdaRank模型,该模型支持对非平滑的评估指标进行直接的优化,使导师Tutor模型不断为生成器Generator生成复杂样本,生成器Generator模型采用基本的pointwise模型,
在训练过程中,交替训练导师Tutor和生成器Generator;
生成器Generator和判别器Discriminator:
生成器Generator和判别器Discriminator之间的关系生成-判别循环,生成器Generator不断地为判别器Discriminator生成复杂样本,而判别器Discriminator给出生成器Generator的鉴别方向;生成器Generator采用pointwise模型,判别器Discriminator采用RankNet的pairwise模型;在训练过程中,交替训练生成器Generator和判别器Discriminator。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010594875.4A CN111783980B (zh) | 2020-06-28 | 2020-06-28 | 基于双重协作生成式对抗网络的排序学习方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010594875.4A CN111783980B (zh) | 2020-06-28 | 2020-06-28 | 基于双重协作生成式对抗网络的排序学习方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111783980A CN111783980A (zh) | 2020-10-16 |
CN111783980B true CN111783980B (zh) | 2023-04-07 |
Family
ID=72760087
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010594875.4A Active CN111783980B (zh) | 2020-06-28 | 2020-06-28 | 基于双重协作生成式对抗网络的排序学习方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111783980B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118171700A (zh) * | 2024-04-26 | 2024-06-11 | 晶存阵列(上海)科技有限公司 | 多条件gan模型的训练方法、电子设备和可读存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108665058A (zh) * | 2018-04-11 | 2018-10-16 | 徐州工程学院 | 一种基于分段损失的生成对抗网络方法 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AUPR082400A0 (en) * | 2000-10-17 | 2000-11-09 | Telstra R & D Management Pty Ltd | An information retrieval system |
CN113506089A (zh) * | 2015-04-30 | 2021-10-15 | 微软技术许可有限责任公司 | 提取并显现来自数据源的用户工作属性 |
CN105740430B (zh) * | 2016-01-29 | 2018-08-14 | 大连理工大学 | 一种融合社会化信息的个性化推荐方法 |
CN106056209B (zh) * | 2016-05-23 | 2019-04-19 | 大连理工大学 | 一种基于循环神经网络的查询词项权重学习方法 |
CN106599577A (zh) * | 2016-12-13 | 2017-04-26 | 重庆邮电大学 | 一种结合rbm和特征选择的列表级排序学习方法 |
CA3022998A1 (en) * | 2017-11-02 | 2019-05-02 | Royal Bank Of Canada | Method and device for generative adversarial network training |
CN108304479B (zh) * | 2017-12-29 | 2022-05-03 | 浙江工业大学 | 一种基于图结构过滤的快速密度聚类双层网络推荐方法 |
US10552714B2 (en) * | 2018-03-16 | 2020-02-04 | Ebay Inc. | Generating a digital image using a generative adversarial network |
CN108829855B (zh) * | 2018-06-21 | 2021-02-19 | 山东大学 | 基于条件生成对抗网络的衣着穿搭推荐方法、***及介质 |
CN109344266B (zh) * | 2018-06-29 | 2021-08-06 | 北京大学深圳研究生院 | 一种基于双语义空间的对抗性跨媒体检索方法 |
CN110750997A (zh) * | 2018-07-05 | 2020-02-04 | 普天信息技术有限公司 | 一种基于生成对抗学习的机器翻译方法及装置 |
CN110738540B (zh) * | 2018-07-20 | 2022-01-11 | 哈尔滨工业大学(深圳) | 一种基于生成对抗网络的模特衣服推荐方法 |
CN109034908A (zh) * | 2018-08-07 | 2018-12-18 | 大连理工大学 | 一种结合排序学习的电影排名预测方法 |
CN109492075B (zh) * | 2018-09-10 | 2021-09-28 | 中山大学 | 一种基于循环生成对抗网络的迁移学习排序方法 |
CN109299342B (zh) * | 2018-11-30 | 2021-12-17 | 武汉大学 | 一种基于循环生成式对抗网络的跨模态检索方法 |
CN109657149A (zh) * | 2018-12-25 | 2019-04-19 | 合肥学院 | 一种基于生成对抗网络和双聚类的推荐方法及*** |
CN110210486B (zh) * | 2019-05-15 | 2021-01-01 | 西安电子科技大学 | 一种基于素描标注信息的生成对抗迁移学习方法 |
CN111291266B (zh) * | 2020-02-13 | 2023-03-21 | 深圳市雅阅科技有限公司 | 基于人工智能的推荐方法、装置、电子设备及存储介质 |
CN111291836B (zh) * | 2020-03-31 | 2023-09-08 | 中国科学院计算技术研究所 | 一种生成学生网络模型的方法 |
-
2020
- 2020-06-28 CN CN202010594875.4A patent/CN111783980B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108665058A (zh) * | 2018-04-11 | 2018-10-16 | 徐州工程学院 | 一种基于分段损失的生成对抗网络方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111783980A (zh) | 2020-10-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wilder et al. | Learning to complement humans | |
CN111460249B (zh) | 一种基于学习者偏好建模的个性化学习资源推荐方法 | |
Urbanowicz et al. | Introduction to learning classifier systems | |
Chen et al. | Efficient ant colony optimization for image feature selection | |
Dejaeger et al. | Data mining techniques for software effort estimation: a comparative study | |
US20230274151A1 (en) | Multi-modal neural network architecture search | |
Pham et al. | Unsupervised training of Bayesian networks for data clustering | |
Stein et al. | Learning classifier systems: from principles to modern systems | |
US11527308B2 (en) | Enhanced optimization with composite objectives and novelty-diversity selection | |
CN111783980B (zh) | 基于双重协作生成式对抗网络的排序学习方法 | |
Marais | Deep learning for tabular data: an exploratory study | |
CN115238169A (zh) | 一种慕课可解释推荐方法、终端设备及存储介质 | |
Huang et al. | Harnessing deep learning for population genetic inference | |
Yamamura et al. | Forecasting new product demand using domain knowledge and machine learning | |
Li et al. | Quantification and prediction of engagement: Applied to personalized course recommendation to reduce dropout in MOOCs | |
Khan et al. | Session-Based Course Recommendation Frameworks Using Deep Learning. | |
CN116701910B (zh) | 一种基于双特征选择对抗样本生成方法及*** | |
Li | AI-Assisted Emotion Recognition: Impacts on Mental Health Education and Learning Motivation | |
Olivella et al. | Machine learning in political science: Supervised learning models | |
Cui | Interaction detection with probabilistic deep learning for genetics | |
EP4345685A1 (en) | Method and apparatus for correcting errors in outputs of machine learning models | |
Fan et al. | Feature and instance joint selection: A reinforcement learning perspective | |
Bej | Improved imbalanced classification through convex space learning | |
Urbanowicz et al. | Introducing learning classifier systems: rules that capture complexity | |
Tan | Explainable AI for human and science |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |