基于图神经网络的用户-任务关联的众包任务推荐方法

文档序号:26596665发布日期:2021-09-10 22:42阅读:119来源:国知局
基于图神经网络的用户-任务关联的众包任务推荐方法
基于图神经网络的用户

任务关联的众包任务推荐方法
技术领域
1.本发明涉及众包任务推荐领域,主要应用于推荐系统中,具体涉及图神经网络的设计及关联图的构建。


背景技术:

2.随着互联网的大力发展,相比于通过少量专家获取的专业知识,个人或组织可以利用大量的网络用户来获取需要的服务和想法。“众包”(crowdsourcing)是在2006年混合群众(crowd)和外包(outsourcing)词义而产生的混成词。这是一种通过将工作先分配给很多参与者再合成为最终结果的模式,因此,需要保证众包任务完成的质量,需要将合适的任务推荐给合适的用户,而如何对不同用户推荐适合他们的任务,面临着巨大的挑战。
3.图神经网络是图表示学习的一个分支,其目标在于通过将图中的节点以低维稠密的向量进行表示,同时保留图中节点之间形成的结构信息,进而更好的适应下游任务。而传统的图神经网络大多都不考虑节点的类型,即大部分图神经网络是基于节点类别相同的假设,而在推荐系统中,同时存在用户和任务两类节点,因此如何更好的适应推荐系统中节点类型的需求,并得到更好的用户和任务表示,面临着巨大挑战。
4.传统推荐系统中针对用户推荐的方法是:先观察用户历史的任务承接信息,以及用户的关联用户历史的承接信息,进而将用户历史承接任务相似的任务和用户关联用户历史上承接的任务进行推荐。然而对于任务相似性的衡量标准较为粗糙,以及用户关联用户涉及的范围较小,无法观察到更多适合的任务。通过图神经网络对用户和任务进行表示,则可以通过较为统一的相似性计算来衡量用户与任务之间的关联性,从而更好更广泛的筛选适合用户的众包任务。


技术实现要素:

5.发明目的:解决的技术问题是,传统众包任务推荐系统中对于任务相似性的衡量较为粗糙以及用户能接触到的可推荐任务较少的问题,本发明提供一种基于图神经网络的用户

任务关联的众包任务推荐方法,本发明建立了较为统一的用户和任务表示,从而更好的衡量用户与任务之间的关联性,得到更好更广泛的推荐序列。
6.技术方案:为实现上述目的,本发明采用的技术方案为:
7.一种基于图神经网络的用户

任务关联的众包任务推荐方法,获取足够多的众包任务中的用户产生的用户之间的交互信息和用户承接众包任务的信息,以及任务之间的关联信息,包括任务种类,子任务,父任务等,并分别构建用户关联图、任务关联图、用户

任务关联图三个图结构;在上述得到的用户关联图和任务关联图,分别利用图神经网络进行训练,从而得到用户和产品的初步向量表示,并在相关表示中保留了用户之间和产品之间的关系信息;利用用户

任务关联图,将数据预处理阶段得到的用户表示和产品表示作为特征输入到新的图神经网络,在此基础上优化用户表示和产品表示,从而保留用户在历史上承接的众包任务信息;通过学到的用户和产品表示,即可对用户与任务之间的相似性进行计
算,进而得到针对用户的任务推荐列表。具体包括以下步骤:
8.步骤1,数据采集:通过众包任务平台采集真实的用户产生的用户与用户之间的交互信息、用户历史承接的众包任务信息、用户本身对于任务的偏好标签信息。同时采集平台中发出的众包任务信息,众包任务信息包括任务本身的类别标签、任务之间的拆分与合并信息、任务本身的其他属性。
9.步骤2,数据预处理:通过用户与用户之间的交互信息构建用户关联图,通过任务之间的拆分与合并信息及任务本身的类别标签构建任务关联图,通过用户历史承接的众包任务信息构建用户关联图、任务关联图、用户

任务关联图。
10.步骤3,数据表示:根据得到的用户关联图通过图神经网络训练得到用户的用户向量初始表示。根据得到的任务关联图通过图神经网络训练得到任务的任务向量初始表示。
11.步骤4,数据优化:根据数据预处理中的用户

任务关联图,以步骤3得到的用户向量初始表示和任务向量初始表示作为初始输入,通过图神经网络进行训练,得到用户和任务的最终表示。
12.步骤5,任务推荐:根据步骤4计算所得的用户和任务的最终表示,计算用户和不同任务之间的向量相似性并排序,获得最终针对用户的任务推荐序列。
13.优选的:步骤2中建用户

任务关联图的方法:
14.步骤2a),构建用户关联图g
user

