首页> 中国专利> 基于深度学习和多Agent优化的软件评审者混合推荐方法

基于深度学习和多Agent优化的软件评审者混合推荐方法

摘要

本发明公开了基于深度学习和多Agent优化的软件评审者混合推荐方法,包括以下步骤:步骤(1)主要负责系统中的资源调度与分配;步骤(2)低阶特征处理,步骤(3)评审者召回;步骤(4)评审者排序并推荐;本发明采用LFM学习项目PR的隐因子矩阵和评审者的隐因子矩阵,通过计算两个隐因子矩阵的内积填补行为特征矩阵的空缺值,降低其稀疏度,然后再使用基于项目PR的协同过滤推荐算法进行推荐。排序部分使用深度神经网络(DNN)学习评审者的通用特征向量,DNN将会学习到高阶特征组合,使得推荐更加精准。通过设计多Agent系统实现各个部分之间的协同学习,提高海量数据环境下的推荐效率。

著录项

  • 公开/公告号CN112883288A

    专利类型发明专利

  • 公开/公告日2021-06-01

    原文格式PDF

  • 申请/专利权人 东南大学;

    申请/专利号CN202110264009.3

  • 发明设计人 王红兵;何茂林;

    申请日2021-03-09

  • 分类号G06F16/9536(20190101);G06F16/9535(20190101);G06N3/04(20060101);G06N3/08(20060101);

  • 代理机构32206 南京众联专利代理有限公司;

  • 代理人薛雨妍

  • 地址 210096 江苏省南京市玄武区四牌楼2号

  • 入库时间 2023-06-19 11:11:32

说明书

技术领域

本发明涉及属于群智化软件开发技术领域,尤其涉及基于深度学习和多Agent优化的软件评审者混合推荐方法。

背景技术

传统的推荐技术主要包括协同过滤推荐技术和基于内容的推荐技术,这两种技术在一些场景下得到了较好的应用。协同过滤技术主要是根据同类对象的行为相似度为被推荐主体推荐相似的对象,核心思想类似于“物以类聚人以群分”。协同过滤推荐按照对象相似度计算又可以分为基于用户的协同过滤推荐和基于物品的协同过滤推荐。基于用户的协同过滤推荐计算目标用户与其它用户的相似度,然后推荐与目标用户最相似的用户所感兴趣的物品;基于物品相似度的协同过滤推荐计算目标用户所感兴趣的物品与其它物品的相似度,然后按照相似度排名推荐该物品。协同过滤推荐考虑用户与物品之间的交互行为,推荐结果较为精准。基于内容的推荐主要是计算物品之间的相似度然后进行推荐,算法比较简单,实现较为容易,但是没有从用户的角度进行考虑,因此推荐精度相比协同过滤推荐较低。

协同过滤推荐以及基于内容的推荐都是在样本特征空间维度较低的场景下进行应用,但是现实场景中,通常用户与物品的特征维度非常多,尤其是连续型特征,在使用one-hot编码之后,往往特征空间数据稀疏度极高,而且出现维度爆炸的问题,这给无法进行有效计算,也就无法实现推荐目标。因此如何解决特征数据稀疏问题和特征空间维度爆炸问题,是实现高效精准推荐的前提条件。

基于内容的推荐技术虽然简单,也在一些特定的场景下得到了成功应用,但是基于内容的推荐未能考虑到用户与物品的交互信息,而只是从物品的单一角度进行数据分析,因此推荐精度不高;其次,基于内容的推荐需要计算物品两两之间的相似度,当数据量非常大的时候,计算需要花费较长的时间,效率很低,因此在大数据场景下基于内容的推荐无法得到应用。

目前在评审者推荐领域,很多方法从开发人员历史行为数据标签出发,计算与PR的关联关系,建立模型进行推荐,或者建立开发人员画像进行推荐。这些推荐方法没有考虑海量数据与标签特征维度过高所带来的问题,也没有建立深层次模型来挖掘开发者和PR的高阶特征信息,因此这些推荐方法还有很大的优化空间。

因此,为了保证群智化软件开发平台的软件项目开发进程和质量得到保证,需要设计开发一种能够高效处理特征数据、充分挖掘特征信息的推荐框架,这不仅具有重要的理论价值,也具有重要的实际应用价值。

发明内容

为解决上述问题,本发明公开了基于深度学习和多Agent优化的软件评审者混合推荐方法,其特征在于:通过多Agent技术实现推荐框架各个部分之间进行协同工作,并包括以下步骤:

步骤(1)系统SA(System Agent):主要负责系统中的资源调度与分配,包括收集项目PR和开发者的特征数据,对特征进行编码以及提供数据调用服务;

步骤(2)EA(Embedding Agent):低阶特征处理,主要负责从SA获取特征向量,并完成离散型特征的向量嵌入与向量拼接,并对其它模块提供数据调用服务;

步骤(3)RA(Recall Agent):评审者召回,主要负责从EA获取相应的行为矩阵数据,并完成LFM的隐因子分解与行为矩阵的空缺值填补,最后完成PBCF的初步推荐工作,其次RA还提供评审者候选集数据调用服务;

