【技术实现步骤摘要】
一种基于多标签学习的群体软件开发中服务匹配方法
[0001]本专利技术涉及群体软件工程的项目开发信息分析
,尤其是涉及一种基于多标签学习的群体软件开发中服务匹配方法。
技术介绍
[0002]信息匹配在很多领域都普遍存在,如人员识别、智能合约、社交媒体等。信息匹配能够帮助用户在海量的信息中快速、准确地找到所需的信息。在软件智能化开发领域,开发者能力和项目质量评价的研究和应用开始受到关注。随着软件演化节奏的加快与软件规模的扩大,开源社区的用户数量可能会激增。可以利用传统的检索技术确定满足开发者实践技能的项目。然而,面对大量描述相似的项目,用户可能会觉得很难判断哪些候选项目符合个人需求。为了确保更好的选择,有必要进一步比较候选项目的质量。因此,开发项目的评估和选择显然是开源社区领域中开发者和项目提供者所关心的基本问题。
[0003]为了获得准确和个性化的项目标签值,通常需要对项目进行评估。然而,由于时间、成本和其他因素的限制,开发者不能在海量的数据中对比每个项目。为了获得项目的个性化标签,帮助开发者匹配合适的项目,借鉴推荐系统,提出协同标签预测来应对这一问题。协同预测的主要思想是分析开发者和项目的历史数据,进一步利用协同智能来预测未知的标签值。通过区分候选项目的标签值,开发者可以决定是否选择合适的项目。这样就可以避免直接度量标签值,从而为项目提供者和开发者节省时间和经济成本。
[0004]随着深度学习的蓬勃发展,深度神经网络在计算机视觉、自然语言处理等许多应用领域取得了重大突破。深度神经网络可以通过多 ...
【技术保护点】
【技术特征摘要】
1.一种基于多标签学习的群体软件开发中服务匹配方法,包括以下步骤:S1、建立数据嵌入层;S2、建立交互感知层,包括交互组和感知组两部分;S3、构建多标签任务层。2.根据权利要求1所述的一种基于多标签学习的群体软件开发中服务匹配方法,其特征在于:所述S1的具体步骤如下:S11、输入开发者、项目数据,分别包含开发者实践技能和项目基本属性,所有开发者的语言和角色、项目的主题和受众均视为特征,每个特征通过全局标识符x
i
指示向量中的位置;S12、将每个特征映射到一个密集向量上进行分布式表示,令e
i
∈R
d
为一个d维向量,嵌入工作完成后,得到一组大小为d
×
n对应于x的嵌入向量E
x
,公式如下:E
x
={x1e1,...x
i
e
i
}(1≤i≤n)。3.根据权利要求2所述的一种基于多标签学习的群体软件开发中服务匹配方法,其特征在于:所述S2的具体步骤如下:S21、交互组由求和与乘积两部分组成,在求和部分,将所有嵌入向量相加,得到:为一阶特征;在乘积部分,将嵌入向量上的元素相乘,把嵌入集E
x
送入交互组,并把一组嵌入向量转换成一个向量,如下:其中,特征分为开发者和项目两个子集:C
dev
和C
pro
,“·”表示两个向量的元素相乘,如下:(e
i
·
e
j
)
k
=e
ik
e
jk
(1≤k≤d)此时得到一个d维向量,编码R
d
中特征之间的二阶交互;S22、将一阶特征和二阶交叉特征结合,两部分进一步合并为E
′
x
,并完全连接到感知组中,如下:S23、感知组r
L
是一个全连接层的堆栈,其公式如下:r1=ω1(W1E
′
x
+b1)r2=ω2(W2r1+b2)
…
r
L
=ω
L
(W
L
r
L
‑1+b
L
)其中,L为隐含层数,W
L
...
【专利技术属性】
技术研发人员:何鹏,和诗雨,熊定坤,马菊,陈劲超,
申请(专利权)人:湖北大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。