15.g
user
={v
user
,e
user
,x
user
}
16.其中,v
user
表示的是用户集合,v
user
={u1,u2,...,u
i
,...,u
m
},u
i
表示第i个用户,m用户个数,e
user
表示用户边集合,x
user
表示的是用户的特征属性。
17.步骤2b),构建任务关联图g
task

18.g
task
={v
task
,e
task
,x
task
}
19.其中,v
task
表示的是任务集合,v
task
={t1,t2,...,t
j
,...,t
n
},t
j
表示第j个任务,n表示任务数,e
task
表示任务边集合,x
task
表示的是任务的特征属性。
20.步骤2c),构建得到的用户

任务关联图g
user

task

21.g
user

task
={v
user

task
,e
user

task
,x
user

task
}
22.其中,v
user

task
表示用户和任务统一的集合,v
user

task
={v
user
∪v
task
},e
user

task
表示用户和任务边集合,x
user

task
={x
user
∪x
task
}表示用户和任务的特征属性。
23.优选的:步骤3中根据得到的用户关联图通过图神经网络训练得到用户的用户向量初始表示。根据得到的任务关联图通过图神经网络训练得到任务的任务向量初始表示方法:
24.步骤3a),利用用户关联图,以用户之间的交互信息构建成边,用户自身的偏好标签作为监督信息,用户自身的特征属性作为特征输入,利用图卷积网络进行迭代训练,得到对应的用户向量初始表示,用户向量初始表示能保留用户之间的交互信息。
25.步骤3b),利用任务关联图,任务之间的关联构建成边,任务自身的类别标签作为监督信息,任务自身的特征属性作为输入,利用图卷积网络进行迭代训练,得到对应的任务向量初始表示,任务向量初始表示能保留任务之间的关联信息。
26.优选的:所述步骤4中通过图神经网络进行训练,得到用户和任务的最终表示的方法:
27.步骤4a),将用户

任务关联图中的用户表示、任务表示作为输入,通过图神经网络进行训练,从而得到一个新的用户表示和新的任务表示。
28.步骤4b),将新的用户表示和新的任务表示返回到步骤3的图神经网络模型中进行判断,从而优化模型参数,进而优化用户表示和任务表示。
29.步骤4c),对步骤4a)、步骤4b)进行迭代,最终达到收敛,进而获取到较好的用户表示和任务表示作为用户和任务的最终表示。
30.优选的:所述步骤5中根据步骤4获取得到的用户和任务的最终表示,通过计算用户与不同任务表示之间的相似性,采用向量相似性作为基准方法,从而可以对用户与不同任务之间的关联性进行打分,从而筛选出合适的众包任务序列。
31.优选的:任务本身的其他属性包括发包方、任务类型。
32.本发明相比现有技术,具有以下有益效果:
33.1.本发明基于图神经网络对用户和任务分别进行表示,同时保留用户之间,任务之间,用户历史任务等信息,从而得到更加针对用户的任务推荐信息,并且针对新加入的用户,如果得到其与历史用户的连接,可以更好的解决一部分推荐冷启动问题。
34.2.本发明通过图神经网络对用户和任务进行表示,则可以通过较为统一的相似性计算来衡量用户与任务之间的关联性,从而更好更广泛的筛选适合用户的众包任务。
附图说明
35.图1为本发明的方法整体流程图;
36.图2为本发明图神经网络进行数据表示和数据优化的流程图。
具体实施方式
37.下面结合附图和具体实施例,进一步阐明本发明,应理解这些实例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本技术所附权利要求所限定的范围。
38.一种基于图神经网络的用户

任务关联的众包任务推荐方法,如图1所示,包括以下步骤:
39.步骤1,数据采集:通过众包任务平台采集并获取足够多的真实的用户产生的用户与用户之间的交互信息、用户历史承接的众包任务信息、用户本身对于任务的偏好标签信息。同时采集平台中发出的众包任务信息,众包任务信息包括任务本身的类别标签、任务之间的拆分与合并信息、任务本身的其他属性。任务本身的其他属性包括发包方、任务类型等。
40.步骤2,数据预处理:通过用户与用户之间的交互信息构建用户关联图,通过任务之间的拆分与合并信息及任务本身的类别标签构建任务关联图,通过用户历史承接的众包任务信息构建用户关联图、任务关联图、用户

任务关联图。
41.首先需要针对构建相关结构图所需的数据进行收集,包括用户与用户之间的交互信息,用户历史承接的任务信息;以及任务之间形成关联的信息,包括任务类别,任务的拆分与合并,任务本身的所有者及所有平台等。并在收集到相关数据的基础上,完成相关结构图的构建。
42.步骤2a),构建用户关联图g
user