步骤(4)SRA(Sort and Recommend Agent):评审者排序并推荐;主要负责从EA和RA获取相应的评审者通用特征数据与评审者候选数据集;获取数据之后完成DNN高阶特征预测,选择性地完成FM二阶线性预测,并将命中的候选评审者排序向项目PR进行推荐;推荐的结果将会作为初步的评审者候选集,送入排序部分进行排序并推荐。排序部分使用深度神经网络(DNN)学习评审者的通用特征向量,DNN将会学习到高阶特征组合,使得推荐更加精准。另外可选择性地让通用特征向量通过因子分解机(FM),FM的结果将和DNN一起通过激活函数得到最终的结果。FM可以学习到一阶特征和二阶交叉特征的线性组合,将FM作为DNN的补充可以获得更为精准的推荐结果。

本发明进一步改进在于:其中所述步骤(2)中的低阶特征处理部分将特征分为离散型特征和连续型特征;所述连续型特征也称为实值特征,该类特征可以被直接使用;离散型特征一般为种类特征,该类特征不具有实值,一般使用one-hot进行编码;因此低阶特征处理会将one-hot编码的高维特征向量嵌入到合适的低维特征向量空间中,实现特征降维,然后与连续型实值特征进行拼接得到新的低维的特征向量送入后续的模块中进行学习训练。

本发明进一步改进在于:评审者召回部分采用隐因子分解模型LFM(LatentFactorization Model)和基于项目PR的协同过滤推荐(PBCF);评审者参与的项目PR的行为矩阵S

LFM采用随机梯度下降更新参数;经过训练之后,行为矩阵S≈W

本发明设计了一种结合传统的协同过滤推荐算、基于内容的推荐算法和深度学习网络方法的实用型评审者推荐框架。该框架主要分为三个部分:低阶特征处理、评审者召回和评审者排序并推荐。在低阶特征处理部分,特征被分为连续型特征和离散型特征,连续型特征也称为实值特征,该类特征可以被直接使用;离散型特征经过one-hot编码后嵌入到合适的低维特征向量空间中,实现特征降维,然后与连续型实值特征进行拼接得到新的低维的特征向量送入后续的模块中进行学习训练。评审者召回部分核心为隐因子分解模型(Latent Factorization Model,即LFM)和基于项目PR的协同过滤推荐算法。LFM学习项目PR的隐因子矩阵和评审者的隐因子矩阵,通过计算两个隐因子矩阵的内积填补行为特征矩阵的空缺值,降低其稀疏度,然后再使用基于项目PR的协同过滤推荐算法进行推荐。推荐的结果将会作为初步的评审者候选集,送入排序部分进行排序并推荐。排序部分使用深度神经网络(DNN)学习评审者的通用特征向量,DNN将会学习到高阶特征组合,使得推荐更加精准。另外可选择性地让通用特征向量通过因子分解机(FM),FM的结果将和DNN一起通过激活函数得到最终的结果。FM可以学习到一阶特征和二阶交叉特征的线性组合,将FM作为DNN的补充可以获得更为精准的推荐结果。最后本发明设计多Agent系统实现各个部分之间的协同学习,提高海量数据环境下的推荐效率。

本发明的有益效果:本发明通过结合协同过滤推荐和基于内容的推荐,充分考虑到评审者与项目PR的行为数据和评审者自身的特征数据,通过两者之间进行级联混合,可以提高推荐的精度;另外使用深度学习可以有效处理特征空间维度爆炸的问题,还能够充分挖掘特征的深层次信息,提高推荐精度;多Agent系统的加入使得推荐框架各模块之间可以进行协同学习,协同工作,提升了推荐的效率。

附图说明

图1、是低阶特征处理示意图;

图2、是隐因子分解模型LFM和基于项目PR的协同过滤推荐示意图;

图3、是深度神经网络(DNN)与因子分解机(FM)结构示意图;

图4、是多Agent推荐系统示意图;

图5、是整个推荐系统框架示意图。

具体实施方式

下面结合附图和具体实施方式,进一步阐明本发明,应理解下述具体实施方式仅用于说明本发明而不用于限制本发明的范围。需要说明的是,下面描述中使用的词语“前”、“后”、“左”、“右”、“上”和“下”指的是附图中的方向,词语“内”和“外”分别指的是朝向或远离特定部件几何中心的方向。

本发明所设计的项目PR评审者推荐框架主要分为三个部分,分别是低阶特征处理、评审者召回和评审者排序三个部分,每一部分将结合图例详细讲解。

(1)低阶特征处理

实施方式:

如图1所示,低阶特征处理部分将特征分为离散型特征和连续型特征,离散型特征经过向量嵌入映射到低维特征向量,并与连续型特征拼接得到新的特征向量,方便后续的推荐计算。通常推荐系统中获取到的样本特征都是低阶的特征,这些特征包括连续型特征和离散型特征,连续型特征对应实值数据,不用再次编码,因此维度有限,可以直接进行计算,而离散型特征对应种类特征,没有实值数据,需要经过编码才能使用,通常使用one-hot方式进行编码,因此如果某一种类特征的可取值类型非常多的话,one-hot编码将会很长,众多离散型特征拼接到一起将会使得特征向量变得很长,造成维度爆炸问题,因此很挫场景下,one-hot编码的离散型特征无法直接使用,需要进行向量嵌入,映射到低维向量空间。设某一one-hot编码的向量为v