43.g
user
={v
user
,e
user
,x
user
}
44.其中,v
user
表示的是用户集合,每一个用户成为用户关联图中的一个节点,v
user
={u1,u2,...,u
i
,...,u
m
},u
i
表示第i个用户,m用户个数,e
user
表示用户边集合,如果用户之间存在交互,如存在朋友之间的来往,则在用户之间形成边,x
user
表示的是用户的特征属性。
45.步骤2b),构建任务关联图g
task

46.g
task
={v
task
,e
task
,x
task
}
47.其中,v
task
表示的是任务集合,每一个任务成为任务关联图中的一个节点,v
task
={t1,t2,...,t
j
,...,t
n
},t
j
表示第j个任务,n表示任务数,e
task
表示任务边集合,如果任务之间存在交互,如来自同一个父任务或者来自同一个发包方,则在任务之间形成边,x
task
表示的是任务的特征属性。
48.步骤2c),构建得到的用户

任务关联图g
user

task

49.g
user

task
={v
user

task
,e
user

task
,x
user

task
}
50.其中,v
user

task
表示用户和任务统一的集合,v
user

task
={v
user
∪v
task
},e
user

task
表示用户和任务边集合,如果用户历史上曾经承接相关任务,则在用户和任务之间形成边,x
user

task
={x
user
∪x
task
}表示用户和任务的特征属性。
51.步骤3,数据表示:如图2所示,根据得到的用户关联图通过图神经网络(这里以gcn为方法)训练得到用户的用户向量初始表示。根据得到的任务关联图通过图神经网络训练得到任务的任务向量初始表示。
52.将通过图神经网络对相关的图结构及信息进行训练,最终获得用户和任务的相关表示。其中用户之间的交互信息构建成边,用户自身的偏好标签作为监督信息,用户自身的特征属性作为特征输入,进而进行训练;在任务部分,任务之间的关联构建成边,任务自身的类别标签作为监督信息,任务自身的特征属性作为输入,进行训练,具体来说如下:
53.步骤3a),利用用户关联图g
user
,以用户之间的交互信息构建成边,用户自身的偏好标签作为监督信息,用户自身的特征属性x
user
作为特征输入,利用图卷积网络(graph convolutional networks)进行迭代训练,得到对应的用户向量初始表示该表示能保留用户之间的交互信息,表示实数。
54.步骤3b),利用任务关联图g
task
,任务之间的关联构建成边,任务自身的类别标签作为监督信息,任务自身的特征属性x
task
作为输入,利用图卷积网络进行迭代训练,得到对应的任务向量初始表示该表示能保留任务之间的关联信息。
55.步骤4,数据优化:根据数据预处理中的用户

任务关联图,以步骤3得到的用户向量初始表示和任务向量初始表示作为初始输入,通过图神经网络进行训练,得到用户和任务的最终表示。
56.通过构建的用户

任务关联图及图神经网络对步骤3所得到的用户表示及任务表示作为输入,利用图卷积网络进行迭代训练,从而保留用户历史承接的任务信息,进而优化用户和任务的相关表示信息,具体如下:
57.步骤4a),将用户

任务关联图g
user

task
中的用户表示r
user
、任务表示r
task
作为输入,通过图神经网络进行训练,从而得到一个新的用户表示r’user
和新的任务表示r’task

58.步骤4b),将新的用户表示r’user
和新的任务表示r’task
返回到步骤3的图神经网络
模型中进行判断,从而优化模型参数,进而优化用户表示和任务表示。
59.步骤4c),对步骤4a)、步骤4b)进行迭代,最终达到收敛,进而获取到较好的用户表示和任务表示作为用户和任务的最终表示。
60.步骤5,任务推荐:根据步骤4计算所得的用户和任务的最终表示,计算用户和不同任务之间的向量相似性并排序,获得最终针对用户的任务推荐序列。
61.根据步骤4获取得到的用户和任务的最终表示,通过计算用户与不同任务表示之间的相似性,采用向量相似性作为基准方法,从而可以对用户与不同任务之间的关联性进行打分,从而筛选出合适的众包任务序列。
62.实际部署中,由于可能存在新加入的用户和任务,则可以通过简单的判断用户或任务与图中已有的节点相连的关系,对用户和任务进行简单的初始化,同时定期更新用户和任务的表示,从而保证模型具有较好的效果。
63.综上所述,本发明提出一种基于图神经网络的用户

任务关联的众包任务推荐方法,通过图神经网络对用户和任务进行表示,则可以通过较为统一的相似性计算来衡量用户与任务之间的关联性,从而更好更广泛的筛选适合用户的众包任务。
64.以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1