对于多取值的one-hot编码的嵌入,可以计算其平均值实现。

离散型特征经过向量嵌入后和连续型特征拼接得到新的特征向量,该向量可以送入到后续的推荐模块进行处理。

(2)隐因子模型(LFM)和基于项目PR的协同过滤推荐(PBCF)

实施方式:

如图2所示,评审者参与的项目PR的行为矩阵S

LFM通过学习行为矩阵中的已经存在的数据不断更新PR的隐因子矩阵和评审者的隐因子矩阵。LFM的损失函数如下所示:

LFM采用随机梯度下降更新参数。经过训练之后,行为矩阵S≈W

经过LFM学习的行为矩阵可以用来作为协同过滤的数据源。协同过滤算法采用基于用户的协同过滤,在评审者推荐场景下,用户为项目PR,而评审者则是推荐的内容。因此本发明将其称为基于项目PR的协同过滤推荐,即PBCF。PBCF首先计算项目PR的相似度,相似度采用余弦相似度进行计算,经过计算后,对所有相似度进行排序,余弦相似度最高的若干PR被挑选出来,参与这些PR评审的评审者且未参与目标PR评审的评审者将会被推荐,这些评审者将会被作为评审者候选集送入第三部分进行排序推荐。需要注意的是,PBCF不以行为矩阵中的数值作为排序标准,评审者候选集中的评审者不存在优先级,排序工作将在第三部分进行。

(3)深度神经网络(DNN)与因子分解机(FM)

如图3所示,评审者自身的通用特征向量将会被送入到DNN并选择性送入到FM进行学习。若FM不参与预测,那么DNN结果将作为最终结果,若FM参与预测,那么DNN结果与FM结果将联合计算得到最终结果。

首先说明FM模型。FM模型叫做因子分解机,通过特征交叉的线性组合得到高阶特征组合模型。理论上FM可以进行任意阶的特征交叉,但是实际计算过程中,二阶以上的高阶特征组合十分复杂,因此一般使用FM进行二阶特征交叉。设经过FM训练得到的因子矩阵为V

损失函数采用均方误差实现。参数更新采用随机梯度下降的方式进行。FM可以学习到二阶交叉的特征信息,并且由于其为线性组合,参数量较少,因此计算较为简单,因此可以考虑将FM作为DNN的补充。FM的缺点也很明显,高阶特征交叉计算复杂度很高,无法运用到实际场景中,二阶交叉的特征无法充分挖掘特征信息。

除了作为DNN的补充,在本推荐框架中,FM所学习的因子矩阵用来作为高维离散型特征嵌入到低维向量空间的向量嵌入表。

DNN为传统的多层神经网络模型,DNN可以充分挖掘高阶特征组合信息,并且不需要太大的参数即可实现,因此DNN在特征数据挖掘方面具有很强的能力。DNN的输出为one-hot表示类型,取值最高的那个神经元所对应的one-hot值为1,表示该类被选中。在评审者推荐场景中,DNN的输出神经元个数为2,表示该评审者是否被选中参与评审。

DNN结果如果预测到该评审者被命中,那么输出结果将作为评审者的最终得分,按照此得分进行排序推荐。

(4)多Agent系统优化推荐效率

协同过滤推荐以及上述的集中机器学习算法都存在在不可扩展的问题,即当数据规模非常大的时候,这些算法的计算量将会变得非常大,在实践中很大概率是无法接受该算法的复杂度的,因为在这种低效推荐环境下,服务无法继续运行下去。为了解决大规模数据环境下推荐算法无法扩展的问题,本文计划采用Agent技术对推荐算法的效率进行优化。

如图4所示,多Agent技术实现推荐框架各个部分之间进行协同工作,提高效率。在该推荐框架中,主要设计了四个Agent:系统Agent(System Agent,即SA)、向量嵌入Agent(Embedding Agent,即EA)、召回Agent(Recall Agent,即RA)、排序推荐Agent(Sort andRecommend Agent,即SRA)。

·SA

SA主要负责系统中的资源调度与分配,包括收集项目PR和开发者的特征数据,对特征进行编码以及提供数据调用服务。

·EA

EA主要负责从SA获取特征向量,并完成离散型特征的向量嵌入与向量拼接,并对其它模块提供数据调用服务。

·RA

RA主要负责从EA获取相应的行为矩阵数据,并完成LFM的隐因子分解与行为矩阵的空缺值填补,最后完成PBCF的初步推荐工作,其次RA还提供评审者候选集数据调用服务。

·SRA

SRA主要负责从EA和RA获取相应的评审者通用特征数据与评审者候选数据集。获取数据之后完成DNN高阶特征预测,选择性地完成FM二阶线性预测,并将命中的候选评审者排序向项目PR进行推荐。

本发明方案所公开的技术手段不仅限于上述实施方式所公开的技术手段,还包括由以上技术特征任意组合所组成的技术方案。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号